keras.callbacks.ModelCheckpoint(ファイルパス、モニター= ' val_loss '冗長、= 0、save_best_only = Falseを、save_weights_only = Falseを、モード= ' オート'、期間= 1)
各エポックの後にモデルを保存するファイルパス。
パラメータ:
- ファイルパス:パスモデルを保存します。
- モニター:監視されたデータ。val_accまたはval_loss。
- 冗長:詳細モード0 1.0かどうかは、出力、印刷を印刷します。
- save_best_only:1の{自動、最小、最大}:= save_best_only Trueの場合、モデルは、検証セットモードで最高のパフォーマンスを保存します。真= save_best_only場合は、そのファイルが監視データの最大値または最小値に依存して上書き保存するかどうかを決めます。val_accのために、最大モードは以下のようになり、そしてval_lossのために、モデルは分が必要です。自動モードでは、モードが自動的に監視されているデータの名前から決定されます。
- save_weights_only:Trueの場合、唯一の右のモデルの重量が保存されている(model.save_weights(ファイルパス))、そうでない場合は、モデル全体が保存されます(model.save(ファイルパス))。
- 期間:各チェックポイントの間隔(トレーニングラウンド数)。
トレーニングプロセス:
keras.callbacks ModelCheckpointからクラスに1、
keras.callbacks インポート ModelCheckpoint
すべてのエポック(周期= 1)が最良のパラメータを保存するmodel.compile次のコードで実装2は、トレーニング段階の後に添加されます
チェックポイント= keras.callbacks.ModelCheckpoint(ファイルパス、 モニター = ' val_loss '、save_weights_only = Trueの場合、冗長= 1、save_best_only = Trueの場合、期間= 1)
3、model.fitのトレーニング段階の前に、以前に保存されたパラメータをロード
IF os.path.exists(ファイルパス): model.load_weights(ファイルパス) #成功し、以前に保存されたパラメータをロードした場合、出力以下の情報 を印刷(" checkpoint_loaded ")
4は、model.fitにコールバックを追加= [チェックポイント]コールバックを実装しました
model.fit_generator(data_generator_wrap(行[:num_train]、BATCH_SIZE、input_shape、アンカー、num_classes)、 steps_per_epoch = MAX(1、num_train // BATCH_SIZE)、 validation_data = data_generator_wrap(行[num_train:]、BATCH_SIZE、input_shape、アンカー、num_classes )、 validation_steps = MAX(1、num_val // BATCH_SIZE)、 エポック = 、 initial_epoch = 0、 コールバック = [チェックポイント])