MIT 线性代数(25—27)读书笔记

第二十五讲:复习二

1.第14到24讲总结


  • 我们学习了正交性(正交向量和正交补),有矩阵

    Q=[q1 q2  qn]
    Q=\\Bigg[q_1\\ q_2\\ \\cdots\\
    q_n\\Bigg],若其列向量相互正交,则该矩阵满足

    QTQ=I
    Q^TQ=I。

  • 进一步研究投影(求解

    Ax=b
    Ax=b和最小二乘法),我们了解了Gram-Schmidt正交化法,核心思想是求法向量,即从原向量中减去投影向量

    E=bP,P=Ax=AATbATA
    E=b-P,
    P=Ax=A\\cdot\\frac{A^Tb}{A^TA}。

  • 接着学习了行列式,根据行列式的前三条性质,我们拓展出了性质4-10。

  • 我们继续推导出了一个利用代数余子式求行列式的公式。

  • 又利用代数余子式推导出了一个求逆矩阵的公式(克拉默法则)、逆矩阵的求法和矩阵的几何意义。

  • 接下来我们学习了特征值与特征向量的意义:

    Ax=λx
    Ax=\\lambda x,进而了解了通过

    det(AλI)=0
    \\det(A-\\lambda I)=0求特征值、特征向量的方法。

  • 有了特征值与特征向量,我们掌握了通过公式

    AS=ΛS
    AS=\\Lambda S对角化矩阵,同时掌握了求矩阵的幂

    Ak=SΛkS1
    A^k=S\\Lambda^kS^{-1}。

  • 最后是对角化、特征值和特征向量和正交化的应用,应用在:矩阵的幂、微分方程和

    eAt
    e^{At}、马尔可夫矩阵和傅立叶级数。

注:微分方程不在本讲的范围内。下面通过往年例题复习上面的知识。

2. 例子


1. 1)求

a=212
a=\\begin{bmatrix}2\\\\1\\\\2\\end{bmatrix}的投影矩阵

P
P;
2)求PP矩阵的特征值和特征向量;
3) 有差分方程

uk+1=Puk, u0=990
u_{k+1}=Pu_k,\\ u_0=\\begin{bmatrix}9\\\\9\\\\0\\end{bmatrix},求解

uk
u_k.


解: (15、21、22、23讲)
1)求

a=212
a=\\begin{bmatrix}2\\\\1\\\\2\\end{bmatrix}的投影矩阵

P
P:(\\Bigg(由

A(bp)AT(bAx^)=0
A\\bot(b-p)\\rightarrow A^T(b-A\\hat x)=0得到

x^=(ATA)1ATb
\\hat x=\\left(A^TA\\right)^{-1}A^Tb,求得

p=Ax^=A(ATA)1ATb=Pb
p=A\\hat x=A\\left(A^TA\\right)^{-1}A^Tb=Pb最终得到

P)
P\\Bigg)

P=A(ATA)1AT=aaaTaTa=19424212424
\\underline{P=A\\left(A^TA\\right)^{-1}A^T}\\stackrel{a}=\\frac{aa^T}{a^Ta}=\\frac{1}{9}\\begin{bmatrix}4&2&4\\\\2&1&2\\\\4&2&4\\end{bmatrix}。

2)求

P
P矩阵的特征值:观察矩阵易知矩阵奇异,且为秩一矩阵,则其零空间为22维,所以由

Px=0x
Px=0x得出矩阵的两个特征向量为

λ1=λ2=0
\\lambda_1=\\lambda_2=0;而从矩阵的迹得知

trace(P)=1=λ1+λ2+λ3=0+0+1
trace(P)=1=\\lambda_1+\\lambda_2+\\lambda_3=0+0+1,则第三个特征向量为

λ3=1
\\lambda_3=1。

λ3=1
\\lambda_3=1的特征向量:由

Px=x
Px=x我们知道经其意义为,

x
x过矩阵PP变换后不变,又有

P
P是向量aa的投影矩阵,所以任何向量经过

P
P变换都会落在aa的列空间中,则只有已经在

a
a的列空间中的向量经过PP的变换后保持不变,即其特征向量为

x=a=212
x=a=\\begin{bmatrix}2\\\\1\\\\2\\end{bmatrix},也就是

Pa=a
Pa=a。

(15)01
\\color{red}{还记得特征值和特征向量那一讲吗(15讲)?特意讲了投影矩阵,它的特征值就是0 和1}

3)有差分方程

uk+1=Puk, u0=990
u_{k+1}=Pu_k,\\ u_0=\\begin{bmatrix}9\\\\9\\\\0\\end{bmatrix},求解

uk
u_k:


\\color{red}{我们先不急于解出特征值、特征向量,因为矩阵很特殊(投影矩阵)。}首先观察

u1=Pu0
u_1=Pu_0,式子相当于将

