Path: blob/master/site/ja/guide/migrate/checkpoint_saver.ipynb
25118 views
Copyright 2021 The TensorFlow Authors.
チェックポイント保存の移行
継続的に「最適な」モデルまたはモデルの重み/パラメータを保存することにより、トレーニングの進行状況を追跡したり、保存されたさまざまな状態から保存されたモデルを読み込んだりできます。
TensorFlow 1 で tf.estimator.Estimator
API を使用してトレーニング/検証中にチェックポイントの保存を構成するには、tf.estimator.RunConfig
でスケジュールを指定するか、tf.estimator.CheckpointSaverHook
を使用します。このガイドでは、このワークフローから TensorFlow 2 Keras API に移行する方法を実演します。
TensorFlow 2 では、さまざまな方法で tf.keras.callbacks.ModelCheckpoint
を構成できます。
save_best_only=True
パラメータを使用して監視された指標に従って、「最適な」バージョンを保存します。ここで、monitor
は、たとえば'loss'
、'val_loss'
、'accuracy'
、または 'val_accuracy'` などになります。save_freq
引数を使用して特定の頻度で継続的に保存します。save_weights_only
をTrue
に設定して、モデル全体ではなく重み/パラメータのみを保存します。
詳細については、tf.keras.callbacks.ModelCheckpoint
API ドキュメントと、モデルの保存と読み込みチュートリアルのトレーニング中にチェックポイントを保存するセクションを参照してください。チェックポイント形式の詳細については、Keras モデルの保存と読み込みガイドの TF チェックポイント形式セクションを参照してください。さらに、フォールトトレランスを追加するには、tf.keras.callbacks.BackupAndRestore
または tf.train.Checkpoint
を手動チェックポイントに使用できます。詳細は、フォールトトレランス移行ガイドを参照してください。
Keras コールバックは、組み込みの Keras Model.fit
/Model.evaluate
/Model.predict
API のトレーニング/評価/予測時のさまざまな時点で呼び出されるオブジェクトです。詳細は、ガイドの最後の 次のステップセクションを参照してください。
セットアップ
まず、インポートし、デモ用の単純なデータセットから始めます。
TensorFlow 1: tf.estimator API でチェックポイントを保存する
次の TensorFlow 1 の例は、tf.estimator.RunConfig
を構成し、tf.estimator.Estimator
API を使用してトレーニング/評価中にすべてのステップでチェックポイントを保存する方法を示しています。
TensorFlow 2: Model.fit の Keras コールバックでチェックポイントを保存する
TensorFlow 2 では、組み込みの Keras Model.fit
(または Model.evaluate
)をトレーニング/評価に使用する場合、tf.keras. callbacks.ModelCheckpoint
を作成し、それを Model.fit
(または Model.evaluate
)の callbacks
パラメータに渡します。(詳細については、API ドキュメントと、組み込みメソッドを使用したトレーニングと評価ガイドのコールバックの使用セクションを参照してください。)
以下の例では、tf.keras.callbacks.ModelCheckpoint
コールバックを使用して、チェックポイントを一時ディレクトリに保存します。
次のステップ
チェックポイントの詳細については、次を参照してください。
API ドキュメント:
tf.keras.callbacks.ModelCheckpoint
チュートリアル: モデルの保存と読み込み(トレーニング中にチェックポイントを保存するセクション)
ガイド: Keras モデルの保存と読み込み(TF チェックポイント形式 セクション)
コールバックの詳細については、次を参照してください。
API ドキュメント:
tf.keras.callbacks.Callback
ガイド: コールバックを記述する
ガイド: 組み込みメソッドを使用したトレーニングと評価(コールバックの使用セクション)
次の移行関連のリソースも参照してください。
フォールトトレランス移行ガイド:
Model.fit
用のtf.keras.callbacks.BackupAndRestore
、または、カスタムトレーニングループ用のtf.train.Checkpoint
およびtf.train.CheckpointManager
API早期停止移行ガイド:
tf.keras.callbacks.EarlyStopping
は組み込みの早期停止コールバックですTensorBoard 移行ガイド: TensorBoard により、指標の追跡と表示が可能になります