2017-10-13 8 views
0

私は、[Batch_Size, T, 40]の形をした時系列(テンソルとして表される)を持っています。今度は、タイムステップ0から始まり、2,4、...に伸びるシーケンス内の他のすべてのベクトルを抽出して、サイズが[Batch_Size, T/2, 40]になるようにしたいと思います。Tensorflow:他のすべての要素を抽出する

TensorFlowでこれを行う最も効率的/最速の方法は何ですか? Tは修正されており、それが役立つことがわかっています。

ありがとうございます!

答えて

1

使用スライス表記し、抽出する必要がある第2の軸上の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]]] 
関連する問題