tensorflow2學習筆記 9keras常用api

六步法

1.import
2.train test(數(shù)據(jù)集劃分)
3.model=tf.keras.models.Sequential(搭建網(wǎng)絡結構)
4.model.complie(設置訓練方法)
5.model.fit(訓練過程)
6.model.summary(打印網(wǎng)絡結構和參數(shù))

Sequential

  • 全連接層
    tf.keras.layers.Dense(神經(jīng)元個數(shù),activation=激活函數(shù),kernel_regularizer=正則化方法)

激活函數(shù)可選:
relu/softmax/sigmoid/tanh

正則化方式可選:
tf.keras.regularizers.l1()
tf.keras.regularizers.l2()

  • 拉直層
    tf.keras.layers.Flatten()
    不進行計算只對形狀進行轉換,將輸入特征轉化為1維數(shù)組
  • 其他層用到再補充

compile

model.compile(optimizer = 優(yōu)化器,loss = 損失函數(shù),metrics=[評判指標])

優(yōu)化器可選:
tf.keras.optimizers.SGD(lr=學習率,momentum=動量參數(shù))
tf.keras.optimizers.Adagrad(lr=學習率)
tf.keras.optimizers.Adadelta(lr=學習率)
tf.keras.optimizers.Adam(lr=學習率,beta1=0.9,beta2=0.999)

loss可選:
均方誤差:tf.keras.losses.MeanSquaredError()
交叉,也可填名稱mse熵:tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False)
最后一個參數(shù)用于設置網(wǎng)絡是否經(jīng)過了softmax進行均值分布,是原始分布則為true,經(jīng)過概率分布則使用false
也可填名稱sparse_categorical_crossentropy
如果預測概率和無信息計算的概率相同,應當檢查此處

metrics可選:
accuracy:表示label和預測結果都是數(shù)值
categorical_accuracy:label和預測結果都是獨熱碼(即概率分布)
sparse_categorical_accuracy:label是數(shù)值,預測結果是獨熱碼

fit

model.fit(訓練集輸入特征,訓練集標簽,batch_szie=,epoch=,validation_data=(測試集的特征,測試集的標簽),validation_split=從訓練集劃分多少比例給測試集,validation_freq=多少epoch進行一次驗證)

summary

打印網(wǎng)絡結構和參數(shù)統(tǒng)計

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容