必要に応じて、コンテンツの保存と分類を行います。つのいずれかを意味します。チェックポイント、または保存されたモデル(SavedModel)チェックポイントは、モデルで使用されるすべてのパラメータ(tf.Variableオブジェクト)の正確な値をキャプチャします。チェックポイントにはモデルで定義された計算のいかなる記述も含まれていないため、通常は、保存されたパラメータ値を使用するソースコードが利用可能な場合に限り有用です。形式には、パラメータ値(チェックポイント)に加え、モデルで定義された計算のシリアライズされた記述が含まれています。この形式のモデルは、モデルを作成したソースコードから独立しています。API)を介したデプロイに適しています。保存するtf.kerasの保存と復元に関するガイドをご覧ください。チェックポイントを保存します。モデルの永続的な状態は、tf.Variableオブジェクトに格納されます。オブジェクトにアタッチし、それらのオブジェクトを参照することです。tf.train.Checkpoint、tf.keras.layers.Layerおよびtf.keras.Modelのサブクラスは、属性に割り当てられた変数を自動的に追跡します。以下の例では、単純な線形モデルを作成し、モデルのすべての変数の値を含むチェックポイントを記述します。Model.save_weightsで、モデルチェックポイントを簡単に保存できます。手動チェックポイントセットアップtf.train.Checkpointのすべての機能を実演するために、トイデータセットと最適化ステップを次のように定義します。lossチェックポイントオブジェクトを作成するチェックポイントを手動で作成するには、tf.train.Checkpointオブジェクトが必要です。チェックポイントするオブジェクトの場所は、オブジェクトの属性として設定します。tf.train.CheckpointManagerは、複数のチェックポイントの管理にも役立ちます。max_to_keep=3)モデルをトレーニングおよびチェックポイントする次のトレーニングループは、モデルとオプティマイザのインスタンスを作成し、それらをtf.train.Checkpointオブジェクトに集めます。それはデータの各バッチのループ内でトレーニングステップを呼び出し、定期的にチェックポイントをディスクに書き込みます。2.48復元してトレーニングを続ける最初の実行後、新しいモデルとマネジャーを渡すことができますが、トレーニングをやめた所からトレーニングを再開します。0.30tf.train.CheckpointManagerオブジェクトは古いチェックポイントを削除します。つのチェックポイントのみを保持するように構成されています。それ以上のデータファイルです。これらのプレフィックスは、まとめて単一のcheckpointファイル('./tf_ckpts/checkpoint')にグループ化され、CheckpointManagerがその状態を保存します。ckpt-9.data-00000-of-00001読み込みの仕組みTensorFlowは、読み込まれたオブジェクトから始めて、名前付きエッジを持つ有向グラフを走査することにより、変数をチェックポイントされた値に合わせます。tf.keras.layers.Dense(5)の"l1"などがその例です。tf.train.Checkpointは、tf.train.Checkpoint(step=...)の"step"のように、キーワード引数名を使用します。上記の例の依存関係グラフは次のようになります。オプティマイザは赤色、通常変数は青色、オプティマイザスロット変数はオレンジ色です。他のノード、例えばtf.train.Checkpointを表すものは黒色です。スロット変数はオプティマイザの状態の一部ですが、特定の変数のために作成されます。オプティマイザが各変数のために追跡します。スロット変数は変数とオプティマイザの両方が保存される場合に限りチェックポイントに保存されるので、破線のエッジです。tf.train.Checkpointオブジェクト上でのrestore()呼び出しは、要求された復元をキューに入れ、Checkpointオブジェクトから一致するパスがあるとすぐに変数値を復元します。再構築することにより、上記で定義したモデルからバイアスのみを読み込むことができます。5.1035223]これらの新しいオブジェクトの依存関係グラフは、上で書いたより大きなチェックポイントの遥かに小さなサブグラフです。これには、バイアスとtf.train.Checkpointがチェックポイントに番号付けするために使用した保存カウンタのみを含みます。restore()は、オプションのアサーションを持つ状態オブジェクトを返します。新しいCheckpointで作成したすべてのオブジェクトが復元され、status.assert_existing_objects_matched()を渡します。0x7fdef047eba8>チェックポイントには、層のカーネルやオプティマイザの変数など、一致しない多くのオブジェクトがあります。status.assert_consumed()は、チェックポイントとプログラムが正確に一致する場合に限り渡すため、ここでは例外をスローします。Layerオブジェクトは、入力形状が利用可能な場合、最初の呼び出しまで変数の作成を遅らせる可能性があります。Denseレイヤーのカーネルの形状はレイヤーの入力形状と出力形状の両方に依存するため、コンストラクタ引数として必要な出力形状は、単独で変数を作成するために充分な情報ではありません。Layerの呼び出しは変数の値も読み取るため、復元は変数の作成とその最初の使用の間で発生する必要があります。このイディオムをサポートするために、tf.train.Checkpointは一致する変数をまだ持たない復元をキューに入れます。4.9210296]]チェックポイントを手動で検査するtf.train.list_variablesは、チェックポイントキーとチェックポイント内の変数の形状をリスト表示します。チェックポイントキーは上で示したグラフのパスです。tf.keras.layers.Dense(5)のような直接の属性割り当てと同様に、リストとディクショナリを属性に割り当てると、それらの内容を追跡します。v2.numpy()リストとディクショナリのラッパーオブジェクトにお気づきでしょうか。これらのラッパーは基礎的なデータ構造のチェックポイント可能なバージョンです。属性に基づく読み込みと同様に、これらのラッパーは変数の値がコンテナに追加されるとすぐにそれを復元します。v1.numpy()ListWrapper([])同じ追跡がtf.keras.Modelのサブクラスに自動的に適用され、例えばレイヤーのリストの追跡にも使用される可能性があります。ガイドをご覧ください。デフォルトで、前のセクションで説明したオブジェクトグラフではなく、変数名でチェックポイントを保存します。model_fnの外側に移動すると変数名が変わることがあります。内側でモデルをトレーニングし、外側でそれを使用することが容易になります。チェックポイントをそのmodel_dirから読み込むことができます。オブジェクトは、それらが使用する変数の値を保存および復元するための容易で自動的な仕組みを提供します。ライセンスにより使用許諾されます。ライセンスにより使用許諾されます。サイトのポリシーをご覧ください。関連会社の登録商標です。