【发布时间】:2017-10-31 00:37:26
【问题描述】:
我有一个非常稀疏的数据集,由于内存限制,我不得不以稀疏的方式表示它们。因此,我正在考虑使用tf.sparse_placeholder 和tf.SparseTensorValue。
我需要传递给计算图,不止一个tf.SparseTensorValue。但是,我收到以下错误:
ValueError: setting an array element with a sequence.
这是重现上述意图和错误的最小代码 sn-p。
import tensorflow as tf
import numpy as np
x = tf.sparse_placeholder(tf.float32)
y = tf.sparse_reduce_sum(x)
with tf.Session() as sess:
indices = np.array([[3, 2, 0], [4, 5, 1]], dtype=np.int64)
values = np.array([1.0, 2.0], dtype=np.float32)
shape = np.array([7, 9, 2], dtype=np.int64)
xs = list()
xs.append(tf.SparseTensorValue(indices, values, shape))
xs.append(tf.SparseTensorValue(indices, values, shape))
print(sess.run(y, feed_dict={x: xs }))
【问题讨论】: