【问题标题】:avoiding full singular value decomposition of matrix避免矩阵的全奇异值分解
【发布时间】:2020-04-10 22:58:03
【问题描述】:

我需要用相应的左右特征向量计算矩阵的第一个奇异值。 Python中有没有办法避免计算矩阵的完整奇异值分解以提取其最大奇异值?

【问题讨论】:

标签: python svd


【解决方案1】:

我不太确定我是否理解您想要获得的内容。您的意思是以下之一吗?

1) 如果您想要简单地提取矩阵产品的第一个值,这对我有用:

Ua,Sa,Va=np.linalg.svd(A) #Changing A for your matrix.

U=Ua[1,0]
S=Sa[0]
V=Va[1,0]

2)另一方面,如果您打算在找到最大奇异值后暂停 SVD,我认为这是不可能的,因为奇异值分解是三个的乘积矩阵,即使您正在寻找的是最高奇异值,SVD 也必须完全运行才能获得它。 另外,SV 对角矩阵的第一个元素不一定是第一个被计算的元素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-27
    • 1970-01-01
    相关资源
    最近更新 更多