Tensorflow IM2Text UnimplementedError(回溯见上文):在更改新数据时运行训练时,TensorArray的大小为零

Tensorflow IM2Text UnimplementedError(回溯见上文):在更改新数据时运行训练时,TensorArray的大小为零,tensorflow,Tensorflow,我在更改新图像以训练IM2Text模型时出错。不知道为什么 Build the model. bazel build -c opt im2txt/... bazel-bin/im2txt/train --input_file_pattern="${MY_DATA_DIR}/train-?????-of-00256" --inception_checkpoint_file="${INCEPTION_CHECKPOINT}" --train_dir="${MODEL_D

我在更改新图像以训练IM2Text模型时出错。不知道为什么

Build the model.
bazel build -c opt im2txt/...
bazel-bin/im2txt/train 
    --input_file_pattern="${MY_DATA_DIR}/train-?????-of-00256" 
    --inception_checkpoint_file="${INCEPTION_CHECKPOINT}" 
    --train_dir="${MODEL_DIR}/train" 
    --train_inception=false 
    --number_of_steps=10000
在句子下面运行时出错

sequence_length = tf.reduce_sum(self.input_mask, 1)
lstm_outputs, _ = tf.nn.dynamic_rnn(cell=lstm_cell,
    inputs=self.seq_embeddings,
    sequence_length=sequence_length,
    initial_state=initial_state,
    dtype=tf.float32,
    scope=lstm_scope)

详情如下

    INFO:tensorflow:global_step/sec: 0
    INFO:tensorflow:global step 1: loss = 9.5415 (37.21 sec/step)
    INFO:tensorflow:global step 2: loss = 6.6332 (12.90 sec/step)
    INFO:tensorflow:global step 3: loss = 3.1327 (13.01 sec/step)
    INFO:tensorflow:global step 4: loss = 6.2893 (12.04 sec/step)
    INFO:tensorflow:Error reported to Coordinator: <class 'tensorflow.python.framework.errors_impl.UnimplementedError'>, TensorArray has size zero, but element shape is not fully defined. Currently only static shapes are supported when packing zero-size TensorArrays.
[[Node: OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGatherV3 = TensorArrayGatherV3[_class=["loc:@lstm/lstm/TensorArray_1"], dtype=DT_FLOAT, element_shape=, _device="/job:localhost/replica:0/task:0/cpu:0"](OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGrad/TensorArrayGradV3, lstm/lstm/TensorArrayUnstack/range, OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGrad/gradient_flow)]]

Caused by op u'OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGatherV3', defined at:
File "/data/projects/content_creator/image2text/im2txt/bazel-bin/im2txt/train.runfiles/im2txt/im2txt/train.py", line 155, in 
tf.app.run()
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 44, in run
_sys.exit(main(_sys.argv[:1] + flags_passthrough))
File "/data/projects/content_creator/image2text/im2txt/bazel-bin/im2txt/train.runfiles/im2txt/im2txt/train.py", line 135, in main
learning_rate_decay_fn=learning_rate_decay_fn)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/layers/python/layers/optimizers.py", line 226, in optimize_loss
colocate_gradients_with_ops=colocate_gradients_with_ops)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/optimizer.py", line 345, in compute_gradients
colocate_gradients_with_ops=colocate_gradients_with_ops)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/gradients_impl.py", line 482, in gradients
in_grads = grad_fn(op, *out_grads)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/tensor_array_grad.py", line 186, in _TensorArrayScatterGrad
grad = g.gather(indices)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/tensor_array_ops.py", line 328, in gather
element_shape=element_shape)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/gen_data_flow_ops.py", line 2226, in _tensor_array_gather_v3
element_shape=element_shape, name=name)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/op_def_library.py", line 763, in apply_op
op_def=op_def)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/ops.py", line 2327, in create_op
original_op=self._default_original_op, op_def=op_def)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/ops.py", line 1226, in init
self._traceback = _extract_stack()

