2017-05-24 12 views
0

私は訓練されたTensorflowモデルを保存したいのでモデルファイルを復元することで展開できます(私はthisの例です。私のようなものを持つ変数リロードを行うことができるようにこれを行うには、しかし、私は、テンソルを命名しておく必要があります。私はstring_input_producer(以下コード)を使用して、ファイル名のリストから画像をキューイングしていますTensorflow:イメージパイプラインのプレースホルダー/操作名を定義します。

graph = tf.get_default_graph() 
w1 = graph.get_tensor_by_name("my_tensor:0") 

を、テンソルの名前をどのようにして後で再ロードできるようにするのですか?

import tensorflow as tf 

flags = tf.app.flags 
conf = flags.FLAGS 

class ImageDataSet(object): 
    def __init__(self, img_list_path, num_epoch, batch_size): 

    # Build the record list queue 
    input_file = open(images_list_path, 'r') 
    self.record_list = [] 
    for line in input_file: 
     line = line.strip() 
     self.record_list.append(line) 
    filename_queue = tf.train.string_input_producer(self.record_list, num_epochs=num_epoch) 
    image_reader = tf.WholeFileReader() 
    _, image_file = image_reader.read(filename_queue) 
    image = tf.image.decode_jpeg(image_file, conf.img_colour_channels) 

    # preprocess 
    # ... 

    min_after_dequeue = 1000 
    capacity = min_after_dequeue + 400 * batch_size 
    self.images = tf.train.shuffle_batch(image, batch_size=batch_size, capacity=capacity, 
     min_after_dequeue=min_after_dequeue) 

答えて

0

テストまたはデプロイ用にグラフを復元することを前提としています。

これらの目的のために、プレースホルダをテストデータの入り口として挿入することでグラフを編集できます。

グラフを編集するには、tfのgraph editorを使用するか、プレースホルダで新しいグラフを作成して保存します。

+0

はい - 私は、展開のためにグラフを復元することを意図しています。 * image *変数のプレースホルダを作成し、tf.assignを使用してデータを入力する必要があります。 – 4Oh4

+0

ここには簡単な例があります[insert_placeholder.py](https://github.com/Zehaos/MobileNet/ blob/master/tools/insert_placeholder.py)、それをテストしてください(test_forzen_graph)(https://github.com/Zehaos/MobileNet/blob/master/tools/test_forzen_graph.py)。 –

関連する問題