CP.17正交矩阵与正交化

1.标准正交向量

前面讲过向量和矩阵的运算,提到过如果两个向量的乘积是0,那么这两个向量正交。除此之外,标准正交向量也是一个重要概念:设有一组向量 q 1 , q 2 , . . . , q n q_1,q_2,...,q_n q1,q2,...,qn,如果满足下列条件则称其为一组标准正交向量 q i T q j = 0 , i ≠ j 1 , j = j q_i^Tq_j=\begin{matrix}0,i\neq j\\1,j=j\end{matrix} qiTqj=0,i=j1,j=j
标准正交向量的长度都是1,并且两两相互正交。

2.标准正交矩阵

如果矩阵 Q Q Q的列是标准正交向量组,那么 Q T Q = I Q^TQ=I QTQ=I,如果恰好 Q Q Q是方阵,同时满足其列是标准正交向量组,那么称 Q Q Q为正交矩阵, Q T Q = I , Q − 1 Q = I , Q − 1 = Q T Q^TQ=I,Q^{-1}Q=I,Q^{-1}=Q^T QTQ=IQ1Q=I,Q1=QT
例如: Q = [ 0 0 1 1 0 0 0 1 0 ] , Q T = [ 0 1 0 0 0 1 1 0 0 ] Q=\begin{bmatrix}0&0&1\\1&0&0\\0&1&0\end{bmatrix},Q^T=\begin{bmatrix}0&1&0\\0&0&1\\1&0&0\end{bmatrix} Q= 010001100 QT= 001100010 这两者都是正交矩阵。 A = [ 1 1 1 − 1 ] A=\begin{bmatrix}1&1\\1&-1\end{bmatrix} A=[1111]不是正交矩阵,因为列向量的长度不是 1 1 1,将其前面除以 2 \sqrt{2} 2 就可以将其转化成正交矩阵:
A ’ = 1 2 [ 1 1 1 − 1 ] A^’=\frac{1}{\sqrt{2}}\begin{bmatrix}1&1\\1&-1\end{bmatrix} A=2 1[1111]再比如:
B = 1 3 [ 1 − 2 2 − 1 2 2 ] B=\frac{1}{3}\begin{bmatrix}1&-2\\2&-1\\2&2\end{bmatrix} B=31 122212 虽然列向量为标准正交向量,但因为它不是方阵,所以不称为正交矩阵,将其扩展成: B = 1 3 [ 1 − 2 2 2 − 1 − 2 2 2 1 ] B=\frac{1}{3}\begin{bmatrix}1&-2&2\\2&-1&-2\\2&2&1\end{bmatrix} B=31 122212221 就可以称之为正交阵了。

2.1标准正交矩阵的优势

前面讲过向量的投影,推出投影矩阵的表达式为: P m = A A T A T A = A ( A T A ) − 1 A T P_m=\frac{AA^T}{A^TA}=A(A^TA)^{-1}A^T Pm=ATAAAT=A(ATA)1AT,本式子是将某向量投射到 A A A的列空间的投影矩阵。如果矩阵 A A A是正交矩阵,那么运算会简单的多,因为 A T A = I A^TA=I ATA=I所以 P m = A A T P_m=AA^T Pm=AAT,进一步地 A A A是正交矩阵 A A T = I AA^T=I AAT=I,所以最终 P m = I P_m=I Pm=I
除此之外,还有前面讲过的无解矩阵求解最优解的问题: A T A x ^ = A T b A^TA\hat{x}=A^Tb ATAx^=ATb,最终演变成 x ^ = A T b \hat{x}=A^Tb x^=ATb

3.格拉姆-施密特正交化

加入有两个向量 a , b a,b a,b,如下图所示。我们希望从 b b b出发,找到一个向量能与 a a a形成标准正交,其步骤如下:
1.将向量单位化,这一步是施密特提出的(GS老师嘲讽施密特“真聪明”),具体来说就是 a 1 = a ∣ ∣ a ∣ ∣ , b 1 = b ∣ ∣ b ∣ ∣ a_1=\frac{a}{||a||},b_1=\frac{b}{||b||} a1=∣∣a∣∣ab1=∣∣b∣∣b
2.利用投影,找到原向量的有效分量(与 a a a正交的分量).令 b b b a a a方向投影,则投影向量 p = a T b a t a a p=\frac{a^Tb}{a^ta}a p=ataaTba,误差向量 e = b − a T b a t a a e=b-\frac{a^Tb}{a^ta}a e=bataaTba这个误差向量就是 b b b a a a正交的分量。
验证: e e e a a a正交, a T e = a T ( b − a T b a t a a ) = a T b − a T a T b a t a a = 0 a^Te=a^T(b-\frac{a^Tb}{a^ta}a)=a^Tb-a^T\frac{a^Tb}{a^ta}a=0 aTe=aT(bataaTba)=aTbaTataaTba=0
问题上面讲的是2个向量的正交化,如果有3个向量怎么办?
如果有三个向量那么 c c c的正交化就是用向量 c c c减去其在 a , b a,b a,b方向上的分量即可。
c 1 = c − a T c a T a a − b T c b T b b c_1=c-\frac{a^Tc}{a^Ta}a-\frac{b^Tc}{b^Tb}b c1=caTaaTcabTbbTcb
例:有向量 a = [ 1 1 1 ] , b = [ 1 0 2 ] a=\begin{bmatrix}1\\1\\1\end{bmatrix},b=\begin{bmatrix}1\\0\\2\end{bmatrix} a= 111 b= 102 求由他们演化而来的标准正交向量。
A = [ 1 1 1 ] , B = b − a T b a T a a = [ 1 0 2 ] − 3 3 [ 1 1 1 ] = [ 0 − 1 1 ] A=\begin{bmatrix}1\\1\\1\end{bmatrix},B=b-\frac{a^Tb}{a^Ta}a=\begin{bmatrix}1\\0\\2\end{bmatrix}-\frac{3}{3}\begin{bmatrix}1\\1\\1\end{bmatrix}=\begin{bmatrix}0\\-1\\1\end{bmatrix} A= 111 B=baTaaTba= 102 33 111 = 011
q 1 = A ∣ ∣ A ∣ ∣ = [ 1 3 1 3 1 3 ] , q 2 = B ∣ ∣ B ∣ ∣ = [ 0 − 1 2 − 1 2 ] q_1=\frac{A}{||A||}=\begin{bmatrix}\frac{1}{\sqrt{3}}\\\frac{1}{\sqrt{3}}\\\frac{1}{\sqrt{3}}\end{bmatrix},q_2=\frac{B}{||B||}=\begin{bmatrix}0\\-\frac{1}{\sqrt2}\\-\frac{1}{\sqrt2}\end{bmatrix} q1=∣∣A∣∣A= 3 13 13 1 q2=∣∣B∣∣B= 02 12 1
原列向量组成的矩阵为 W = [ 1 1 1 0 1 2 ] W=\begin{bmatrix}1&1\\1&0\\1&2\end{bmatrix} W= 111102 正交化后的向量组成的矩阵为
Q = [ 1 3 0 1 3 1 2 1 3 1 2 ] Q=\begin{bmatrix}\frac{1}{\sqrt{3}}&0\\\frac{1}{\sqrt{3}}&\frac{1}{\sqrt{2}}\\\frac{1}{\sqrt{3}}&\frac{1}{\sqrt{2}}\end{bmatrix} Q= 3 13 13 102 12 1
矩阵 W W W Q Q Q拥有相同的列空间,因为 Q Q Q的列空间本身就是由向量 a , b a,b a,b张成的

你可能感兴趣的:(代数基础,矩阵,线性代数)