我有一个形状为g
的矩阵[4, 4, 2, 2]
,在这里我需要找到均为g[0, 0]
矩阵的g[1, 1]
,g[2, 2]
,g[3, 3]
和2x2
的等级。我使用了tf.rank
运算符,但将g
视为单个数组并计算等级,并为整个矩阵返回单个值。我需要的是相应2x2
的等级的g[i, j]
矩阵。以下是MWE:
import tensorflow as tf
a = tf.ones((4, 4, 2, 2))
rank = tf.rank(a) # Returns a number
除了使用for
循环外,还有什么方法可以获取此秩矩阵?谢谢。
我认为TensorFlow中没有任何函数可以计算矩阵等级。一种可能性是使用tf.linalg.svd
并计算非零奇异值的数量:
tf.linalg.svd