线性代数系列(十一)--正交矩阵和正交化
主要内容
主要内容
- 标准正交基
- 正交矩阵
- 施密特正交化法
正文
标准正交基
先从字面意义上解读一下,然后再给出几个示例。正交意味着垂直,所以正交基就是说这一个基中的所有向量都是垂直的。而标准意味着,这组基中的向量都是单位向量,长度都为1。所以标准正交基实际上就是一个标准正交向量组。例如: [ 1 0 0 ] [ 0 1 0 ] [ 0 0 1 ] \begin{bmatrix}1\\0\\0\end{bmatrix}\begin{bmatrix}0\\1\\0\end{bmatrix}\begin{bmatrix}0\\0\\1\end{bmatrix} ⎣⎡100⎦⎤⎣⎡010⎦⎤⎣⎡001⎦⎤ [ c o s θ s i n θ ] [ − s i n θ c o s θ ] \begin{bmatrix}cos\theta\\sin\theta\end{bmatrix}\begin{bmatrix}-sin\theta\\cos\theta\end{bmatrix} [cosθsinθ][−sinθcosθ] 使用数学公式表达这个定义为: q i T q j = { 0 i f i ≠ j 1 i f i = j q^T_iq_j=\begin{cases}0\qquad if&i\ne j \\1\qquad if&i=j\end{cases} qiTqj={0if1ifi̸=ji=j
正交矩阵
实际上正交矩阵是一个简称,它的全称是标准正交方阵,它要求矩阵不仅是标准正交矩阵还得是方阵。
像上面的那个例子,我们将三个标准正交向量也就是一个标准正交向量组放到一个矩阵中,在这个矩阵中,每两列都是正交的,并且每列的长度都是 1 1 1,该矩阵显然是一个方阵,所以这个矩阵就是一个正交矩阵。如下: [ 1 0 0 0 1 0 0 0 1 ] \begin{bmatrix}1&0&0\\0&1&0\\0&0&1\end{bmatrix} ⎣⎡100010001⎦⎤现在我们将这个矩阵记为 Q Q Q,他是由一组标准正交基 q q q组成的: Q = [ : : q 1 q n : : ] Q=\begin{bmatrix}:&&:\\q_1&&q_n\\:&&:\end{bmatrix} Q=⎣⎡:q1::qn:⎦⎤我们可以发现 Q T Q = I Q^TQ=I QTQ=I。这里就不给出证明了。由 Q − 1 Q = I Q^{-1}Q=I Q−1Q=I,再结合前面的式子我们可以知道 Q − 1 = Q T Q^{-1}=Q^T Q−1=QT,这是正交矩阵特有的性质。
作用: 不知道正交矩阵是在研究投影的过程中产生的还是在什么时候产生的,但是它方便了投影上的计算。最重要的地方在于正交矩阵具有一个特殊的性质 Q T Q = I Q^TQ=I QTQ=I,这个性质对于所有的 Q Q Q都是成立的,而不限制 Q Q Q是否是方阵或者是长方形矩阵。对于 A x = b Ax=b Ax=b,我们知道,投影矩阵为 P = A ( A T A ) − 1 A T P=A(A^TA)^{-1}A^T P=A(ATA)−1AT我们通过标准正交化,将 A A A化成 Q Q Q之后,再使用这个公式: P = Q ( Q T Q ) − 1 Q T = Q Q T P=Q(Q^TQ)^{-1}Q^T=QQ^T P=Q(QTQ)−1QT=QQT也就是说,正交矩阵简化了这个运算,使用正交矩阵计算投影矩阵的时候,我们会发现不用再求逆,而求逆是非常耗费计算量的,所以它应该是大大的减少了计算量。对于方阵而言, 我们可以得到 Q Q T = I QQ^T=I QQT=I,即 P = I P=I P=I。这是代数上的表示,在几何上分析可以发现:一个正交的方阵,也就是矩阵的所有列都是线性无关的,它的列空间就是整个空间。空间中的某个向量在向列空间上投影时,就是在向整个空间投影,得到的仍然是原来的位置。这就是 P = I P=I P=I的原因。 x ^ = ( A T A ) − 1 A T b \hat{x}=(A^TA)^{-1}A^Tb x^=(ATA)−1ATb 现在 A A A化成了 Q Q Q,所以我们有下面的式子: x ^ = ( Q T Q ) − 1 Q T b = Q T b \hat{x}=(Q^TQ)^{-1}Q^Tb=Q^Tb x^=(QTQ)−1QTb=QTb
施密特正交化法
正交矩阵简化了投影运算,于是如何将 A A A转变成 Q Q Q就成了问题,这就要用到Gram-Schmidt正交化法。
先分析一下简单的情况:两个线性无关的向量
a
a
a,
b
b
b,我们想要得到它们的一组标准正交基。之前我们学习过的投影保留列空间中的分量,而扔掉垂直于列空间的分量。相反,这次我们想保留垂直于列空间的分量,因为我们要找的就是垂直。
像这种情况,我们想保留分量
B
B
B,扔掉分量
p
p
p。(这里
A
=
a
A=a
A=a,因为我们将
a
a
a作为第一个基
A
A
A)
B
=
b
−
p
B=b-p
B=b−p而且根据之前的内容,我们可以得
p
=
A
T
b
A
T
A
A
p=\frac{A^Tb}{A^TA}A
p=ATAATbA,带入到上式中可得:
B
=
b
−
A
T
b
A
T
A
A
B=b-\frac{A^Tb}{A^TA}A
B=b−ATAATbA至此我们得到了
A
,
B
A,B
A,B,然后再将他们标准化:
q
1
=
A
∣
∣
A
∣
∣
q
2
=
B
∣
∣
B
∣
∣
q_1=\frac{A}{||A||}\qquad q_2=\frac{B}{||B||}
q1=∣∣A∣∣Aq2=∣∣B∣∣B
Q
=
[
q
1
q
2
]
Q=\begin{bmatrix}q_1&q_2\end{bmatrix}
Q=[q1q2]
然后我们将这种方法扩展到
3
3
3维的情况,在进一步扩展到高维的情况时,跟这种扩展方法是类似的。有三个线性无关的向量
a
,
b
,
c
a,b,c
a,b,c如图:
我们仍然保留
a
a
a做第一个基,类似前面的方法,
b
b
b减去在
A
A
A上的分量,保留垂直分量,做第二个基。
B
=
b
−
A
T
b
A
T
A
A
B=b-\frac{A^Tb}{A^TA}A
B=b−ATAATbA采用同样的思想,
c
c
c减去在
A
,
B
A,B
A,B上的分量,保留垂直于它们的分量做第三个基:
C
=
c
−
A
T
c
A
T
A
A
−
B
T
c
B
T
B
B
C=c-\frac{A^Tc}{A^TA}A-\frac{B^Tc}{B^TB}B
C=c−ATAATcA−BTBBTcB然后我们再标准化:
q
1
=
A
∣
∣
A
∣
∣
q
2
=
B
∣
∣
B
∣
∣
q
3
=
C
∣
∣
C
∣
∣
q_1=\frac{A}{||A||}\qquad q_2=\frac{B}{||B||}\qquad q_3=\frac{C}{||C||}
q1=∣∣A∣∣Aq2=∣∣B∣∣Bq3=∣∣C∣∣C最后我们得到正交化矩阵
Q
=
[
q
1
q
2
q
3
]
Q=\begin{bmatrix}q_1&q_2&q_3\end{bmatrix}
Q=[q1q2q3] 实际上,并没有什么特殊的地方,这个正交化的过程就是逐步减去在已有基上的分量的过程,最终保留了垂直于已有基的分量作为新的基。
在矩阵的角度上分析: 消元法的本质在于 A = L U A=LU A=LU,即 A A A的 L U LU LU分解。这里的正交化法同样也可以写成类似的形式: A = Q R A=QR A=QR右乘一个矩阵表示对 Q Q Q进行列的线性组合,也就是说 A A A是由它所在的空间中的基线性组合得到的。这是符合我们的常识的。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)