このページは Cloud Translation API によって翻訳されました。
Switch to English

tf.keras.callbacks.ModelCheckpoint

TensorFlow 1つのバージョン GitHubの上のソースを表示

いくつかの周波数でKerasモデルやモデルの重みを保存するコールバック。

:から継承Callback

ノートPCで使用されます

ガイドで使用チュートリアルで使用されます

ModelCheckpointコールバックを使用した訓練と組み合わせて使用されmodel.fit()モデルや重みが保存された状態からトレーニングを継続するために、後でロードすることができるので、いくつかの間隔で(チェックポイント・ファイル内の)モデルやウェイトを保存します。

このコールバックが提供するいくつかのオプションが含まれます:

  • かどうかは関係なく、パフォーマンスのすべてのエポックの終わりにモデルを保存するために、これまで、またはかどうかを「最高のパフォーマンス」を達成したモデルを維持します。
  • 「最良」の定義;監視し、それが最大化または最小化されるべきかどうかをどの量。
  • 周波数は、それがで保存してください。現在、すべてのエポックの終わりに保存したコールバックをサポート、またはトレーニングバッチの固定番号の後に。
  • かどうかだけの重みが保存されている、またはモデル全体が保存されます。

例:

 EPOCHS = 10
checkpoint_filepath = '/tmp/checkpoint'
model_checkpoint_callback = tf.keras.callbacks.ModelCheckpoint(
    filepath=checkpoint_filepath,
    save_weights_only=True,
    monitor='val_acc',
    mode='max',
    save_best_only=True)

# Model weights are saved at the end of every epoch, if it's the best seen
# so far.
model.fit(epochs=EPOCHS, callbacks=[model_checkpoint_callback])

# The model weights (that are considered the best) are loaded into the model.
model.load_weights(checkpoint_filepath)
 

filepath 文字列またはPathLike 、モデルファイルを保存するパス。 filepathの値が入力されますオプション、書式設定の名前含めることができepochでとキーをlogs (渡されたon_epoch_end )。場合:たとえば、 filepathあるweights.{epoch:02d}-{val_loss:.2f}.hdf5 、次いでモデルチェックポイントは、エポック番号とファイル名で検証損失で保存されます。
monitor モニタに数量。
verbose 冗長モードでは、0または1。
save_best_only 場合save_best_only=True 、量に応じて最新の最良のモデルは、監視上書きされません。場合はfilepathのような書式設定オプションが含まれていません{epoch}その後、 filepathそれぞれの新しい、より良いモデルによって上書きされます。
mode {自動、最小、最大}のいずれ。場合save_best_only=True 、ファイル保存現在を上書きする決定は、最大化または監視量の最小化のいずれかに基づいて行われます。ためval_acc 、これがなければならないmaxのために、 val_lossなければならない。このminで等、 autoモード、方向を自動的に監視量の名前から推測されます。
save_weights_only 真の、そして唯一のモデルの重みが保存されます(場合model.save_weights(filepath) )、他のフルモデルが保存されている( model.save(filepath) )。
save_freq 'epoch'または整数。使用するときは'epoch' 、コールバックが各エポックの後にモデルを保存します。整数を使用している場合、コールバックは、この多くのバッチの終了時にモデルを保存します。場合Modelしてコンパイルされexperimental_steps_per_execution=N 、そして省エネ基準は、すべてのN番目のバッチをチェックされます。省はエポックに整列されていない場合は、潜在的に信頼性の低いかもしれメトリックに監視することを注(メトリックは、すべてのエポックをリセットし得るので、それは、1つのバッチとして少しとして反映しうる)。デフォルトは'epoch'
options オプションtf.train.CheckpointOptionsあれば、オブジェクトsave_weights_only真であるかオプションtf.saved_model.SavedOptionsあれば、オブジェクトsave_weights_only falseです。
**kwargs 後方互換性のための追加の引数。可能なキーがあるperiod

メソッド

set_model

ソースを表示

set_params

ソースを表示