我是張量流的新用戶,並且正在使用數據集。作爲底漆,我已經複製並使用從tensorflow site下面的示例代碼:在張量流中初始化一個基本的一次迭代器
# 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
一號調用sess.run()
我看到下面的錯誤:
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"]]
我被咬傷通過類似每次嘗試使用迭代器時都會出錯。這裏的目標只是簡單地掌握將數據提供給圖表的基本機制。我確實有一張圖,但是我沒有把它留在這篇文章中,因爲我根本不認爲這是問題。
顯然,我不是很理解一些非常簡單的東西。有人可以幫我嗎? 謝謝。
開始簡單:做[創建一個迭代器的例子](https://www.tensorflow.org/programmers_guide/datasets#creating_an_iterator)(拷貝 - 粘貼到一個空文件,只添加了import語句)爲你工作?什麼是您的tensorflow版本? – Drop
我發現問題:我在代碼中將會話傳遞給eval(session = sess)。 –
只需檢查:您使用的是TensorFlow 1.2還是1.3?從錯誤消息中,我認爲您可能遇到了1.3版中修復的錯誤。 – mrry