u0
u_0投影在了

a
a的列空间中,计算得u1=aaTu0aTa=3a=636u_1=a\\frac{a^Tu_0}{a^Ta}=3a=\\begin{bmatrix}6\\\\3\\\\6\\end{bmatrix}(这里的

3
3相当于做投影时的系数x^\\hat x),其意义为

u1
u_1在

a
a上且距离u0u_0最近。再来看看

u2=Pu1
u_2=Pu_1,这个式子将

u1
u_1再次投影到

a
a的列空间中,但是此时的u1u_1已经在该列空间中了,再次投影仍不变,所以有

uk=Pku0=Pu0=636
u_k=P^ku_0=Pu_0=\\begin{bmatrix}6\\\\3\\\\6\\end{bmatrix}。

总结:
上面的解法利用了投影矩阵的特殊性质,如果在一般情况下,我们需要使用

AS=SΛA=SΛS1uk+1=Auk=Ak+1u0,u0=Scuk+1=SΛk+1S1Sc=SΛk+1c
AS=S\\Lambda\\rightarrow A=S\\Lambda
S^{-1} \\rightarrow u_{k+1}=Au_k=A^{k+1}u_0, u_0=Sc\\rightarrow
u_{k+1}=S\\Lambda^{k+1}S^{-1}Sc=S\\Lambda^{k+1}c,最终得到公式

Aku0=c1λk1x1+c2λk2x2++cnλknxn
A^ku_0=c_1\\lambda_1^kx_1+c_2\\lambda_2^kx_2+\\cdots+c_n\\lambda_n^kx_n。题中

P
P的特殊性在于它的两个“零特征值”及一个“一特征值”使得式子变为Aku0=c3x3A^ku_0=c_3x_3,所以得到了上面结构特殊的解。


2.将点

(1,4), (2,5), (3,8)
(1,4),\\ (2,5),\\ (3,8)拟合到一条过零点的直线上。


解: (15、16讲)
设直线为

y=Dt
y=Dt,写成矩阵形式为

123D=458
\\begin{bmatrix}1\\\\2\\\\3\\end{bmatrix}D=\\begin{bmatrix}4\\\\5\\\\8\\end{bmatrix},即

AD=b
AD=b,很明显

D
D不存在。利用公式ATAD^=ATbA^TA\\hat D=A^Tb得到

14D=38, D^=3814
14D=38,\\ \\hat D=\\frac{38}{14},即最佳直线为

y=3814t
y=\\frac{38}{14}t。这个近似的意义是将

b
b投影在了AA的列空间中。


3.

a1=123 a2=111
a_1=\\begin{bmatrix}1\\\\2\\\\3\\end{bmatrix}\\ a_2=\\begin{bmatrix}1\\\\1\\\\1\\end{bmatrix}的正交向量


解: (17讲)
找到平面

A=[a1,a2]
A=\\Bigg[a_1,a_2\\Bigg]的正交基,使用Gram-Schmidt法,以

a1
a_1为基准,正交化

a2
a_2,也就是将

a2
a_2中平行于

a1
a_1的分量去除,即

a2xa1=a2aT1a2aT1a1a1=111614123
a_2-xa_1=a_2-\\frac{a_1^Ta_2}{a_1^Ta_1}a_1=\\begin{bmatrix}1\\\\1\\\\1\\end{bmatrix}-\\frac{6}{14}\\begin{bmatrix}1\\\\2\\\\3\\end{bmatrix}。


4.

4×4
4\\times 4矩阵

A
A,
1)其特征值为λ1,λ2,λ3,λ4\\lambda_1,\\lambda_2,\\lambda_3,\\lambda_4,则矩阵可逆的条件是什么;
2)

trace(A+I)
trace(A+I)的迹是什么。


解: (21、22讲)
1)矩阵可逆,则零空间中只有零向量,即

Ax=0x
Ax=0x没有非零解,则零不是矩阵的特征值。

detA1
\\det A^{-1}是什么:

detA1=1detA
\\det A^{-1}=\\frac{1}{\\det A},而

detA=λ1λ2λ3λ4
\\det A=\\lambda_1\\lambda_2\\lambda_3\\lambda_4,所以有

detA1=1λ1λ2λ3λ4
\\det A^{-1}=\\frac{1}{\\lambda_1\\lambda_2\\lambda_3\\lambda_4}。

2)

trace(A+I)
trace(A+I)的迹是什么:我们知道

trace(A)=a11+a22+a33+a44=λ1+λ2+λ3+λ4
trace(A)=a_{11}+a_{22}+a_{33}+a_{44}=\\lambda_1+\\lambda_2+\\lambda_3+\\lambda_4,所以有

