给定一个大小为(None,1)的输入批处理,是否可以创建一个形状相同的有序整数张量?
前:
input = [3, 2, 3, 7], output = [0, 1, 2, 3]
前:
input = [9, 3, 12, 4, 34 .....], output = [0, 1, 2, 3, ....]
答案 0 :(得分:1)
tf.range()
执行您需要的操作,您只需根据输入张量的大小提供大小。因为人们已经告诉过你了,我会告诉你另一种方法。
import tensorflow as tf
x = tf.placeholder(tf.int32, shape=(None))
y = tf.cumsum(tf.ones_like(x)) - 1
with tf.Session() as sess:
print sess.run(y, {x: [4, 3, 2, 6, 3]})
答案 1 :(得分:0)
你可以试试这个:
x = tf.placeholder(tf.float32, shape=(None, 1))
op = tf.range(tf.size(x))[:,tf.newaxis]
# test with different sizes
sess.run(op, {x: np.expand_dims(range(10), axis=-1)})
sess.run(op, {x: np.expand_dims(range(3), axis=-1)})