Path: blob/master/site/ja/guide/migrate/checkpoint_saver.ipynb
38627 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.CheckpointManagerAPI早期停止移行ガイド:
tf.keras.callbacks.EarlyStoppingは組み込みの早期停止コールバックですTensorBoard 移行ガイド: TensorBoard により、指標の追跡と表示が可能になります
TensorFlow.org で表示
Google Colab で実行
GitHub でソースを表示
ノートブックをダウンロード