[转载]特征值分解 (EVD),奇异值分解 (SVD) 和主成份分析 (PCA)
范叶亮 / 2017-12-11
准备知识
向量与基
首先,定义 αα 为列向量,则维度相同的两个向量 α,βα,β 的内积可以表示为:
α⋅β=αTβ=n∑i=1αibi(1)(1)α⋅β=αTβ=∑i=1nαibi
后续为了便于理解,我们以二维向量为例,则 α=(x1,y1)T,β=(x2,y2)Tα=(x1,y1)T,β=(x2,y2)T,在直角座标系中可以两个向量表示如下:
我们从 AA 点向向量 ββ 的方向做一条垂线,交于点 CC,则称 OCOC 为 OAOA 在 OBOB 方向上的投影。设向量 αα 和向量 ββ 的夹角为 θθ,则:
cos(θ)=α⋅β|α||β|(2)(2)cos(θ)=α⋅β|α||β|
其中,|α|=√x21+y21|α|=x12+y12,则 OCOC 的长度为 |α|cos(θ)|α|cos(θ)。
在 nn 维的线性空间 VV 中,nn 个线性无关的向量 ϵ1,ϵ2,...,ϵnϵ1,ϵ2,…,ϵn 称为 VV 的一组基。则对于 VV 中的任一向量 αα 可以由这组基线性表示出来:
α=x1ϵ1+x2ϵ2+...+xnϵn(3)(3)α=x1ϵ1+x2ϵ2+…+xnϵn
则对于向量 α=(3,2)Tα=(3,2)T,可以表示为:
α=2(1,0)T+3(0,1)T(4)(4)α=2(1,0)T+3(0,1)T
其中 (1,0)T(1,0)T 和 (0,1)T(0,1)T 为二维空间中的一组基。
因此,当我们确定好一组基之后,我们仅需利用向量在基上的投影值即可表示对应的向量。一般情况下,我们会选择由坐标轴方向上的单位向量构成的基作为默认的基来表示向量,但我们仍可选择其他的基。例如,我们选择 (−1√2,1√2)(−12,12) 和 (1√2,1√2)(12,12) 作为一组基,则向量在这组基上的坐标为 (−1√2,5√2)(−12,52),示例如下:
线性变换
以二维空间为例,定义一个如下矩阵
A=⎧⎪ ⎪ ⎪⎩a11a12a21a22⎫⎪ ⎪ ⎪⎭(5)(5)A=⟮a11a12a21a22⟯
则对于二维空间中一个向量 α=(x,y)Tα=(x,y)T ,通过同上述矩阵进行乘法运算,可得
α′=Aα=⎧⎪ ⎪ ⎪⎩a11a12a21a22⎫⎪ ⎪ ⎪⎭⎧⎪ ⎪ ⎪⎩xy⎫⎪ ⎪ ⎪⎭=⎧⎪ ⎪ ⎪⎩x′y′⎫⎪ ⎪ ⎪⎭(6)(6)α′=Aα=⟮a11a12a21a22⟯⟮xy⟯=⟮x′y′⟯
(1) 通过变换将任意一个点 xx 变成它关于 xx 轴对称的点 x′x′
x′=⎧⎪ ⎪ ⎪⎩100−1⎫⎪ ⎪ ⎪⎭⎧⎪ ⎪ ⎪⎩xy⎫⎪ ⎪ ⎪⎭=⎧⎪ ⎪ ⎪⎩x−y⎫⎪ ⎪ ⎪⎭(7)(7)x′=⟮100−1⟯⟮xy⟯=⟮x−y⟯
(2) 通过变换将任意一个点 xx 变成它关于 y=xy=x 对称的点 x′x′
x′=⎧⎪ ⎪ ⎪⎩0110⎫⎪ ⎪ ⎪⎭⎧⎪ ⎪ ⎪⎩xy⎫⎪ ⎪ ⎪⎭=⎧⎪ ⎪ ⎪⎩yx⎫⎪ ⎪ ⎪⎭(8)(8)x′=⟮0110⟯⟮xy⟯=⟮yx⟯
(3) 变换将任意一个点 xx 变成在它与原点连线上,与原点距离伸缩为 |λ||λ| 倍的点 x′x′
x′=⎧⎪ ⎪ ⎪⎩λ00λ⎫⎪ ⎪ ⎪⎭⎧⎪ ⎪ ⎪⎩xy⎫⎪ ⎪ ⎪⎭=⎧⎪ ⎪ ⎪⎩λxλy⎫⎪ ⎪ ⎪⎭(9)(9)x′=⟮λ00λ⟯⟮xy⟯=⟮λxλy⟯
(4) 通过变换将任意一个点 xx 绕原点旋转了角度 θθ 的点 x′x′
x′=⎧⎪ ⎪ ⎪⎩cosθ−sinθsinθcosθ⎫⎪ ⎪ ⎪⎭⎧⎪ ⎪ ⎪⎩xy⎫⎪ ⎪ ⎪⎭=⎧⎪ ⎪ ⎪⎩cosθ−sinθsinθcosθ⎫⎪ ⎪ ⎪⎭⎧⎪ ⎪ ⎪⎩rcosϕrsinϕ⎫⎪ ⎪ ⎪⎭=⎧⎪ ⎪ ⎪⎩rcos(ϕ+θ