trace(A+I)=a11+1+a22+1+a33+1+a44+1=λ1+λ2+λ3+λ4+4
trace(A+I)=a_{11}+1+a_{22}+1+a_{33}+1+a_{44}+1=\\lambda_1+\\lambda_2+\\lambda_3+\\lambda_4+4。


5.有矩阵

A4=1100111001110011
A_4=\\begin{bmatrix}1& 1& 0& 0\\\\1& 1& 1& 0\\\\0& 1& 1& 1\\\\0& 0& 1& 1\\end{bmatrix},
1)求

Dn=?Dn1+?Dn2
D_n=?D_{n-1}+?D_{n-2};
2)判断递归式是否收敛。


解:
1)求递归式的系数,使用代数余子式将矩阵安第一行展开得

detA4=11101110111100111011=111011101111111=detA3detA2
\\det A_4=1\\cdot\\begin{vmatrix}1& 1& 0\\\\1& 1& 1\\\\0& 1& 1\\end{vmatrix}-1\\cdot\\begin{vmatrix}1& 1& 0\\\\0& 1& 1\\\\0& 1& 1\\end{vmatrix}=1\\cdot\\begin{vmatrix}1& 1& 0\\\\1& 1& 1\\\\0& 1& 1\\end{vmatrix}-1\\cdot\\begin{vmatrix}1& 1\\\\1& 1\\end{vmatrix}=\\det A_3-\\det A_2。则可以看出有规律

Dn=Dn1Dn2,D1=1,D2=0
D_n=D_{n-1}-D_{n-2}, D_1=1, D_2=0。
使用我们在差分方程中的知识构建方程组

{DnDn1=Dn1Dn2=Dn1
\\begin{cases}D_n& =D_{n-1}-D_{n-2}\\\\D_{n-1}& =D_{n-1}\\end{cases},用矩阵表达有

[DnDn1]=[1110][Dn1Dn2]
\\begin{bmatrix}D_n\\\\D_{n-1}\\end{bmatrix}=\\begin{bmatrix}1& -1\\\\1& 0\\end{bmatrix}\\begin{bmatrix}D_{n-1}\\\\D_{n-2}\\end{bmatrix}。计算系数矩阵

Ac
A_c的特征值,

1λ11λ=λ2λ+1=0
\\begin{vmatrix}1-\\lambda& 1\\\\1& -\\lambda\\end{vmatrix}=\\lambda^2-\\lambda+1=0,解得

λ1=1+3i2,λ2=13i2
\\lambda_1=\\frac{1+\\sqrt{3}i}{2},\\lambda_2=\\frac{1-\\sqrt{3}i}{2},特征值为一对共轭复数。

2)要判断递归式是否收敛,需要计算特征值的模,即实部平方与虚部平方之和

14+34=1
\\frac{1}{4}+\\frac{3}{4}=1。它们是位于单位圆

eiθ
e^{i\\theta}上的点,即

cosθ+isinθ
\\cos\\theta+i\\sin\\theta,从本例中可以计算出

θ=60
\\theta=60^\\circ,也就是可以将特征值写作

λ1=eiπ/3,λ2=eiπ/3
\\lambda_1=e^{i\\pi/3},\\lambda_2=e^{-i\\pi/3}。注意,从复平面单位圆上可以看出,这些特征值的六次方将等于一:

e2πi=e2πi=1
e^{2\\pi i}=e^{2\\pi i}=1。继续深入观察这一特性对矩阵的影响,

λ61=λ6=1
\\lambda_1^6=\\lambda^6=1,则对系数矩阵有

A6c=I
A_c^6=I。则系数矩阵

Ac
A_c服从周期变化,既不发散也不收敛。


6.有这样一类矩阵

A4=0100102002030030
A_4=\\begin{bmatrix}0& 1& 0& 0\\\\1& 0& 2& 0\\\\0& 2& 0& 3\\\\0& 0& 3& 0\\end{bmatrix},求投影到

A3
A_3列空间的投影矩阵


解:

A3=010102020
A_3=\\begin{bmatrix}0& 1& 0\\\\1& 0& 2\\\\0& 2& 0\\end{bmatrix},按照通常的方法求

P=A(ATA)1AT
P=A\\left(A^TA\\right)^{-1}A^T即可,但是这样很麻烦。我们可以考察这个矩阵是否可逆,因为如果可逆的话,

R4
\\mathbb{R}^4空间中的任何向量都会位于

A4
A_4的列空间,其投影不变,则投影矩阵为单位矩阵

I
I。所以按行展开求行列式detA4=1133=9\\det A_4=-1\\cdot-1\\cdot-3\\cdot-3=9,所以矩阵可逆,则

P=I
P=I。

A3
A_3的特征值及特征向量:

|A3λI|=λ101λ202λ=λ3+5λ=0
\\left|A_3-\\lambda I\\right|=\\begin{vmatrix}-\\lambda& 1& 0\\\\1& -\\lambda& 2\\\\0& 2& -\\lambda\\end{vmatrix}=-\\lambda^3+5\\lambda=0,解得

