ホームページ バックエンド開発 Python チュートリアル Tensorflow で Saver を使用する方法

Tensorflow で Saver を使用する方法

Apr 23, 2018 pm 03:46 PM
tensorflow 使用法

この記事では主に Tensorflow の Saver の詳しい使い方を紹介しますので、参考にしてください。一緒に見てみましょう

Saverの使い方

1. Saverの背景紹介

モデルをトレーニングした後、これらの結果はモデルのパラメータを参照することがよくあります。次の反復のためのトレーニング、またはテストに使用されます。 Tensorflow は、この要件に対応する Saver クラスを提供します。


Saver クラスは、チェックポイント ファイルから変数を保存および復元するための関連メソッドを提供します。チェックポイント ファイルは、変数名を対応するテンソル値にマップするバイナリ ファイルです。


カウンターが提供されている限り、カウンターがトリガーされたときに Saver クラスはチェックポイント ファイルを自動的に生成できます。これにより、トレーニング中に複数の中間結果を保存できます。たとえば、各トレーニング ステップの結果を保存できます。


ディスク全体がいっぱいになるのを避けるために、Saver はチェックポイント ファイルを自動的に管理できます。たとえば、最新の N 個のチェックポイント ファイルを保存するように指定できます。


2. Saver インスタンス

以下は Saver クラスの使用方法の例です


import tensorflow as tf 
import numpy as np  
x = tf.placeholder(tf.float32, shape=[None, 1]) 
y = 4 * x + 4  
w = tf.Variable(tf.random_normal([1], -1, 1)) 
b = tf.Variable(tf.zeros([1])) 
y_predict = w * x + b 
loss = tf.reduce_mean(tf.square(y - y_predict)) 
optimizer = tf.train.GradientDescentOptimizer(0.5) 
train = optimizer.minimize(loss)  
isTrain = False 
train_steps = 100 
checkpoint_steps = 50 
checkpoint_dir = ''  
saver = tf.train.Saver() # defaults to saving all variables - in this case w and b 
x_data = np.reshape(np.random.rand(10).astype(np.float32), (10, 1))  
with tf.Session() as sess: 
  sess.run(tf.initialize_all_variables()) 
  if isTrain: 
    for i in xrange(train_steps): 
      sess.run(train, feed_dict={x: x_data}) 
      if (i + 1) % checkpoint_steps == 0: 
        saver.save(sess, checkpoint_dir + 'model.ckpt', global_step=i+1) 
  else: 
    ckpt = tf.train.get_checkpoint_state(checkpoint_dir) 
    if ckpt and ckpt.model_checkpoint_path: 
      saver.restore(sess, ckpt.model_checkpoint_path) 
    else: 
      pass 
    print(sess.run(w)) 
    print(sess.run(b))
ログイン後にコピー

  1. : トレーニングフェーズとテストフェーズを区別するために使用されます。True はトレーニングを意味します。 False はテストを意味します

  2. train_steps: トレーニング回数を示します。例では 100 が使用されます。

  3. checkpoint_steps: トレーニング中にチェックポイントを保存する回数を示します。

    checkpoint_dir: チェックポイント ファイルの保存パスを示します。この例では、現在のパス
  4. 2.1 トレーニング フェーズ
Saver.save() メソッドを使用してモデルを保存します。現在の変数値を記録する現在のセッション

checkpoint_dir + 'model.ckpt': 保存されているファイル名を表します
  1. global_step: 現在のステップを示します
  2. トレーニングが完了すると、現在のディレクトリの下にさらに 5 つのファイルが存在します。
  3. 「checkpoint」という名前のファイルを開くと、保存記録と最新モデルの保存場所が表示されます。

2.1 テストフェーズ

テストフェーズでは、saver.restore() メソッドを使用して変数を復元します:

sess: 現在のセッションを表し、以前に保存された結果がこのセッションにロードされます

ckpt .model_checkpoint_path: モデルを表します。 保存場所にモデルの名前を指定する必要はありません。チェックポイント ファイルをチェックして、最新のファイルがどれであるか、またその名前が何であるかを確認します。


実行結果は、以前にトレーニングされたパラメーター w と b の結果をロードして、以下の図に示されています



関連推奨事項:


tensorflow フラグを使用してコマンドラインパラメーターを定義する方法


tensorflow1.0 学習モデルの保存と復元(Saver)_python

以上がTensorflow で Saver を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

JSPコメントの使用法と分類を分析する JSPコメントの使用法と分類を分析する Feb 01, 2024 am 08:01 AM

JSP コメントの分類と使用状況の分析 JSP コメントは 2 つのタイプに分類されます。 単一行コメント: で終わる、単一行のコードのみコメントできます。複数行のコメント: /* で始まり */ で終わると、複数行のコードにコメントを付けることができます。単一行のコメントの例 複数行のコメントの例/**これは複数行のコメントです*コードの複数行にコメントできます*/JSP コメントの使用法 JSP コードを読みやすくするために JSP コメントを使用できます。

