Skip to content

算法Algorithm

Gram–Schmidt 正交化

Gram–Schmidt process

把有限线性无关组逐步转化为张成同一子空间的正交规范组。

形式陈述 ​

设 v1,…,vk 是内积空间中的线性无关向量。先令

w1=v1,u1=w1‖w1‖,

再对 j=2,…,k 递归定义

wj=vj−∑i<j⟨ui,vj⟩ui,uj=wj‖wj‖.

这里采用本页第一变量共轭线性、第二变量线性的约定,因此 ⟨ui,vj⟩ui 正是 vj 到方向 ui 的正交投影。所得 (u1,…,uk) 是正交规范组,并且对每个 j 都有

span(u1,…,uj)=span(v1,…,vj).

对 i<j,将残差与 ui 配对,正交性给出 ⟨ui,wj⟩=⟨ui,vj⟩−⟨ui,vj⟩=0。若 wj=0,则 vj 已由前面的 ui、也就是前面的 vi 张成,与线性无关矛盾。因此每一步都得到非零正交残差,可以归一化。

直觉

每一步都把新向量拆成两部分:一部分已经能由旧方向解释,另一部分是旧子空间从未见过的新方向。把前者逐项减去便得到残差 wj;它与所有旧的 ui 正交,归一化后成为新的单位坐标轴。这个过程只删除重复方向,没有删除新信息,所以每一步的张成空间都保持不变。

Gram–Schmidt 的投影消去
例子与边界

由 v1=(1,1)、v2=(1,0) 出发,先得到

w1=(1,1),u1=(1,1)2.

第二步为

w2=v2−⟨u1,v2⟩u1=(1,0)−12(1,1)2=(12,−12),

所以 u2=(1,−1)/2。若输入中含有依赖向量,则相应残差为零:该向量已在先前的张成空间内。跳过零残差、继续处理后续向量,仍可为全部输入的张成空间提取正交规范基。

上述递推是经典 Gram–Schmidt:先用原向量 vj 算出全部投影系数,再一起减去。浮点运算中,相近向量相减会放大相对误差,使残差偏离精确的正交方向。改进 Gram–Schmidt 则令 r=vj,每次用当前残差计算 ⟨ui,r⟩ 并立即更新 r;这种逐次消去通常更能保持正交性。稠密矩阵的数值分解还常用Householder 反射构造QR 分解。

推论与应用

该过程为线性无关组的张成空间构造正交规范基。把 k 个输入向量排成 A∈Fm×k 的列,输出排成 Q∈Fm×k 的列,就有 A=QR。这里 R∈Fk×k 为上三角矩阵:第 j 列的上方条目是投影系数 ⟨ui,vj⟩,对角条目是残差长度 ‖wj‖,下方条目为零。

在满列秩的最小二乘问题中,把 b 投影到 Q 的列空间后,求解上三角方程 Rx=Q∗b 即可得到最优系数。这条QR 计算路线直接使用正交坐标,保留了投影的几何结构。

对 1,x,x2,… 按积分内积依次正交化,则得到正交多项式:第 j 步减去低次多项式方向,保留一个与它们全部正交的新多项式。

参考资料
关系图谱10 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系