λ1=0,λ2=5,λ3=5
\\lambda_1=0,\\lambda_2=\\sqrt 5,\\lambda_3=-\\sqrt 5。

我们可以猜测这一类矩阵的规律:奇数阶奇异,偶数阶可逆。


第二十六讲:对称矩阵及正定性

前面我们学习了矩阵的特征值与特征向量,也了解了一些特殊的矩阵及其特征值、特征向量,特殊矩阵的特殊性应该会反映在其特征值、特征向量中。如马尔科夫矩阵,有一特征值为

1
1,本讲介绍(实)对称矩阵(AT=AA^T=A)。(


\\color{red}{矩阵的特殊性应该表现在特征值和特征向量上})


1.对称矩阵

1.1对称矩阵的性质


先提前介绍两个对称矩阵的特性:

  • 特征值为实数;(对比第二十一讲介绍的旋转矩阵,其特征值为纯虚数。)

  • 特征向量相互正交。(如果特征值互不相同,那么每个特征值的特征向量是在单独的一条线上,那些线是垂直正交的;如果特征值重复,那就有一整个平面的特征向量,在那个平面上,我们可以选择垂直的向量),我们可以将这组特征向量转化为标准正交向量。

解释:
1.单位矩阵
单位矩阵是对称矩阵,特征值都为1,每一个向量都是特征向量。

2.在通常(可对角化)情况下,一个矩阵可以化为:

A=SΛS1
A=S\\varLambda S^{-1};
在矩阵对称的情况下,通过性质2可知,由特征向量组成的矩阵

S
S中的列向量是\\color{red}{相互正交的},此时如果我们把特征向量的长度统一化为

1
1,就可以得到一组\\color{red}{标准正交的特征向量}。则对于对称矩阵有

A=QΛQ1
A=Q\\varLambda Q^{-1},而对于标准正交矩阵,有

Q=QT
Q=Q^T,所以对称矩阵可以写为

A=QΛQ1=QΛQT(1)

A=Q\\varLambda Q^{-1}=Q\\varLambda Q^T\\tag{1}

观察

(1)
(1)式,我们发现这个分解本身就代表着对称,

(QΛQT)T=(QT)TΛTQT=QΛQT
\\left(Q\\varLambda Q^T\\right)^T=\\left(Q^T\\right)^T\\varLambda^TQ^T=Q\\varLambda Q^T。

注:

(1)
(1)式在数学上叫做谱定理(spectral theorem),谱就是指矩阵特征值的集合。(该名称来自光谱,指一些纯事物的集合,就像将特征值分解成为特征值与特征向量。)

(1)
(1)式在力学上称之为主轴定理(principle axis theorem),从几何上看,它意味着如果给定某种材料,在合适的轴上来看,它就变成对角化的,方向就不会重复。

1.2性质的证明


现在我们来证明性质1。
1)对于矩阵

Ax=λx
\\underline{Ax=\\lambda x};
2)对于其共轭部分总有

A¯x¯=λ¯x¯
\\bar A\\bar x=\\bar\\lambda \\bar x,根据前提条件我们只讨论实矩阵,则有

Ax¯=λ¯x¯
A\\bar x=\\bar\\lambda \\bar x,将等式两边取转置有

x¯TA=x¯Tλ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
\\overline{\\bar{x}^TA=\\bar{x}^T\\bar\\lambda};
3)将“下划线”式两边左乘

x¯T
\\bar{x}^T有

x¯TAx=x¯Tλx
\\bar{x}^TAx=\\bar{x}^T\\lambda x,“上划线”式两边右乘

x
x有x¯TAx=x¯Tλ¯x\\bar{x}^TAx=\\bar{x}^T\\bar\\lambda x,观察发现这两个式子左边是一样的,所以

x¯Tλx=x¯Tλ¯x
\\bar{x}^T\\lambda x=\\bar{x}^T\\bar\\lambda x,则有

λ=λ¯
\\lambda=\\bar{\\lambda}(这里有个条件,

x¯Tx0
\\bar{x}^Tx\\neq 0),证毕。

注:
观察这个前提条件,

x¯Tx=[x¯1x¯2x¯n]x1x2xn=x¯1x1+x¯2x2++x¯nxn

\\bar{x}^Tx=\\begin{bmatrix}\\bar x_1& \\bar x_2& \\cdots& \\bar x_n\\end{bmatrix}\\begin{bmatrix}x_1\\\\x_2\\\\\\vdots\\\\x_n\\end{bmatrix}=\\bar x_1x_1+\\bar x_2x_2+\\cdots+\\bar x_nx_n,设

x1=a+ib,x¯1=aib
x_1=a+ib, \\bar
x_1=a-ib则

