DeepRec icon indicating copy to clipboard operation
DeepRec copied to clipboard

[Auto Micro Batch] auto micro batch run error

Open kuangdao opened this issue 2 years ago • 0 comments

git commit-id, 821d157a22b3257c6a6ea03d53164d388872f7e8, branch, master

''' from future import absolute_import from future import division from future import print_function

import os import numpy as np import tensorflow as tf

num_x = np.random.randint(0, 10, (500, 10)).astype(dtype=np.float32) num_y = np.random.randint(0, 10, 500).astype(dtype=np.int64) dataset = tf.data.Dataset.from_tensor_slices((num_x, num_y))
.batch(10) iterator = dataset.make_initializable_iterator()

x, labels = iterator.get_next() outputs = tf.layers.dense(x, 10)

logits = tf.layers.dense(outputs, 10) loss = tf.losses.sparse_softmax_cross_entropy(labels=labels, logits=logits)

optimizer = tf.train.AdamOptimizer(learning_rate=0.001) train_op = optimizer.minimize(loss)

init = tf.global_variables_initializer()

config = tf.ConfigProto() config.graph_options.optimizer_options.micro_batch_num = 2

with tf.Session(config=config) as sess: sess.run(iterator.initializer)
sess.run(init) print("================================") train_loss, _ = sess.run([loss, train_op]) print(' Loss: %s .' % ( train_loss))

'''

error msg

================================ Traceback (most recent call last): File "/home/pai/lib/python3.6/site-packages/tensorflow_core/python/client/session.py", line 1365, in _do_call return fn(*args) File "/home/pai/lib/python3.6/site-packages/tensorflow_core/python/client/session.py", line 1350, in _run_fn target_list, run_metadata) File "/home/pai/lib/python3.6/site-packages/tensorflow_core/python/client/session.py", line 1443, in _call_tf_sessionrun run_metadata) tensorflow.python.framework.errors_impl.FailedPreconditionError: GetNext() failed because the iterator has not been initialized. Ensure that you have run the initializer operation for this iterator before getting the next element. [[{{node IteratorGetNext/dup0}}]]

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "demo1.py", line 37, in train_loss, _ = sess.run([loss, train_op]) File "/home/pai/lib/python3.6/site-packages/tensorflow_core/python/client/session.py", line 956, in run run_metadata_ptr) File "/home/pai/lib/python3.6/site-packages/tensorflow_core/python/client/session.py", line 1180, in _run feed_dict_tensor, options, run_metadata) File "/home/pai/lib/python3.6/site-packages/tensorflow_core/python/client/session.py", line 1359, in _do_run run_metadata) File "/home/pai/lib/python3.6/site-packages/tensorflow_core/python/client/session.py", line 1384, in _do_call raise type(e)(node_def, op, message) tensorflow.python.framework.errors_impl.FailedPreconditionError: GetNext() failed because the iterator has not been initialized. Ensure that you have run the initializer operation for this iterator before getting the next element. [[{{node IteratorGetNext/dup0}}]]

kuangdao avatar Apr 15 '22 10:04 kuangdao