train the model model.fit

 

 

#train the model
    history = model.fit(x_train, y_train,
                        batch_size=32,
                        epochs=100,
                        validation_split=0.1,
                        shuffle=True,
                        class_weight=class_weights,
                        callbacks=[es])

 

  model.fit( 訓練集的輸入特徵,
                 訓練集的標籤, 
                 batch_size,  #每一個batch的大小
                 epochs,   #迭代次數
                 validation_data = (測試集的輸入特徵,測試集的標籤),
                 validation_split = 從測試集中劃分多少比例給訓練集,
                 validation_freq = 測試的epoch間隔數)


https://blog.csdn.net/yunfeather/article/details/106463327

model.fit( ) :

將訓練數據在模型中訓練一定次數,返回loss和測量指標

model.fit(x, y, batch_size, epochs, verbose, validation_split, validation_data, validation_freq)

model.fit( ) 參數:

x 輸入
y 輸出
batch_size 每一個batch的大小(批尺寸),即訓練一次網絡所用的樣本數
epochs 迭代次數,即全部樣本數據將被“”多少次,輪完訓練停止
verbose

0:不輸出信息;1:顯示進度條(一般默認爲1);2:每個epoch輸出一行記錄;

validation_split (0,1)的浮點數,分割數據當驗證數據,其它當訓練數據
validation_data 指定驗證數據,該數據將覆蓋validation_spilt設定的數據
validation_freq  指定驗證數據的epoch
callback

在每個training/epoch/batch結束時,可以通過回調函數Callbacks查看一些內部信息。常用的callback有EarlyStopping,當監視的變量停止改善時,停止訓練,防止模型過擬合,其默認參數如下:

 

callback=callbacks.EarlyStopping(monitor='loss',min_delta=0.002,patience=0,mode='auto',restore_best_weights=False)

  • monitor:監視量,一般是loss。
  • min_delta:監視量改變的最小值,如果監視量的改變絕對值比min_delta小,這次就不算監視量改善,具體是增大還是減小看mode
  • patience:如發現監視量loss相比上一個epoch訓練沒有下降,則經過patience個epoch後停止訓練
  • mode:在min模式訓練,如果監視量停止下降則終止訓練;在max模式下,如果監視量停止上升則停止訓練。監視量使用acc時就要用max,使用loss時就要用min。
  • restore_best_weights:是否把模型權重設爲訓練效果最好的epoch。如果爲False,最終模型權重是最後一次訓練的權重

model.fit( )返回值

model.fit( )函數返回一個History的對象,即記錄了loss和其他指標的數值隨epoch變化的情況。

 

 

鳶尾花數據:

 

 

 

 

 

 

 

 

 

 

REF

https://blog.csdn.net/Fwuyi/article/details/123214588

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章