...which was originally created as op u'lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3', defined at:
File "/data/projects/content_creator/image2text/im2txt/bazel-bin/im2txt/train.runfiles/im2txt/im2txt/train.py", line 155, in 
tf.app.run()
[elided 0 identical lines from previous traceback]
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 44, in run
_sys.exit(main(sys.argv[:1] + flags_passthrough))
File "/data/projects/content_creator/image2text/im2txt/bazel-bin/im2txt/train.runfiles/im2txt/im2txt/train.py", line 89, in main
model.build()
File "/data/projects/content_creator/image2text/im2txt/im2txt/show_and_tell_model.py", line 437, in build
self.build_model()
File "/data/projects/content_creator/image2text/im2txt/im2txt/show_and_tell_model.py", line 356, in build_model
scope=lstm_scope)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/rnn.py", line 546, in dynamic_rnn
dtype=dtype)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/rnn.py", line 664, in dynamic_rnn_loop
for ta, input in zip(input_ta, flat_input))
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/rnn.py", line 664, in 
for ta, input in zip(input_ta, flat_input))
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/tensor_array_ops.py", line 380, in unstack
indices=math_ops.range(0, num_elements), value=value, name=name)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/tensor_array_ops.py", line 408, in scatter
name=name)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/gen_data_flow_ops.py", line 2492, in _tensor_array_scatter_v3
name=name)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/op_def_library.py", line 763, in apply_op
op_def=op_def)

UnimplementedError (see above for traceback): TensorArray has size zero, but element shape is not fully defined. Currently only static shapes are supported when packing zero-size TensorArrays.
[[Node: OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGatherV3 = TensorArrayGatherV3[_class=["loc:@lstm/lstm/TensorArray_1"], dtype=DT_FLOAT, element_shape=, _device="/job:localhost/replica:0/task:0/cpu:0"](OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGrad/TensorArrayGradV3, lstm/lstm/TensorArrayUnstack/range, OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGrad/gradient_flow)]]

Traceback (most recent call last):
File "/data/projects/content_creator/image2text/im2txt/bazel-bin/im2txt/train.runfiles/im2txt/im2txt/train.py", line 155, in 
tf.app.run()
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 44, in run
_sys.exit(main(_sys.argv[:1] + flags_passthrough))
File "/data/projects/content_creator/image2text/im2txt/bazel-bin/im2txt/train.runfiles/im2txt/im2txt/train.py", line 152, in main
saver=saver)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/slim/python/slim/learning.py", line 793, in train
train_step_kwargs)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/slim/python/slim/learning.py", line 530, in train_step
run_metadata=run_metadata)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py", line 767, in run
run_metadata_ptr)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py", line 965, in _run
feed_dict_string, options, run_metadata)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py", line 1015, in _do_run
target_list, options, run_metadata)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py", line 1035, in _do_call
raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.UnimplementedError: TensorArray has size zero, but element shape is not fully defined. Currently only static shapes are supported when packing zero-size TensorArrays.
[[Node: OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGatherV3 = TensorArrayGatherV3[_class=["loc:@lstm/lstm/TensorArray_1"], dtype=DT_FLOAT, element_shape=, _device="/job:localhost/replica:0/task:0/cpu:0"](OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGrad/TensorArrayGradV3, lstm/lstm/TensorArrayUnstack/range, OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGrad/gradient_flow)]]

Caused by op u'OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGatherV3', defined at:
File "/data/projects/content_creator/image2text/im2txt/bazel-bin/im2txt/train.runfiles/im2txt/im2txt/train.py", line 155, in 
tf.app.run()
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 44, in run
_sys.exit(main(_sys.argv[:1] + flags_passthrough))
File "/data/projects/content_creator/image2text/im2txt/bazel-bin/im2txt/train.runfiles/im2txt/im2txt/train.py", line 135, in main
learning_rate_decay_fn=learning_rate_decay_fn)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/layers/python/layers/optimizers.py", line 226, in optimize_loss
colocate_gradients_with_ops=colocate_gradients_with_ops)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/optimizer.py", line 345, in compute_gradients
colocate_gradients_with_ops=colocate_gradients_with_ops)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/gradients_impl.py", line 482, in gradients
in_grads = grad_fn(op, *out_grads)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/tensor_array_grad.py", line 186, in _TensorArrayScatterGrad
grad = g.gather(indices)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/tensor_array_ops.py", line 328, in gather
element_shape=element_shape)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/gen_data_flow_ops.py", line 2226, in _tensor_array_gather_v3
element_shape=element_shape, name=name)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/op_def_library.py", line 763, in apply_op
op_def=op_def)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/ops.py", line 2327, in create_op
original_op=self._default_original_op, op_def=op_def)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/ops.py", line 1226, in init
self._traceback = _extract_stack()

