【发布时间】:2016-07-19 14:21:37
【问题描述】:
tf.scatter_add 适用于 1d(形状 1)张量:
> S = tf.Variable(tf.constant([1,2,3,4]))
> sess.run(tf.initialize_all_variables())
> sess.run(tf.scatter_add(S, [0], [10]))
array([11, 2, 3, 4], dtype=int32)
> sess.run(tf.scatter_add(S, [0, 1], [10, 100]))
array([ 21, 102, 3, 4], dtype=int32)
但是我怎样才能增加,比如说
的 [0,0] 元素M = tf.Variable(tf.constant([[1,2], [3,4]]))
使其成为 [[2, 2], [3, 4]] 使用 tf.scatter_add?
official documentation 有点神秘。我尝试了不同的 arg 值,比如
> sess.run(tf.scatter_add(M, [[0, 0]], [1]))
*** ValueError: Shapes (1,) and (1, 2, 2) are not compatible
并没有成功。
顺便说一句,在我的情况下,M 非常大并且可以动态调整大小。 因此,将等于 1 个元素的矩阵添加到 M 中的情况并非如此。
【问题讨论】:
标签: python tensorflow