2016-11-08 2 views
0

tf.matrix_inverse() 메서드를 사용할 때 문제가 있습니다.TensorFlow : tf.matrix_inverse()의 모양 랭크 2

나는 치수 [17,400,400]의 텐서를 가지고 있습니다. 그리고 우리는 API 문서에서 읽을 수 있습니다 :

입력은 가장 안쪽 2 차원이 정사각형 행렬을 형성하는 [..., M, M] 텐서 모양입니다.

내 경우 M = 400입니다. 나는 17 역행렬 계산하려고 할 때 :

Out[56]: L 
Out[57]: <tf.Tensor 'while_4/Exit_1:0' shape=(17, 400, 400) dtype=float32> 
Out[59]: InvL = tf.matrix_inverse(L) 
     ValueError: Shape (17, 400, 400) must have rank 2 

을 나는 L은 모양 순위 2를 이해하지만 방법은 실패합니다. 내가 뭔가 잘못하고 있는지 나는 모른다. 어떤 도움이 필요합니까?

+0

최신 코드를 사용하고 있습니까? 최신 코드를 사용하면 효과적입니다. 'x = tf.convert_to_tensor (np.random.rand (17, 400, 400)); z = tf.matrix_inverse (x)'. 치수를 변경하면 '치수가 동일해야합니다.'라는 오류가 표시됩니다. – drpng

답변

1

참조하는 API 문서는 tensorflow 릴리스 r0.11 또는 마스터 버전에만 해당됩니다. documentation

출시 이전 r0.11에 대한
import tensorflow 
tensorflow.__version__ 

가 여기에 말한다 :

먼저 tensorflow 버전을 확인

tf.matrix_inverse doc for r0.10

이 순위에 반전 텐서를 지원하지 않습니다! = 2

update the tensorflow to r0.11을 시도하거나 github 마스터 브랜치에서 직접 가져 오기

+0

감사합니다. r0.10이 있습니다. –