2017-10-04 11 views
0

私はテンソルフローの新しいユーザーであり、データセットで作業しています。プライマーとして、私はコピーしてtensorflow siteから次のサンプルコードを使用していますテンソルフローの基本的なワンショットイテレータを初期化する

sess.run()への第一の呼び出しで
# the sample code doesn't tell me where the session comes from, so I wrote these few lines: 
def my_initializer(): 
    return tf.global_variables_initializer() 
sess = tf.InteractiveSession() 
my_initializer() 

# back to sample code 
dataset = tf.contrib.data.Dataset.range(100) 
iterator = dataset.make_one_shot_iterator() 
next_element = iterator.get_next() 

for i in range(100): 
    value = sess.run(next_element) # <--- death stalks this line 
    assert i == value 

私は次のエラーを参照してください。

NotFoundError (see above for traceback): Function _make_dataset_989f6fa6 is not defined. [[Node: OneShotIterator = OneShotIteratorcontainer="", dataset_factory=_make_dataset_989f6fa6[], output_shapes=[[]], output_types=[DT_INT64], shared_name="", _device="/job:localhost/replica:0/task:0/cpu:0"]]

私は似たに噛まれていますイテレータを使用しようとするたびにエラーが発生します。ここでの目的は、単純にデータをグラフに供給するための基本的な仕組みを理解することです。私はグラフを持っていますが、私はそれがまったく問題だとは思わないので、この投稿から除外しました。

明らかに、私は非常に単純なことを理解していません。誰かが私を助けてくれますか? ありがとうございます。

+0

シンプルスタート:[イテレータを作成する場合の例](https://www.tensorflow.org/programmers_guide/datasets#creating_an_iterator)(空のファイルにそのままコピーして、インポートステートメントだけを追加して貼り付けます)はあなたのために機能しますか?テンソルフローバージョンは何ですか? – Drop

+0

私は問題を発見しました:私はeval(session = sess)にセッションの前にコードを渡していました。 –

+0

チェックしてください:TensorFlow 1.2または1.3を使用していますか?エラーメッセージから、1.3で修正されたバグが発生している可能性があります。 – mrry

答えて

0

tf.data.Datasetまたはtf.data.Iteratorを作成するときにエラーメッセージ "機能...が定義されていません"が表示された場合は、新しいバージョンのTensorFlowにアップグレードしてください。このエラーメッセージは、TensorFlow 1.3で修正されたTensorFlow 1.2のバグによって発生します。

+0

でも使用できます。 – LYu

関連する問題