model.evaluate 用於評估您訓練的模型。它的輸出是准確度或損失,而不是對輸入數據的預測。
model.predict 實際預測,其輸出是目標值,根據輸入數據預測。
model.fit
#fit參數詳情
keras.models.fit(
self,
x=None, #訓練數據
y=None, #訓練數據label標簽
batch_size=None, #每經過多少個sample更新一次權重,defult 32
epochs=1, #訓練的輪數epochs
verbose=1, #0為不在標准輸出流輸出日志信息,1為輸出進度條記錄,2為每個epoch輸出一行記錄
callbacks=None,#list,list中的元素為keras.callbacks.Callback對象,在訓練過程中會調用list中的回調函數
validation_split=0., #浮點數0-1,將訓練集中的一部分比例作為驗證集,然后下面的驗證集validation_data將不會起到作用
validation_data=None, #驗證集
shuffle=True, #布爾值和字符串,如果為布爾值,表示是否在每一次epoch訓練前隨機打亂輸入樣本的順序,如果為"batch",為處理HDF5數據
class_weight=None, #dict,分類問題的時候,有的類別可能需要額外關注,分錯的時候給的懲罰會比較大,所以權重會調高,體現在損失函數上面
sample_weight=None, #array,和輸入樣本對等長度,對輸入的每個特征+個權值,如果是時序的數據,則采用(samples,sequence_length)的矩陣
initial_epoch=0, #如果之前做了訓練,則可以從指定的epoch開始訓練
steps_per_epoch=None, #將一個epoch分為多少個steps,也就是划分一個batch_size多大,比如steps_per_epoch=10,則就是將訓練集分為10份,不能和batch_size共同使用
validation_steps=None, #當steps_per_epoch被啟用的時候才有用,驗證集的batch_size
**kwargs #用於和后端交互
)
