当前位置:  开发笔记 > 编程语言 > 正文

tensorflow:ValueError:使用序列设置数组元素

如何解决《tensorflow:ValueError:使用序列设置数组元素》经验,为你挑选了1个好方法。

我正在玩这个问题的固定代码.我收到了上述错误.谷歌搜索表明它可能是某种尺寸不匹配,虽然我的诊断没有显示任何:

with tf.Session() as sess:
    sess.run(init)

    # Fit all training data
    for epoch in range(training_epochs):
        for (_x_, _y_) in getb(train_X, train_Y):
            print("y data raw", _y_.shape )
            _y_ = tf.reshape(_y_, [-1, 1])
            print( "y data ", _y_.get_shape().as_list())
            print("y place holder", yy.get_shape().as_list())

            print("x data", _x_.shape )            
            print("x place holder", xx.get_shape().as_list() )

            sess.run(optimizer, feed_dict={xx: _x_, yy: _y_})

看一下尺寸,一切都很好:

y data raw (20,)
y data  [20, 1]
y place holder [20, 1]

x data (20, 10)
x place holder [20, 10]

错误:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
     16             print("x place holder", xx.get_shape().as_list() )
     17 
---> 18             sess.run(optimizer, feed_dict={xx: _x_, yy: _y_})
     19 
     20 #         # Display logs per epoch step

/usr/local/lib/python3.4/dist-packages/tensorflow/python/client/session.py in run(self, fetches, feed_dict)
    355             e.args = (e.message,)
    356             raise e
--> 357           np_val = np.array(subfeed_val, dtype=subfeed_t.dtype.as_numpy_dtype)
    358           if subfeed_t.op.type == 'Placeholder':
    359             if not subfeed_t.get_shape().is_compatible_with(np_val.shape):

ValueError: setting an array element with a sequence.

任何调试技巧?



1> mrry..:

feed_dict参数中tf.Session.run()的一个值是一个tf.Tensor对象(在本例中是结果tf.reshape())时,会引发这个非常有用的错误.

feed_dict必须是numpy数组,或者是一些x可以使用隐式转换为numpy数组的值numpy.array(x).tf.Tensor对象不能被隐式转换,因为这样做可能需要大量工作:相反,你必须调用sess.run(t)将张量转换t为numpy数组.

正如你在答案中注意到的那样,使用了np.reshape(_y_, [-1, 1])作品,因为它产生了一个numpy数组(因为它_y_是一个刚开始的numpy数组).通常,您应该始终使用numpy和其他纯Python操作准备要提供的数据.

推荐阅读
郑小蒜9299_941611_G
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有