0
我有一个时间序列(表示为张量),形状为[Batch_Size, T, 40]
。现在,我想从时间步0开始的序列中提取其他所有矢量,并且扩展到2,4,...,从而产生大小为[Batch_Size, T/2, 40]
的东西。Tensorflow:提取每个其他元素
什么是TensorFlow中最有效/最快速的方法?请注意,T
是固定的,如果有帮助的话是已知的。
在此先感谢!
我有一个时间序列(表示为张量),形状为[Batch_Size, T, 40]
。现在,我想从时间步0开始的序列中提取其他所有矢量,并且扩展到2,4,...,从而产生大小为[Batch_Size, T/2, 40]
的东西。Tensorflow:提取每个其他元素
什么是TensorFlow中最有效/最快速的方法?请注意,T
是固定的,如果有帮助的话是已知的。
在此先感谢!
使用切片符号和指定的2对你需要提取所述第二轴线的步骤/样品:
t[:,::2]
例:
import tensorflow as tf
t = tf.reshape(tf.range(24), (2,6,2))
sess = tf.Session()
print('original: \n', sess.run(t), '\n')
print('every other: \n', sess.run(t[:,::2]))
original:
[[[ 0 1]
[ 2 3]
[ 4 5]
[ 6 7]
[ 8 9]
[10 11]]
[[12 13]
[14 15]
[16 17]
[18 19]
[20 21]
[22 23]]]
every other:
[[[ 0 1]
[ 4 5]
[ 8 9]]
[[12 13]
[16 17]
[20 21]]]