格拉姆-施密特方法是对 ℝⁿ 中任何非零子空间构造正交基或标准正交基的简单算法,本节前面两个例题顺便给出计算步骤.
假设 W = Span{x₁, x₂} ,其中 x₁ = 3 6 0 , x₂ = 1 2 2 。构造 W = Span{x₁, x₂} 的一个正交基。
解
子空间 W 如图 6-21 所示,沿着 x₁ , x₂ 和 x₂ 在 x₁ 上的投影 p。与 x₁ 正交的 x₂ 的分量是 x₂-p ,它属于 W,其原因是它由 x₂ 和 x₁ 的倍数相加得到。取 v₁=x₁ ,可得
boldsymbol v _ 2 = boldsymbol x _ 2 - boldsymbol p = boldsymbol x _ 2 - frac boldsymbol x _ 2 · boldsymbol x _ 1boldsymbol x _ 1 · boldsymbol x _ 1 · boldsymbol x _ 1 = [ l 1 2 2 ] - frac 1 54 5 [ l 3 6 0 ] = [ l 0 0 2 ]
那么 {±bv₁, ±bv₂} 是空间 W 的非零向量构成的正交集.由于 dim W = 2 ,可知集 {±bv₁, ±bv₂} 构成 W 的一个基.下面的例子详细说明了格拉姆-施密特方法,请仔细学习.
设 x₁ = 1 1 1 1 , x₂ = 0 1 1 1 , x₃ = 0 0 1 1.那么 {x₁, x₂, x₃} 显然线性无关,且构成 ℝ⁴ 的子空间
W 的一个基.试构造 W 的一个正交基.
解
步骤 1. 取 v₁=x₁ 和 W₁=Span{x₁}=Span{v₁} .
步骤2. 取 ±bv₂ 是 x₂ 减去它在子空间 W₁ 上的投影所得到的向量,即
r l & ±b v _ 2 = ±b x _ 2 - proj _ W _ 1 ±b x _ 2 & = ±b x _ 2 - frac ±b x _ 2 · ±b v _ 1±b v _ 1 · ±b v _ 1 ±b v _ 1 (text 因为 ±b v _ 1 = ±b x _ 1)= [ l 0 1 1 1 ] - frac 34 [ l 1 1 1 1 ] = [ c - 3 / 4 1 / 4 1 / 4 1 / 4 ]像例1 一样, v₂ 是 x₂ 正交于 x₁ 的分量,且 {v₁, v₂} 是由 x₁ 和 x₂ 所生成的子空间 W₂ 的一个正交基。步骤 2’(可选的)。如果合适,缩放 v₂ 以简化后面的计算。由于 v₂ 具有分数元素,很方便用因子 4 重新度量向量 v₂ ,用下面两个正交基代替 {v₁, v₂} :
boldsymbol v _ 1 = [ l 1 1 1 1 ], boldsymbol v _ 2 ^ prime = [ c - 3 1 1 1 ]步骤3. 取 ±bv₃ 是 ±bx₃ 减去它在子空间 W₂ 上的投影所得到的向量.先利用正交基 {±bv₁,±bv₂^(prime)} 计算 ±bx₃ 在 W₂ 上的投影:
r l & mathbf x _ 3 text 在 ν_ 1 text 上 & text 的投影 & downarrow & proj _ W _ 2 mathbf x _ 3 = frac mathbf x _ 3 · mathbf v _ 1mathbf v _ 1 · mathbf v _ 1 mathbf v _ 1 + frac mathbf x _ 3 · mathbf v _ 2 ^ primemathbf v _ 2 ^ prime · mathbf v _ 2 ^ prime mathbf v _ 2 ^ prime & = frac 24 [ l 1 1 1 1 ] + frac 21 2 [ l - 3 1 1 1 ] = [ l 0 2 / 3 2 / 3 2 / 3 ]那么 v₃ 是 x₃ 正交于 W₂ 的分量,具体为
boldsymbol v _ 3 = boldsymbol x _ 3 - operatornameproj _ W _ 2 boldsymbol x _ 3 = [ l 0 0 1 1 ] - [ l 0 2 / 3 2 / 3 2 / 3 ] = [ l 0 - 2 / 3 1 / 3 1 / 3 ]从图 6-22 可以看到构造的图解.观察可得 v₃ 属于 W,原因是 x₃ 和 proj_(w₂)x₃ 都属于 W.从而 {v₁,v₂^(prime),v₃} 是 W 中非零向量构成的正交集(因而是线性无关集). W 是三维空间,这是因为它的基又包含三个向量,所以由 4.5 节的基定理可知, {v₁,v₂^(prime),v₃} 是 W 的正交基.
下面定理的证明说明这种方法确实有效.向量缩放的步骤没有涉及,原因是缩放只对手工计算作简化.
对 Rⁿ 的子空间 W 的一个基 {x₁,…,xₚ} ,定义
l boldsymbol v _ 1 = boldsymbol x _ 1 boldsymbol v _ 2 = boldsymbol x _ 2 - frac boldsymbol x _ 2 · boldsymbol v _ 1boldsymbol v _ 1 · boldsymbol v _ 1 boldsymbol v _ 1 boldsymbol v _ 3 = boldsymbol x _ 3 - frac boldsymbol x _ 3 · boldsymbol v _ 1boldsymbol v _ 1 · boldsymbol v _ 1 boldsymbol v _ 1 - frac boldsymbol x _ 3 · boldsymbol v _ 2boldsymbol v _ 2 · boldsymbol v _ 2 boldsymbol v _ 2 vdots boldsymbol v _ p = boldsymbol x _ p - frac boldsymbol x _ p · boldsymbol v _ 1boldsymbol v _ 1 · boldsymbol v _ 1 boldsymbol v _ 1 - frac boldsymbol x _ p · boldsymbol v _ 2boldsymbol v _ 2 · boldsymbol v _ 2 boldsymbol v _ 2 - … - frac boldsymbol x _ p · boldsymbol v _ p - 1boldsymbol v _ p - 1 · boldsymbol v _ p - 1 boldsymbol v _ p - 1那么 {v₁,…,vₚ} 是 W 的一个正交基.此外,
Span {±b v _ 1, … , ±b v _ k } = Span {±b x _ 1, … , ±b x _ k }, text 其中 1 ≤slant k ≤slant p (1)证明
对 1 ≤slant k ≤slant p ,取 Wₖ = Span{x₁, …, xₖ} 。令 v₁ = x₁ ,则有 Span{v₁} = Span{x₁} 。假若对 k < p ,我们已经构造 v₁, …, vₖ ,使得 {v₁, …, vₖ} 是 Wₖ 的一个正交基。定义
boldsymbol v _ k + 1 = boldsymbol x _ k + 1 - operatornameproj _ W _ k boldsymbol x _ k + 1 (2)由正交分解定理知, vₖ+1 正交于 Wₖ 。注意向量 proj_(Wₖ)xₖ+1 属于 Wₖ ,因而也属于 Wₖ+1 。由于 xₖ+1 属于 Wₖ+1 ,从而 vₖ+1 也属于 Wₖ+1 (因为 Wₖ+1 是子空间,且减法封闭)。更进一步,由于 xₖ+1 不属于 Wₖ=operatornameSpan{x₁,…,xₖ} ,故 vₖ+1≠0 。因而 {v₁,…,vₖ+1} 是 (k+1) 维空间 Wₖ+1 中非零向量形成的正交集。由 4.5 节的基定理可知,这个集合是 Wₖ+1 的正交基。从而 Wₖ+1=operatornameSpan{v₁,…,vₖ+1} ,当 k+1=p 时成立,归纳证明过程结束。
定理11 说明任何 Rⁿ 中的非零子空间 W 有一个正交基,这是因为普通的基 总是存在的(由 4.5 节中定理11),而格拉姆-施密特方法仅依赖于在有正交基的子空间 总是存在的(由 4.5 节中定理 11),而格拉姆-施密特方法仅依赖于在有正交基的子空间 W 上的正交投影的存在性.
一个标准正交基很容易从一个正交基 {v₁,…,vₚ} 得到:只需单位化所有 vₖ 。当问题用手工计算时,它比一开始找到 vₖ 就将其单位化更容易(因为可避免不必要的平方根运算)。
在例1中,我们构造正交集
boldsymbol v _ 1 = [ l 3 6 0 ], boldsymbol v _ 2 = [ l 0 0 2 ]一个正交基是
boldsymbol u _ 1 = frac 1| boldsymbol v _ 1 | boldsymbol v _ 1 = frac 1sqrt 4 5 [ l 3 6 0 ] = [ c 1 / sqrt 5 2 / sqrt 5 0 ]±b u _ 2 = frac 1| ±b v _ 2 | ±b v _ 2 = [ l 0 0 1 ]矩阵的QR分解
Section titled “矩阵的QR分解”如果 m × n 矩阵 A 的列 x₁, …, xₙ 线性无关,那么应用格拉姆-施密特方法(包含单位化)于 x₁, …, xₙ 等同于按下面定理描述的方法分解 A。这种分解方法广泛应用在各种计算机算法中,如解方程(6.5 节讨论)和求特征值(5.2 节的习题中提到)。
如果 m × n 矩阵 A 的列线性无关,那么 A 可以分解为 A = QR,其中 Q 是一个 m × n 矩阵,其列形成 operatornameCol A 的一个标准正交基,R 是一个 n × n 上三角可逆矩阵且在对角线上的元素为正数.
证明
A 的列向量形成 operatornameCol A 的一个基 {x₁,…,xₙ} 。构造 W=Col A 的一个标准正交基 {u₁,…,uₙ} ,且具有定理11 中的性质(1)。这个基的构造可由格拉姆-施密特方法或其他方法完成。取
Q = [ l l l l boldsymbol u _ 1 & boldsymbol u _ 2 & … & boldsymbol u _ n ]对 k=1,…,n , xₖ 属于 operatornameSpan{x₁,…,xₖ}=operatornameSpan{u₁,…,uₖ} 。所以存在常数 r₁k,…,rₖk ,使得
boldsymbol x _ k = r _ 1 k boldsymbol u _ 1 + … + r _ k k boldsymbol u _ k + 0 · boldsymbol u _ k + 1 + … + 0 · boldsymbol u _ n我们可以假设 rₖk ≥slant 0 (如果 rₖk < 0 ,对 rₖk 和 ±buₖ 都乘-1),这表明 ±bxₖ 是 Q 的列的线性组合,且权是下面向量中的元素:
boldsymbol r _ k = [ c r _ 1 k vdots r _ k k 0 vdots 0 ]即 xₖ=Qrₖ ,其中 k=1,…,n 。取 R=[r₁… rₙ] 。那么
A = [ boldsymbol x _ 1 … boldsymbol x _ n ] = [ Q boldsymbol r _ 1 … Q boldsymbol r _ n ] = Q RR 可逆的结论可从下面 Col A 线性无关的事实立刻得到(习题 19)。因为 R 是上三角形矩阵,故它的非负对角元素必为正值。
求 A = 1 & 0 & 0 1 & 1 & 0 1 & 1 & 1 1 & 1 & 1 的一个QR分解.
解
A 的列向量为例2中的 ±bx₁, ±bx₂, ±bx₃ 的一个正交基在例2中得到:operatornameCol A = operatornameSpan{±bx₁, ±bx₂, ±bx₃} 的一个正交基在例2中得到:
boldsymbol v _ 1 = [ l 1 1 1 1 ], boldsymbol v _ 2 ^ prime = [ c - 3 1 1 1 ], boldsymbol v _ 3 = [ c 0 - 2 / 3 1 / 3 1 / 3 ]重新度量 v₃ ,取 v₃^(prime)=3v₃ ,那么将 v₁,v₂,v₃ 三个向量单位化得到 u₁,u₂,u₃ ,且用这些向量组成 Q 的列.
Q = [ c c c 1 / 2 & - 3 / sqrt 1 2 & 0 1 / 2 & 1 / sqrt 1 2 & - 2 / sqrt 6 1 / 2 & 1 / sqrt 1 2 & 1 / sqrt 6 1 / 2 & 1 / sqrt 1 2 & 1 / sqrt 6 ]由 Q 的构造可知,Q 的前 k 列是 operatornameSpan{x₁,…,xₖ} 的一个标准正交基。从定理12 的证明可知,对某些 R 有 A=QR。为找到 R,注意到 Q^(T)Q=I ,这是因为 Q 的列是单位正交向量。所以
Q ^ T A = Q ^ T (Q R) = I R = R且
R = [ c c c c 1 / 2 & 1 / 2 & 1 / 2 & 1 / 2 - 3 / sqrt 1 2 & 1 / sqrt 1 2 & 1 / sqrt 1 2 & 1 / sqrt 1 2 0 & - 2 / sqrt 6 & 1 / sqrt 6 & 1 / sqrt 6 ] [ l l l 1 & 0 & 0 1 & 1 & 0 1 & 1 & 1 1 & 1 & 1 ] = [ c c c 2 & 3 / 2 & 1 0 & 3 / sqrt 1 2 & 2 / sqrt 1 2 0 & 0 & 2 / sqrt 6 ]数值计算的注解
Section titled “数值计算的注解”-
当格拉姆-施密特方法用计算机实现时,在 uₖ 的计算中,每个向量由四舍五入引起的误差逐渐增大。对较大但不相等的 j 和 k ,内积 uⱼ^T uₖ 可能不充分接近于零。通过重新安排计算的阶,这类正交性的损失可以大量减少。然而,基于计算机的 QR 分解常指这类标准化的格拉姆-施密特方法,这是因为它会产生更精确的标准正交基,即使分解需要双倍的算术计算。
-
为了得到一个矩阵 A 的QR分解,计算机程序常常对 A 左乘一系列正交矩阵使结果变成一个上三角形矩阵.这个构造过程类似于 A 左乘一系列初等矩阵,最后得到 A 的LU分解.
-
设 W = operatornameSpan{±bx₁, ±bx₂} ,其中 ±bx₁ = 1 1 1 和 ±bx₂ = 1/3 1/3 -2/3 ,构造 W 的一个标准正交基.
-
假定 A = QR ,其中 Q 是一个具有正交列向量的 m × n 矩阵, R 是 n × n 矩阵。证明:如果 A 的列向量是线性相关的,则 R 不是可逆矩阵。
在习题 1~6 中,给出的集合是子空间 W 的一个基,利用格拉姆-施密特方法构造 W 的正交基.
-
求习题 3 中向量所生成的子空间的一个标准正交基.
-
求习题 4 中向量所生成的子空间的一个标准正交基.
在习题 9~12 中,求每个矩阵列空间的正交基.
在习题 13~14 中,矩阵 Q 的列是格拉姆-施密特方法应用于矩阵 A 的列而得到的,求上三角形矩阵 R,使得 A=QR,并检查你的结果.
-
求习题 11 中矩阵的 QR 分解.
-
求习题 12 中矩阵的 QR 分解.
习题 17~18 中的所有向量和子空间都属于 Rⁿ ,判断每一个结论是正确还是错误,验证你的结论.
- a.如果 {±bv₁, ±bv₂, ±bv₃} 是 W 的正交基,那么用因子 c 去乘 ±bv₃ 可得一个新的正交基 {±bv₁, ±bv₂, c±bv₃} .
b.格拉姆-施密特方法将一个线性无关的集合 {x₁,…,xₚ} 转化为一个正交集 {v₁,…,vₚ} ,且具有如下性质:对每一个 k,向量 v₁,…,vₖ 生成的子空间与向量 x₁,…,xₖ 生成的子空间一致.
c.如果 A=QR,其中 Q 具有单位正交列,那么 R=Q^(T)A .
- a.如果 W = Span{x₁, x₂, x₃} ,且 {x₁, x₂, x₃} 线性无关,如果 {ν₁, ν₂, ν₃} 是 W 的一个正交集,那么 {ν₁, ν₂, ν₃} 是 W 的一个基.
b.如果 x 不属于子空间 W,那么 x - proj_(w)x 不是零向量.
c.在一个 QR 分解中,例如 A=QR(A 有线性无关列),Q 的列构成 A 的列子空间的标准正交基.
-
假设 A = QR,其中 Q 是 m × n 矩阵,R 是 n × n 矩阵。证明:如果 A 的列线性无关,那么 R 一定可逆(提示:研究方程 Rx = 0 且利用 A = QR 的事实)。
-
假设 A = QR ,其中 R 是一个可逆矩阵,证明 A 和 Q 具有相同的列空间。(提示:给定属于 operatornameCol A 的 y ,存在 x 使得 y = Qx 。此外,对给定的 y ∈ operatornameCol Q ,存在 x 使得 y = Ax 。)
-
如定理12 中 A=QR,描述如何找到一个正交 m × m (方)矩阵 Q₁ 和一个可逆 n × n 上三角形矩阵 R,使得
当 rank A = n 时, MATLAB 中的 qr 命令给出一个 “完全” QR 分解.
- 设 u₁, …, uₚ 是 Rⁿ 的子空间 W 的一个正交基,
T:ℝⁿarrowℝⁿ 定义为 T(x)=operatornameproj_(W)x ,证明 T 是一个线性变换.
-
设 A = QR 是 m × n 矩阵 A (含有线性无关列)的一个QR分解。把 A 划分成 [A₁, A₂] ,其中 A₁ 有 p 列。说明如何获得 A₁ 的一个QR分解,并解释为什么这样的分解具有如此性质。
-
[M]像例2 那样利用格拉姆-施密特方法构造下面矩阵 A 的列空间的正交基.
- [M]利用本节中的方法给出习题 24 中矩阵 A
的一个 QR 分解.
- [M]对矩阵程序,格拉姆-施密特方法比单位正交向量更有效.从定理11 中的 x₁, …, x_(P) 开始,取 A = [x₁ … xₚ].若 n × k 矩阵 Q 的列构成矩阵 A 的前 k 列所生成的子空间 Wₖ 的一个标准正交基,那么对于 ℝⁿ 中的向量 x , QQ^(T)x 是 x 上的正交投影 (6.3 节定理10). 如果 Wₖ 的下一列,则定理11 证明中的方程 (2) 变成xₖ+1 是 A 的下一列,则定理 11 证明中的方程 (2) 变成
(上面的括号可以减少算术运算.)取 uₖ+1 = vₖ+1 / |vₖ+1| ,下一个步骤中的新 Q 是 [Q uₖ+1] 。利用这个步骤,计算习题 24 中矩阵的 QR 分解,写出你所用的键击内容或命令。
- 设 v₁=x₁=1 1 1 和 v₂=x₂-fracx₂· v₁v₁· v₁v₁=x₂-0· v₁=x₂ ,这样 {x₁,x₂} 是正交向量,接下来需要将向量单位化。设
单位化 v₂^(prime)=3v₂ 代替直接单位化 v₂ :
boldsymbol u _ 2 = frac 1| boldsymbol v _ 2 ^ prime | boldsymbol v _ 2 ^ prime = frac 1sqrt 1 ^ 2 + 1 ^ 2 + (- 2) ^ 2 [ l 1 1 - 2 ] = [ l 1 / sqrt 6 1 / sqrt 6 - 2 / sqrt 6 ]这样 {u₁, u₂} 就是 W 的标准正交基.
- 由于 A 的列向量是线性相关的,故存在一个非平凡向量 ±bx ,使得 Ax = 0 ,从而 QRx = 0 。运用6.2节的定理7,有 |Rx| = |QRx| = |0| 。但 |Rx| = 0 ,这可由6.1节的定理1得到。因此存在一个非平凡向量 Rx = 0 ,这可由6.1节的定理1得到。因此存在一个非平凡向量 ±bx ,使得 Rx = 0 ,于是由可逆矩阵定理知 R 不是可逆的。