2016-11-01 12 views
5
import tensorflow as tf 
x = [[1,2,3],[4,5,6]] 
y = [0,1] 
z = [1,2] 
x = tf.constant(x) 
y = tf.constant(y) 
z = tf.constant(z) 
m = x[y,z] 

は私がtheanoまたはnumpyのことで結果を得ることができますm = [2,6]tensorflowとValueError:Shapeがランク1でなければなりませんが、私は期待して何ランク2

です。 tensorflowを使って結果をどうやって得るのですか?あなたはtf.gather_nd

slices = tf.gather_nd(x, [y, z]) 

を使用したいと思う

+0

私はそれがテンソルフローの問題ではないと思う、イベントはPythonで動作しません。 xをリストと定義していれば、リストにアクセスすることはできません。 xをnumpy.array([[1,2,3]、[4,5,6]])として定義すると、それが動作します。 – Mquinteiro

+0

numpy配列と同じですが、私のコメントは間違っています。 – Mquinteiro

答えて

5

は、この情報がお役に立てば幸いです。

+0

ありがとうございます、私はtf.pack()とtf.gather_nd()を使用して結果を取得します。 –

+0

しかし、gather_ndのGradientのエラーは実装されていません。 T_T、とにかく他の、ありがとう –

関連する問題