x¯1x1=a2+b2
\\bar
x_1x_1=a^2+b^2,所以有

x¯Tx>0
\\bar{x}^Tx>0。而

x¯Tx
\\bar{x}^Tx就是

x
x长度的平方。

1.3性质拓展


拓展这个性质:
1)当AA为复矩阵,根据上面的推导,则矩阵必须满足

AT=AA=A¯T
A^T=A和A=\\bar{A}^T时,才有性质1、性质2成立(教授称具有这种


\\color{red}{特征值为实数、特征向量相互正交的矩阵为“好矩阵”})。

2)继续研究

A=QΛQT=[q1 q2  qn]λ1λ2λnqT1qT1qT1=λ1q1qT1+λ2q2qT2++λnqnqTn
A=Q\\varLambda Q^T=\\Bigg[q_1\\ q_2\\ \\cdots\\ q_n\\Bigg]\\begin{bmatrix}\\lambda_1& & \\cdots& \\\\& \\lambda_2& \\cdots& \\\\\\vdots& \\vdots& \\ddots& \\vdots\\\\& & \\cdots& \\lambda_n\\end{bmatrix}\\begin{bmatrix}\\quad q_1^T\\quad\\\\\\quad q_1^T\\quad\\\\\\quad \\vdots \\quad\\\\\\quad q_1^T\\quad\\end{bmatrix}=\\lambda_1q_1q_1^T+\\lambda_2q_2q_2^T+\\cdots+\\lambda_nq_nq_n^T,注意这个展开式中的

qqT
qq^T,

q
q是单位列向量所以qTq=1q^Tq=1,结合我们在第十五讲所学的投影矩阵的知识有

qqTqTq=qqT
\\frac{qq^T}{q^Tq}=qq^T是一个投影矩阵,很容易验证其性质,比如平方它会得到

qqTqqT=qqT
qq^Tqq^T=qq^T于是多次投影不变等(验证了投影举证的性质)。

每一个对称矩阵都可以分解为一系列相互正交的投影矩阵。

3)在知道对称矩阵的特征值皆为实数后,我们再来讨论这些实数的符号,因为特征值的正负号会影响微分方程的收敛情况(第二十三讲,需要实部为负的特征值保证收敛)。用消元法取得矩阵的主元,观察主元的符号,主元符号的正负数量与特征向量的正负数量相同。即:

  • 主元符号的正负数量与特征向量的正负数量相同

  • 特征值之积等于主元之积。

2.正定矩阵


如果对称矩阵是“好矩阵”,则正定矩阵(positive definite)是其一个更好的子类。

  • 正定矩阵指特征值均为正数的矩阵(根据上面的性质有矩阵的主元均为正)。

  • 正定矩阵所有子行列式为正。

举个例子,

[5223]
\\begin{bmatrix}5& 2\\\\2& 3\\end{bmatrix},由行列式消元知其主元为

5,115
5,\\frac{11}{5},按一般的方法求特征值有

5λ223λ=λ28λ+11=0,λ=4±5
\\begin{vmatrix}5-\\lambda& 2\\\\2& 3-\\lambda\\end{vmatrix}=\\lambda^2-8\\lambda+11=0, \\lambda=4\\pm\\sqrt 5。
正定矩阵的另一个性质是,所有子行列式为正。对上面的例子有

|5|=5,5223=11
\\begin{vmatrix}5\\end{vmatrix}=5, \\begin{vmatrix}5& 2\\\\2& 3\\end{vmatrix}=11。

我们看到正定矩阵将早期学习的的消元主元、中期学习的的行列式、后期学习的特征值结合在了一起。


  • \\color{red}{如果一个实对称矩阵的特征值都是正数,那么它是正定矩阵}。


  • \\color{red}{正定矩阵的主元也都是正数}。


  • \\color{red}{正定矩阵的所有子行列式都是正数}。


  • \\color{red}{正定矩阵将方阵特征值,主元,行列式融为一体}。

3.本章总结


  1. 对称矩阵(

    AT=A
    A^T=A):
    1)性质:特征值为实数,特征向量相互正交(

    A=QΛQ1=QΛQT
    A=Q\\varLambda Q^{-1}=Q\\varLambda Q^T)。
    2)当

    A
    A为复矩阵,根据上面的推导,则矩阵必须满足AT=AA=A¯TA^T=A和A=\\bar{A}^T时,才有性质1、性质2成立。
    3)主元符号的正负数量与特征向量的正负数量相同;特征值之积等于主元之积。

  2. 正定矩阵

    • 如果一个实对称矩阵的特征值都是正数,那么它是正定矩阵。

    • 正定矩阵的主元也都是正数。

    • 正定矩阵的所有子行列式都是正数。

    • 正定矩阵将方阵特征值,主元,行列式融为一体。


