2017-02-20 38 views
0

我想計算以下事項中張量的子集: 我有張量T和張量指數I。我想獲得一個張C使得:另一個張量維數的大小範圍

C[i] = T[i, I[i]] 

要做到這一點,我想我會做:

first_dim = I.get_shape()[0] 
R = tf.range(first_dim) 
S = tf.stack([R, I], 1) 
tf.gather(T, S) 

但我在第二行的一個問題:

ValueError: Cannot convert an unknown Dimension to a Tensor: ? 

I的形狀取決於某個佔位符的大小。有沒有不同的方法來解決我的問題或獲得另一個張量維度的大小範圍,這在TF-圖編譯時不知道?

回答

0

使用tf.shape而不是get_shape

+0

試過了,它仍然說這個第一維是未定義的。 – sygi

相關問題