...which was originally created as op u'lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3', defined at:
File "/data/projects/content_creator/image2text/im2txt/bazel-bin/im2txt/train.runfiles/im2txt/im2txt/train.py", line 155, in 
tf.app.run()
[elided 0 identical lines from previous traceback]
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 44, in run
_sys.exit(main(sys.argv[:1] + flags_passthrough))
File "/data/projects/content_creator/image2text/im2txt/bazel-bin/im2txt/train.runfiles/im2txt/im2txt/train.py", line 89, in main
model.build()
File "/data/projects/content_creator/image2text/im2txt/im2txt/show_and_tell_model.py", line 437, in build
self.build_model()
File "/data/projects/content_creator/image2text/im2txt/im2txt/show_and_tell_model.py", line 356, in build_model
scope=lstm_scope)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/rnn.py", line 546, in dynamic_rnn
dtype=dtype)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/rnn.py", line 664, in dynamic_rnn_loop
for ta, input in zip(input_ta, flat_input))
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/rnn.py", line 664, in 
for ta, input in zip(input_ta, flat_input))
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/tensor_array_ops.py", line 380, in unstack
indices=math_ops.range(0, num_elements), value=value, name=name)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/tensor_array_ops.py", line 408, in scatter
name=name)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/gen_data_flow_ops.py", line 2492, in _tensor_array_scatter_v3
name=name)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/op_def_library.py", line 763, in apply_op
op_def=op_def)

