keras的Model模型的引數說明

2021-10-02 05:53:06 字數 1870 閱讀 6551

keras的model模型的引數說明

keras中的容易混淆的概念:

epoch: 乙個epoch是把所有訓練樣本訓練一遍。

batch_size:計算梯度下降時每個batch包含的樣本量

steps_per_epoch:一輪epoch訓練包含的步數,預設=none(樣本總數/batch_size)

注意 :batch_size和steps_per_epoch是等價的,當同時設定這兩個引數時會報錯:valueerror: if steps_per_epoch is set, thebatch_sizemust be none.

fit(self, x=none, y=none, batch_size=none, epochs=1, verbose=1, callbacks=none, validation_split=0.0, validation_data=none, shuffle=true, class_weight=none, sample_weight=none, initial_epoch=0, steps_per_epoch=none, validation_steps=none)

x :輸入資料(訓練集的特徵),如果模型只有乙個輸入,那麼x的型別是numpy array,如果模型有多個輸入,那麼x的型別應當為list,list的元素是對應於各個輸入的numpy array。如果模型的每個輸入都有名字,則可以傳入乙個字典,將輸入名與其輸入資料對應起來。

y: 標籤(訓練集的label),同上

batch_size : 整數,指定進行梯度下降時每個batch包含的樣本數。訓練時乙個batch的樣本會被計算一次梯度下降,使目標函式優化一步。

epoch:整數,訓練終止時的epoch值,訓練將在達到該epoch值時停止,當沒有設定initial_epoch時,它就是訓練的總輪數,否則訓練的總輪數為epochs - inital_epoch

日誌顯示,0為不在標準輸出流輸出日誌資訊,1為輸出進度條記錄,2為每個epoch輸出一行記錄

validation_split:0~1之間的浮點數,用來指定訓練集的一定比例資料作為驗證集。驗證集將不參與訓練,並在每個epoch結束後測試的模型的指標,如損失函式、精確度等。注意,validation_split的劃分在shuffle之後,因此如果你的資料本身是有序的,需要先手工打亂再指定validation_split,否則可能會出現驗證集樣本不均勻。

validation_data:形式為(x,y)或(x,y,sample_weights)的tuple,是指定的驗證集。此引數將覆蓋validation_spilt。

shuffle:布林值,表示是否在訓練過程中每個epoch前隨機打亂輸入樣本的順序。

class_weight:字典,將不同的類別對映為不同的權值,該引數用來在訓練過程中調整損失函式(只能用於訓練)。該引數在處理非平衡的訓練資料(某些類的訓練樣本數很少)時,可以使得損失函式對樣本數不足的資料更加關注。

sample_weight:權值的numpy array,用於在訓練時調整損失函式(僅用於訓練)。可以傳遞乙個1d的與樣本等長的向量用於對樣本進行1對1的加權,或者在面對時序資料時,傳遞乙個的形式為(samples,sequence_length)的矩陣來為每個時間步上的樣本賦不同的權。這種情況下請確定在編譯模型時新增了sample_weight_mode=『temporal』。 initial_epoch: 從該引數指定的epoch開始訓練,在繼續之前的訓練時有用。

steps_per_epoch: 乙個epoch包含的步數(每一步是乙個batch的資料送入),當使用如tensorflow資料tensor之類的輸入張量進行訓練時,預設的none代表自動分割,即資料集樣本數/batch樣本數。

validation_steps: 僅當steps_per_epoch被指定時有用,在驗證集上的step總數。

**demo

keras關於model的小總結

進來看了看keras,比tf友好的多啊,總結下 keras有兩種型別的模型,順序模型 sequential 和泛型模型 model 首先比較簡單的順序型 示例 model sequential model.add dense 32,input shape 500,model.add dense 10...

keras的回歸模型

基於keras的神經網路回歸模型 import matplotlib.pyplot as plt from math import sqrt from matplotlib import pyplot import pandas as pd from numpy import concatenate...

Keras筆記 3 關於Keras的模型型別

keras有兩種型別的模型,序貫模型 sequential 和函式式模型 model 函式式模型應用更為廣泛,序貫模型是函式式模型的一種特殊情況。兩類模型有一些方法是相同的 config model.get config model model.from config config or,for s...