conda に tensorflow をインストールする方法 conda に tensorflow をインストールする方法 Dec 05, 2023 am 11:26 AM

インストール手順: 1. Miniconda をダウンロードしてインストールし、オペレーティング システムに応じて適切な Miniconda バージョンを選択し、公式ガイドに従ってインストールします; 2. 「conda create -n tensorflow_env python=3.7」コマンドを使用して新しい Conda 環境を作成します; 3. Conda 環境をアクティブ化します; 4. 「conda install tensorflow」コマンドを使用して TensorFlow の最新バージョンをインストールします; 5. インストールを確認します。

C言語でexit関数を正しく使用する方法 C言語でexit関数を正しく使用する方法 Feb 18, 2024 pm 03:40 PM

C 言語で exit 関数を使用する方法には、具体的なコード例が必要です。C 言語では、プログラムの実行をプログラムの初期段階で終了したり、特定の条件下でプログラムを終了したりする必要があることがよくあります。 C 言語には、この関数を実装するための exit() 関数が用意されています。この記事では、exit() 関数の使用法を紹介し、対応するコード例を示します。 exit() 関数は C 言語の標準ライブラリ関数であり、ヘッダー ファイルに含まれています。その機能はプログラムの実行を終了することであり、整数を取ることができます。

WPSdatedif関数の使い方 WPSdatedif関数の使い方 Feb 20, 2024 pm 10:27 PM

WPS は一般的に使用されるオフィス ソフトウェア スイートであり、WPS テーブル関数はデータ処理と計算に広く使用されています。 WPS テーブルには、2 つの日付間の時差を計算するために使用される、DATEDIF 関数という非常に便利な関数があります。 DATEDIF 関数は英語の DateDifference の略語で、構文は次のとおりです: DATEDIF(start_date,end_date,unit) ここで、start_date は開始日を表します。

Python関数入門:abs関数の使い方と例 Python関数入門:abs関数の使い方と例 Nov 03, 2023 pm 12:05 PM

Python 関数入門: abs 関数の使い方と例 1. abs 関数の使い方の概要 Python では、abs 関数は、指定された値の絶対値を計算するために使用される組み込み関数です。数値引数を受け入れ、その数値の絶対値を返すことができます。 abs 関数の基本構文は次のとおりです。 abs(x) ここで、x は絶対値を計算する数値パラメータであり、整数または浮動小数点数を指定できます。 2. abs 関数の例 以下に、いくつかの具体的な例を通して abs 関数の使用法を示します。 例 1: 計算

Python関数入門:isinstance関数の使い方と例 Python関数入門:isinstance関数の使い方と例 Nov 04, 2023 pm 03:15 PM

Python 関数の紹介: isinstance 関数の使用法と例 Python は、プログラミングをより便利かつ効率的にするための多くの組み込み関数を提供する強力なプログラミング言語です。非常に便利な組み込み関数の 1 つは isinstance() 関数です。この記事では、isinstance関数の使い方と例を紹介し、具体的なコード例を紹介します。 isinstance() 関数は、オブジェクトが指定されたクラスまたは型のインスタンスであるかどうかを判断するために使用されます。この関数の構文は次のとおりです

TensorFlow と Keras を使用して猫と犬の写真の深層学習分類器を作成する TensorFlow と Keras を使用して猫と犬の写真の深層学習分類器を作成する May 16, 2023 am 09:34 AM

この記事では、TensorFlow と Keras を使用して、猫と犬の画像を区別できる画像分類器を作成します。これを行うには、TensorFlow データセットの cat_vs_dogs データセットを使用します。データセットは 25,000 枚の猫と犬のラベル付き画像で構成されており、そのうち 80% がトレーニングに、10% が検証に、10% がテストに使用されます。データのロード まず、TensorFlowDatasets を使用してデータセットをロードします。データ セットをトレーニング セット、検証セット、テスト セットに分割し、それぞれデータの 80%、10%、10% を占め、データ セット内のいくつかのサンプル画像を表示する関数を定義します。輸入転送

MySQL ISNULL関数の詳しい解説と使い方紹介 MySQL ISNULL関数の詳しい解説と使い方紹介 Mar 01, 2024 pm 05:24 PM

MySQL の ISNULL() 関数は、指定された式またはカラムが NULL かどうかを判断するために使用される関数です。ブール値、式が NULL の場合は 1、それ以外の場合は 0 を返します。 ISNULL()関数は、SELECT文やWHERE句の条件判定に使用できます。 1. ISNULL() 関数の基本構文: ISNULL(expression) ここで、expression は、NULL かどうかを判断する式です。

See all articles