第二十七讲:复数矩阵和快速傅里叶变换

本讲主要介绍复数向量、复数矩阵的相关知识(包括如何做复数向量的点积运算、什么是复数对称矩阵等),以及傅里叶矩阵(最重要的复数矩阵)和快速傅里叶变换。

一个重要的复矩阵的例子就是傅里叶矩阵。还将介绍傅里叶变换,简称FFT,在计算机里常用,特别是当涉及到大数据的时候,因为它可以很快的进行傅里叶变换,即是说做乘法时,怎样才能快速用这个

n
n 阶方阵做乘法,通常,nn 阶方阵的乘法要算

n2
n^2 次,因为有

n2
n^2 个非零元素,这是个全矩阵,且这个矩阵的列向量正交,而快速傅里叶变换将原先要进行的

n2
n^2 次计算缩减到

nlogn
n logn,这只是简单的矩阵分解,但改变是巨大的。

1.复数矩阵运算

1.1.计算复向量的模与内积


先介绍复数向量,我们不妨换一个字母符号来表示:

z=z1z2zn
z=\\begin{bmatrix}z_1\\\\z_2\\\\\\vdots\\\\z_n\\end{bmatrix},向量的每一个分量都是复数。此时

z
z不再属于Rn\\mathbb{R}^n实向量空间,它现在处于

Cn
\\mathbb{C}^n复向量空间。

对比实向量,我们计算模只需要计算

|v|=vTv
\\left|v\\right|=\\sqrt{v^Tv}即可,而如果对复向量使用

zTz
z^Tz则有

zTz=[z1z2zn]z1z2zn=z21+z22++z2n
z^Tz=\\begin{bmatrix}z_1& z_2& \\cdots& z_n\\end{bmatrix}\\begin{bmatrix}z_1\\\\z_2\\\\\\vdots\\\\z_n\\end{bmatrix}=z_1^2+z_2^2+\\cdots+z_n^2,这里

zi
z_i是复数,平方后虚部为负,求模时本应相加的运算变成了减法。(如向量

[1i]
\\begin{bmatrix}1& i\\end{bmatrix},右乘其转置后结果为

0
0,但此向量的长度显然不是零。)
根据上一讲我们知道,应使用|z|=z¯Tz\\left|z\\right|=\\sqrt{\\bar{z}^Tz},即

[z¯1z¯2z¯n]z1z2zn
\\begin{bmatrix}\\bar z_1& \\bar z_2& \\cdots& \\bar z_n\\end{bmatrix}\\begin{bmatrix}z_1\\\\z_2\\\\\\vdots\\\\z_n\\end{bmatrix},即使用向量共轭的转置乘以原向量即可。(如向量

[1i]
\\begin{bmatrix}1& i\\end{bmatrix},右乘其共轭转置后结果为

[1i][1i]=2
\\begin{bmatrix}1& -i\\end{bmatrix}\\begin{bmatrix}1\\\\i\\end{bmatrix}=2。)

我们把共轭转置

z¯T
\\bar{z}^T乘以原向量记为

zHz
z^Hz,

H
H读作埃尔米特(人名为Hermite,形容词为Hermitian)

有了复向量模的计算公式,同理可得,对于复向量,内积不再是实向量的yTxy^Tx形式,复向量内积应为

yHx
y^Hx。

1.2. 复数对称矩阵


对于实矩阵,

AT=A
A^T=A即可表达矩阵的对称性。而对于复矩阵,我们同样需要求一次共轭

A¯T=A
\\bar{A}^T=A。举个例子

[23i3+i5]
\\begin{bmatrix}2& 3+i\\\\3-i& 5\\end{bmatrix}是一个复数情况下的对称矩阵。这叫做埃尔米特矩阵,有性质

AH=A
A^H=A。

1.3. 正交性


在第十七讲中,我们这样定义标准正交向量:

