对经历连续变化同时保持相同维度的矩阵进行奇异值分解 (SVD) 的快速计算

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

如果我们已经知道 A(t) 的 SVD,是否有办法在时间 t + delta(t) 时有效地更新时变矩阵 A(t) 的奇异值分解 (SVD)?假设两个时间步长之间的矩阵变化很小。

我正在寻找一种根据矩阵中的微小变化有效更新现有 SVD 的方法,而不是在每个时间步完全重新计算 SVD。

math linear-algebra svd
1个回答
0
投票

不。您可以将 SVD 视为沿数据方差最大的轴进行旋转。您可能认为 A 中的小增量只会轻微影响方差,并对分解产生轻微影响。但一些小的改变可能会产生一组完全不同的向量。它们仍然会跨越一个非常相似的空间,但向量会完全不同,这样“第五特征向量”就与 A(t) 处的特征向量非常不同。

您可能试图在实时控制过程中节省计算量。您是否考虑过保持特征向量不变,或者每第 100 个时间步更新它们,并简单地将数据 A(t+1) 的投影更新到先前的基组上?不确定这是否与您的应用程序相关。祝你好运!

© www.soinside.com 2019 - 2024. All rights reserved.