Keras_callback

1.ReduceLROnPlateau
keras.callbacks.ReduceLROnPlateau(monitor='val_loss', factor=0.1, patience=10, verbose=0, mode='auto', epsilon=0.0001, cooldown=0, min_lr=0)
當評價指標不在提升時,減少學習率
當學習停滯時,減少2倍或10倍的學習率常常能獲得較好的效果。該回調函數檢測指標的情況,如果在patience個epoch中看不到模型性能提升,則減少學習率


2.ModelCheckpoint
keras.callbacks.ModelCheckpoint(filepath,monitor='val_loss',verbose=0,save_best_only=False, save_weights_only=False, mode='auto', period=1)
filepath:字符串,保存模型的路徑(可以將模型的準確率和損失等寫到路徑中,格式如下:)
ModelCheckpoint('model_check/'+'ep{epoch:d}-acc{acc:.3f}- val_acc{val_acc:.3f}.h5',monitor='val_loss')
還可以添加損失值等如 ‘loss{loss:.3f}-val_loss{val_loss:.3f}’
monitor:需要檢測的值如測試集損失或者訓練集損失等
save_best_only:當設置爲True時,監測值有改進時纔會保存當前的模型
verbose:信息展示模式,0或1
mode:‘auto’,‘min’,‘max’之一,在save_best_only=True時決定性能最佳模型的評判準則,
例如,當監測值爲val_acc時,模式應爲max,當監測值爲val_loss時,模式應爲min。在auto模式下,
評價準則由被監測值的名字自動推斷。
save_weights_only:若設置爲True,則只保存模型權重,否則將保存整個模型
period:CheckPoint之間的間隔的epoch數
3.EarlyStopping
keras.callbacks.EarlyStopping(monitor='val_loss', patience=0, verbose=0, mode='auto')
當監測值不再改善時,該回調函數將中止訓練
monitor:需要監視的量
patience:當early stop被激活(如發現loss相比上一個epoch訓練沒有下降),則經過
patience個epoch後停止訓練。
verbose:信息展示模式
mode:‘auto’,‘min’,‘max’之一,在min模式下,如果檢測值停止下降則中止訓
練。在max模式下,當檢測值不再上升則停止訓練。
1.ReduceLROnPlateau
keras.callbacks.ReduceLROnPlateau(monitor='val_loss', factor=0.1, patience=10, verbose=0,
mode='auto', epsilon=0.0001, cooldown=0, min_lr=0)
當評價指標不在提升時,減少學習率
當學習停滯時,減少2倍或10倍的學習率常常能獲得較好的效果。該回調函數檢測指標的
情況,如果在patience個epoch中看不到模型性能提升,則減少學習率

2.ModelCheckpoint
keras.callbacks.ModelCheckpoint(filepath,monitor='val_loss',verbose=0,save_best_only=False,
save_weights_only=False, mode='auto', period=1)
filepath:字符串,保存模型的路徑(可以將模型的準確率和損失等寫到路徑中,格式如下:)
ModelCheckpoint('model_check/'+'ep{epoch:d}-acc{acc:.3f}-
val_acc{val_acc:.3f}.h5',monitor='val_loss')
還可以添加損失值等如 ‘loss{loss:.3f}-val_loss{val_loss:.3f}’
monitor:需要檢測的值如測試集損失或者訓練集損失等
save_best_only:當設置爲True時,監測值有改進時纔會保存當前的模型
verbose:信息展示模式,0或1
mode:‘auto’,‘min’,‘max’之一,在save_best_only=True時決定性能最佳模型的評判準則,
例如,當監測值爲val_acc時,模式應爲max,當監測值爲val_loss時,模式應爲min。在auto模式下,
評價準則由被監測值的名字自動推斷。
save_weights_only:若設置爲True,則只保存模型權重,否則將保存整個模型
period:CheckPoint之間的間隔的epoch數

3.EarlyStopping keras.callbacks.EarlyStopping(monitor='val_loss', patience=0, verbose=0, mode='auto') 當監測值不再改善時,該回調函數將中止訓練 monitor:需要監視的量 patience:當early stop被激活(如發現loss相比上一個epoch訓練沒有下降),則經過 patience個epoch後停止訓練。 verbose:信息展示模式 mode:‘auto’,‘min’,‘max’之一,在min模式下,如果檢測值停止下降則中止訓 練。在max模式下,當檢測值不再上升則停止訓練。