qTiqj={0ij1i=j
q_i^Tq_j=\\begin{cases}0\\quad i\\neq j\\\\1\\quad i=j\\end{cases}。现在,对于复向量我们需要求共轭:

q¯Tiqj=qHiqj={0ij1i=j
\\bar{q}_i^Tq_j=q_i^Hq_j=\\begin{cases}0\\quad i\\neq j\\\\1\\quad i=j\\end{cases}。
第十七讲中的标准正交矩阵:

Q=[q1 q2  qn]
Q=\\Bigg[q_1\\ q_2\\ \\cdots\\ q_n\\Bigg]有

QTQ=I
Q^TQ=I。现在对于复矩阵则有

QHQ=I
Q^HQ=I。
就像人们给共轭转置起了个“埃尔米特”这个名字一样:

正交性(orthogonal)在复数情况下也有了新名字,酉(unitary),

unitarymatrix
\\color{red}{酉矩阵(unitary matrix)}与正交矩阵类似,满足:

QHQ=I

Q^HQ=I

而前面提到的
傅里叶矩阵就是一个酉矩阵

1.4.傅里叶矩阵


n
n阶傅里叶矩阵Fn=11111ww2wn11w2w4w2(n1)1wn1w2(n1)w(n1)2F_n=\\begin{bmatrix}1& 1& 1& \\cdots& 1\\\\1& w& w^2& \\cdots& w^{n-1}\\\\1& w^2& w^4& \\cdots& w^{2(n-1)}\\\\\\vdots& \\vdots& \\vdots& \\ddots& \\vdots\\\\1& w^{n-1}& w^{2(n-1)}& \\cdots& w^{(n-1)^2}\\end{bmatrix},对于每一个元素有

(Fn)ij=wiji,j=0,1,2,,n1
(F_n)_{ij}=w^{ij}\\quad i,j=0,1,2,\\cdots,n-1。矩阵中的

w
w是一个非常特殊的值,满足wn=1w^n=1,其公式为

w=ei2π/n
w=e^{i2\\pi/n}。易知

w
w在复平面的单位圆上,w=cos2πn+isin2πnw=\\cos\\frac{2\\pi}{n}+i\\sin\\frac{2\\pi}{n}。
在傅里叶矩阵中,当我们计算

w
w的幂时,ww在单位圆上的角度翻倍。比如在

6
6阶情形下,w=e2π/6w=e^{2\\pi/6},即位于单位圆上

60
60^\\circ角处,其平方位于单位圆上

120
120^\\circ角处,而

w6
w^6位于

1
1处。从开方的角度看,它们是11的

6
6个六次方根,而一次的ww称为原根。
我们现在来看

4
4阶傅里叶矩阵,先计算ww有

w=i, w2=1, w3=i, w4=1
w=i,\\ w^2=-1,\\ w^3=-i,\\ w^4=1,

F4=11111ii2i31i2i4i61i3i6i9=11111i1i11111i1i
F_4=\\begin{bmatrix}1& 1& 1& 1\\\\1& i& i^2& i^3\\\\1& i^2& i^4& i^6\\\\1& i^3& i^6& i^9\\end{bmatrix}=\\begin{bmatrix}1& 1& 1& 1\\\\1& i& -1& -i\\\\1& -1& 1& -1\\\\1& -i& -1& i\\end{bmatrix}。
矩阵的四个列向量正交,我们验证一下第二列和第四列,

c2¯Tc4=10+10=0
\\bar{c_2}^Tc_4=1-0+1-0=0,正交。不过我们应该注意到,

F4
F_4的列向量并不是标准的,我们可以给矩阵乘上系数

12
\\frac{1}{2}(除以列向量的长度)得到标准正交矩阵

F4=1211111i1i11111i1i
F_4=\\frac{1}{2}\\begin{bmatrix}1& 1& 1& 1\\\\1& i& -1& -i\\\\1& -1& 1& -1\\\\1& -i& -1& i\\end{bmatrix}。此时有

FH4F4=I
F_4^HF_4=I,于是该矩阵的逆矩阵也就是其共轭转置

FH4
F_4^H。

四阶傅里叶变换作用于四维向量 :

  • 傅里叶变换:向量左乘矩阵

    F4
    F_4(四点傅里叶变换);

  • 傅里叶逆变换:向量左乘矩阵

    F14
    F_4^{-1}(四点傅里叶逆变换)。

一个很好的性质:


\\color{red}{可以把傅里叶矩阵分解为一些列“稀疏矩阵”。}

2. 快速傅里叶变换(Fast Fourier transform/FFT)


对于傅里叶矩阵,

F6, F3
F_6,\\ F_3 与

F8, F4
F_8,\\ F_4 和

F64, F32
F_{64},\\ F_{32}之间有着特殊的关系。
举例,有傅里叶矩阵

F64
F_{64},一般情况下,用一个列向量右乘

F64
F_{64}需要约

642
64^2次计算,显然这个计算量是比较大的。我们想要减少计算量,于是想要分解

F64
F_{64},联系到

F32
F_{32},有

[F64]=[IIDD][F3200F32]101010010101
\\Bigg[F_{64}\\Bigg]=\\begin{bmatrix}I& D\\\\I& -D\\end{bmatrix}\\begin{bmatrix}F_{32}& 0\\\\0& F_{32}\\end{bmatrix}\\begin{bmatrix}1& & \\cdots& & & 0& & \\cdots& & \\\\0& & \\cdots& & & 1& & \\cdots& & \\\\& 1& \\cdots& & & & 0& \\cdots& & \\\\& 0& \\cdots& & & & 1& \\cdots& & \\\\& & & \\ddots& & & & & \\ddots& & \\\\& & & \\ddots& & & & & \\ddots& & \\\\& & & \\cdots& 1& & & & \\cdots& 0\\\\& & & \\cdots& 0& & & & \\cdots& 1\\end{bmatrix}。
我们分开来看等式右侧的这三个矩阵(分别是第一个矩阵、第二个矩阵和第三个矩阵):
1)第一个矩阵由单位矩阵

I
I和对角矩阵D=1ww2w31D=\\begin{bmatrix}1& & & & \\\\& w& & & \\\\& & w^2& & \\\\& & & \\ddots& \\\\& & & & w^{31}\\end{bmatrix}组成,我们称这个矩阵为修正矩阵,显然其计算量来自

D
D矩阵,对角矩阵的计算量约为3232即这个修正矩阵的计算量约为

32
32,单位矩阵的计算量忽略不计。

2)第二个矩阵是两个

