具有幂迭代的特征向量

计算科学 线性代数 矩阵 本征系统 迭代法
2021-12-10 17:27:10

计算与对称矩阵的主要特征值相对应的特征向量ARn×n,一个使用Power Iteration,即,给定一些随机初始化,u1Rn, 一个迭代计算

u1Au1,
之后应用归一化u1. 现在,假设特征向量u1,u2是预先计算的,并且想要计算特征向量u3与第三个主要特征值相关。

万一最初u3正交于两者u1u2, 是否可以证明该系列

u3Au3
收敛于特征向量的方向A对应于第三个主要特征值。

请注意,这个问题的动机是观察到大多数计算更高特征向量的幂迭代实现在每次迭代中提供 Gram-Schmidt (GS) 正交归一化,即在每次迭代之后u3Au3, 应用正交化v1,v2. 如果正交性u3强加于其初始化(即从一开始),在每个矩阵向量乘法之后是否需要 GS?

3个回答

在精确的算术中,您不需要定期重新正交化,但实际上您会这样做。您的 u1 和 u2 接近(但不完全)真正的特征向量,因此您的初始通货紧缩几乎(但不完全)从 u3 中删除了真正的特征向量。您留下的微小分量将通过重复乘以 A 来放大,您将需要继续通过 gram-schmidt 减法来衰减它。

理论上,是的。在实践中,舍入误差通常会导致(最初很慢)收敛到u1.

可以以基本相同的成本运行 Lanczos 算法,该算法将具有更快的收敛速度,并产生三个主要特征值,除非其中两个特征值基本相同。对于 Lanczos 来说,选择性重正交化足以获得良好的结果。

是的。如果ARn×n是对称的,存在特征向量的正交基v1,,vn(按降幅排序)的A. 如果你扩展你的起始向量u3关于这个基础,你得到

u3=α1v1+α2v2++αnvn,
在哪里α1=α2=0因为u3正交于v1v2. 如果u3不正交于v3,您现在可以应用通常的参数来收敛幂方法(使用λ3v3代替λ1v1) 显示收敛到v3.

这仅在精确算术中是正确的;在浮点运算中,舍入误差会导致正交性的丧失,而正交化uk:=Aku3反对v1v2是必需的(尽管没有必要在每次迭代后都应用它)。