UnimplementedError (see above for traceback): TensorArray has size zero, but element shape is not fully defined. Currently only static shapes are supported when packing zero-size TensorArrays.
[[Node: OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGatherV3 = TensorArrayGatherV3[_class=["loc:@lstm/lstm/TensorArray_1"], dtype=DT_FLOAT, element_shape=, _device="/job:localhost/replica:0/task:0/cpu:0"](OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGrad/TensorArrayGradV3, lstm/lstm/TensorArrayUnstack/range, OptimizeLoss/gradients/lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGrad/gradient_flow)]]
INFO:tensorflow:global\u步长/秒:0
信息:tensorflow:全局步骤1:损失=9.5415(37.21秒/步)
信息:tensorflow:全局步骤2:损耗=6.6332(12.90秒/步)
信息:tensorflow:全局步骤3:损失=3.1327(13.01秒/步)
信息:tensorflow:全局步骤4:损耗=6.2893(12.04秒/步)
信息:tensorflow:向协调器报告的错误:,TensorArray的大小为零,但元素形状未完全定义。当前,打包零大小的TensorArray时只支持静态形状。
[[Node:OptimizeLoss/gradients/lstm/lstm/TensorararyScatter/TensorararyScatterv3_grad/TensorarayGatherv3=TensorarayGatherv3[\u class=[[loc:@lstm/lstm/Tensoraray_1],dtype=DT_FLOAT,element_shape=,\u device=“/job:localhost/replica:0/task:0/cpu:0”](优化损耗/梯度/lstm/lstm/TensoraryScatter/TensoraryScatterv3_grad/TensoraryGrad/TensoraryGradV3,lstm/lstm/TensoraryStack/range,优化损耗/梯度/lstm/TensoraryStack/TensoraryScatter/TensoraryScatterv3_grad/TensoraryGrad/Gradigrad/gradient_flow)]]
由op u“优化损失/梯度/lstm/lstm/TensorarrayOnStack/TensorArrayScatter/TensorArrayScatterV3_梯度/TensorArrayGatherV3”引起,定义为:
文件“/data/projects/content\u creator/image2text/im2text/bazel-bin/im2text/train.runfiles/im2text/im2text/train.py”,第155行,在
tf.app.run()
文件“/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py”,第44行,正在运行
_系统出口(主(_sys.argv[:1]+标志_passthrough))
文件“/data/projects/content\u creator/image2text/im2text/bazel-bin/im2text/train.runfiles/im2text/im2text/train.py”,第135行,主视图
学习速度衰减=学习速度衰减)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/contrib/layers/python/layers/optimizers.py”,第226行,在optimize\u loss中
colocate_gradients_with_ops=colocate_gradients_with_ops)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/training/optimizer.py”,第345行,计算梯度
colocate_gradients_with_ops=colocate_gradients_with_ops)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/ops/gradients_impl.py”,第482行,渐变中
入级=出级fn(op,*出级)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/ops/tensor\u array\u grad.py”,第186行,在TensorArrayScatterGrad中
梯度=g.聚集(指数)
文件“/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/tensor_-array_-ops.py”,第328行,位于聚集区
元素形状=元素形状)
文件“/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/gen_-data_-flow_-ops.py”,第2226行,在“tensor_-array_-gather_”v3中
元素形状=元素形状,名称=名称)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/framework/op_def_library.py”,第763行,在apply_op
op_def=op_def)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/framework/ops.py”,第2327行,在create_op中
初始值=自身值。\默认值\初始值,初始值=初始值)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/framework/ops.py”,第1226行,在init中
self.\u traceback=\u extract\u stack()
…最初创建为op u'lstm/lstm/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3',定义为:
文件“/data/projects/content\u creator/image2text/im2text/bazel-bin/im2text/train.runfiles/im2text/im2text/train.py”,第155行,在
tf.app.run()
[从以前的回溯中删除了0条相同的行]
文件“/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py”,第44行,正在运行
_系统出口(主(系统argv[:1]+标志通过))
文件“/data/projects/content\u creator/image2text/im2text/bazel-bin/im2text/train.runfiles/im2text/im2text/train.py”,第89行,主文件
model.build()
文件“/data/projects/content_creator/image2text/im2text/im2text/show_and_tell_model.py”,第437行,内部版本
self.build_model()
文件“/data/projects/content_creator/image2text/im2text/im2text/show_and_tell_model.py”,第356行,在build_model中
范围=lstm\U范围)
文件“/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/rnn.py”,第546行,动态
dtype=dtype)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/ops/rnn.py”,第664行,在动态循环中
对于ta,在zip中输入(输入\ ta,平面\输入))
文件“/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/rnn.py”,第664行,在
对于ta,在zip中输入(输入\ ta,平面\输入))
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/ops/tensor_array_ops.py”,第380行,在unstack中
索引=数学运算范围(0,num元素),值=值,名称=名称)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/ops/tensor_array_ops.py”,第408行,分散显示
名称=名称)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/ops/gen_data_flow_ops.py”,第2492行,在tensor数组中
名称=名称)
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/framework/op_def_library.py”,第763行,在apply_op
op_def=op_def)
UnimplementderRor(回溯见上文):TensorArray的大小为零,但元素形状未完全定义。当前,打包零大小的TensorArray时只支持静态形状。
[[Node:OptimizeLoss/gradients/lstm/lstm/TensorararyScatter/TensorararyScatterv3_grad/TensorarayGatherv3=TensorarayGatherv3[\u class=[[loc:@lstm/lstm/Tensoraray_1],dtype=DT_FLOAT,element_shape=,\u device=“/job:localhost/replica:0/task:0/cpu:0”](优化损耗/梯度/lstm/lstm/TensoraryScatter/TensoraryScatterv3_grad/TensoraryGrad/TensoraryGradV3,lstm/lstm/TensoraryStack/range,优化损耗/梯度/lstm/TensoraryStack/TensoraryScatter/TensoraryScatterv3_grad/TensoraryGrad/Gradigrad/gradient_flow)]]
回溯(最近一次呼叫最后一次):
文件“/