F32
F_{32}与零矩阵组成的,计算量约为

2×322
2\\times 32^2。

3)第三个矩阵通常记为

P
P矩阵,这是一个置换矩阵,其作用是讲前一个矩阵中的奇数列提到偶数列之前,[x0 x1 ][x0 x2  x1 x3 ]\\color{red}{将前一个矩阵从\\Bigg[x_0\\ x_1\\ \\cdots\\Bigg]变为\\Bigg[x_0\\ x_2\\ \\cdots\\ x_1\\ x_3\\ \\cdots\\Bigg]},这个置换矩阵的计算量也可以忽略不计。(这里教授似乎在黑板上写错了矩阵,可以参考FFT、How the FFT is computed做进一步讨论。)

所以我们把

642
64^2复杂度的计算化简为

2×322+32
2\\times 32^2+32复杂度的计算,我们可以进一步化简

F32
F_{32}得到与

F16
F_{16}有关的式子

[I32I32D32D32]I16I16D16D16I16I16D16D16F16F16F16F16[P16P16][ P32 ]
\\begin{bmatrix}I_{32}& D_{32}\\\\I_{32}& -D_{32}\\end{bmatrix}\\begin{bmatrix}I_{16}& D_{16}& & \\\\I_{16}& -D_{16}& & \\\\& & I_{16}& D_{16}\\\\& & I_{16}& -D_{16}\\end{bmatrix}\\begin{bmatrix}F_{16}& & & \\\\& F_{16}& & \\\\& & F_{16}& \\\\& & & F_{16}\\end{bmatrix}\\begin{bmatrix}P_{16}& \\\\& P_{16}\\end{bmatrix}\\Bigg[\\ P_{32}\\ \\Bigg]。而

322
32^2的计算量进一步分解为

2×162+16
2\\times 16^2+16的计算量,如此递归下去我们最终得到含有一阶傅里叶矩阵的式子。
来看化简后计算量,

2(2(2(2(2(2(1)2+1)+2)+4)+8)+16)+32
2\\left(2\\left(2\\left(2\\left(2\\left(2\\left(1\\right)^2+1\\right)+2\\right)+4\\right)+8\\right)+16\\right)+32,约为

6×32=log264×642
6\\times 32=\\log_264\\times \\frac{64}{2},算法复杂度为

n2log2n
\\frac{n}{2}\\log_2n。
于是原来需要

n2
n^2的运算现在只需要

n2log2n
\\frac{n}{2}\\log_2n就可以实现了。不妨看看

n=10
n=10的情况,不使用FFT时需要

n2=1024×1024
n^2=1024\\times 1024次运算,使用FFT时只需要

n2log2n=5×1024
\\frac{n}{2}\\log_2n=5\\times 1024次运算,运算量大约是原来的

1200
\\frac{1}{200}。

nn2n2log2n
\\color{red}{对于n 阶傅里叶变换,无需n^2次乘法,只需要\\frac{n}{2}\\log_2n即可。这是矩阵分解 的功劳。}

3. 本章总结


  1. 酉矩阵和埃尔米特

    • 把共轭转置

      z¯T
      \\bar{z}^T乘以原向量记为

      zHz
      z^Hz,

      H
      H读作埃尔米特(人名为Hermite,形容词为Hermitian)

    • unitarymatrix\\color{red}{酉矩阵(unitary matrix)}:

QHQ=I

Q^HQ=I

    • 傅里叶矩阵就是一个酉矩阵(傅里叶变换与逆变换)。

    • 快速傅里叶变换

      nn2n2log2n
      \\color{red}{对于n 阶傅里叶变换,无需n^2次乘法,只需要\\frac{n}{2}\\log_2n即可。这是矩阵分解 的功劳。}

  • 下一讲将继续介绍特征值、特征向量及正定矩阵。

    © 版权声明
    THE END
    喜欢就支持一下吧
    点赞197 分享
    评论 抢沙发
    头像
    欢迎您留下宝贵的见解!
    提交
    头像

    昵称

    取消
    昵称表情代码图片

      暂无评论内容