使用零展开Tensorflow和space元素中的Vector

时间:2017-02-22 12:31:56

标签: vector tensorflow expand

我想将彼此的矢量元素空间化并用零填充:

  a = [1, 5, 7, ..., 3]

带有两个零的空格元素:

  b = [1, 0, 0, 5, 0, 0, 7, 0, 0, ... , 3, 0, 0]

我将元素分隔的零数应该是灵活的。

在Tensorflow中的Graph上执行此操作的最佳方法是什么?

1 个答案:

答案 0 :(得分:2)

你能按照in this post解释(接受答案的第二个例子)吗?

基本上我首先创建b作为零向量,然后为b中的所有值计算指向a的索引,然后使用链接帖子中的代码将a的值分配给这些索引。

这样的事情可能是:

a = tf.constant(np.array([1, 3, 5, 7]))
dim = a.get_shape()[0].value
n = 2
b = tf.fill(dims=[dim*(n+1)], value=0.0)
new_indices = np.array([i + i*n for i in range(0, dim)])
# now call referenced code with new_indices to update `b`

我不确定这本身是最好的方法,但它可以完成工作。