创建有序形状的整数张量(无,1)

时间:2017-06-30 15:44:11

标签: python tensorflow

给定一个大小为(None,1)的输入批处理,是否可以创建一个形状相同的有序整数张量?

前:

input = [3, 2, 3, 7], output = [0, 1, 2, 3]

前:

input = [9, 3, 12, 4, 34 .....], output = [0, 1, 2, 3, ....]

2 个答案:

答案 0 :(得分:1)

tf.range()执行您需要的操作,您只需根据输入张量的大小提供大小。因为人们已经告诉过你了,我会告诉你另一种方法。

关于那些载体的

tf.cumsum()

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)})