在Tensorflow中查找子矩阵的等级

问题描述 投票:2回答:1

我有一个形状为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循环外,还有什么方法可以获取此秩矩阵?谢谢。

python tensorflow machine-learning deep-learning rank
1个回答
0
投票

我认为TensorFlow中没有任何函数可以计算矩阵等级。一种可能性是使用tf.linalg.svd并计算非零奇异值的数量:

tf.linalg.svd
© www.soinside.com 2019 - 2024. All rights reserved.