keras中文版官方文档
發(fā)現(xiàn)一個比較好的介紹Keras的中文版的文檔,原文鏈接:
https://keras-cn.readthedocs.io/en/latest/getting_started/sequential_model/
以下內容是目前個人所看,詳細內容看原文鏈接。
keras是一個高層神經網絡API,由純Python編寫而成并基tensorflow、Theano以及CNTK后端。
快速開始序慣(Sequential)模型:
序貫模型是多個網絡層的線性堆疊,也就是“一條路走到黑”。
?
指定輸入數(shù)據(jù)的shape:
- 傳遞一個input_shape的關鍵字參數(shù)給第一層,input_shape是一個tuple類型的數(shù)據(jù),其中也可以填入None,如果填入None則表示此位置可能是任何正整數(shù)。數(shù)據(jù)的batch大小不應包含在其中。
- 有些2D層,如Dense,支持通過指定其輸入維度input_dim來隱含的指定輸入數(shù)據(jù)shape,是一個Int類型的數(shù)據(jù)。一些3D的時域層支持通過參數(shù)input_dim和input_length來指定輸入shape。
- 如果你需要為輸入指定一個固定大小的batch_size(常用于stateful RNN網絡),可以傳遞batch_size參數(shù)到一個層中,例如你想指定輸入張量的batch大小是32,數(shù)據(jù)shape是(6,8),則你需要傳遞batch_size=32和input_shape=(6,8)。
編譯:
compile接受三個參數(shù):優(yōu)化器,損失函數(shù),指標列表metrics
- 優(yōu)化器optimizer:該參數(shù)可指定為已預定義的優(yōu)化器名,如rmsprop、adagrad,或一個Optimizer類的對象,詳情見optimizers
- 損失函數(shù)loss:該參數(shù)為模型試圖最小化的目標函數(shù),它可為預定義的損失函數(shù)名,如categorical_crossentropy、mse,也可以為一個損失函數(shù)。詳情見losses
- 指標列表metrics:對分類問題,我們一般將該列表設置為metrics=['accuracy']。指標可以是一個預定義指標的名字,也可以是一個用戶定制的函數(shù).指標函數(shù)應該返回單個張量,或一個完成metric_name - > metric_value映射的字典.請參考性能評估
訓練:訓練模型一般使用fit函數(shù)。
常用層:常用層對應于core模塊,core內部定義了一系列常用的網絡層,包括全連接層、激活層等。
Dense層(全連接層):
所實現(xiàn)的運算是output = activation(dot(input, kernel)+bias)。其中activation是逐元素計算的激活函數(shù),kernel是本層的權值矩陣,bias為偏置向量,只有當use_bias=True才會添加。
如果本層的輸入數(shù)據(jù)的維度大于2,則會先被壓為與kernel相匹配的大小。
Dropout層:
Dropout將在訓練過程中每次更新參數(shù)時按一定概率(rate)隨機斷開輸入神經元,Dropout層用于防止過擬合。
Flatten層:
用來將輸入“壓平”,即把多維的輸入一維化,常用在從卷積層到全連接層的過渡。Flatten不影響和batch的大小。
reshape層
Permute層:當需要將RNN和CNN網絡連接的時候,可能會用到該層。
RepeatVector層
repeatvector層將輸入重復n次
總結
以上是生活随笔為你收集整理的keras中文版官方文档的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 结构体的一些形式理解
- 下一篇: 【Keras中文文档】Layer Con