关键词:线性方程组,矩阵,秩,矩阵逆,伪逆,左逆,右逆,
线性方程组求解:
Ax=yAx=yAx=y
已知A∈Rm×nA\in\R^{m\times n}A∈Rm×n和y∈Rmy\in\R^my∈Rm,求x∈Rnx\in\R^nx∈Rn。
mmm为方程个数(行数),nnn为未知数个数(列数),根据mmm,nnn的大小关系,可以分为3类:
(1)m>nm>nm>n:超定方程组,
(2)m=nm=nm=n:适定方程组,
(3)m<nm<nm<n:欠定(不定)方程组;
三种情况都可能相容(有解)也可能不相容(无解),因此这个关系划分不够本质,最本质的关系应该由秩的概念划分:
(1)相容方程组rank[A]=rank[A,y]rank[A]=rank[A,y]rank[A]=rank[A,y],有解。
(2)不相容方程组:rank[A]<rank[A,y]rank[A]<rank[A,y]rank[A]<rank[A,y],无解。
对于相容方程组:
首先所有的相容方程组都可以由Moore Penrose逆求解:
x=A+y+(I−A+A)cx=A^+y+(I-A^+A)cx=A+y+(I−A+A)c
其中A+A^+A+为Moore Penrose逆,c逆,c逆,c为Rn\R^nRn中任意向量。
其包含三种情况:
(1) rank[A]=nrank[A]=nrank[A]=n, 列满秩:(由于rank[A]≤min(m,n)rank[A]\leq min(m,n)rank[A]≤min(m,n),暗含n≤mn\leq mn≤m),此时A+A=IA^+A=IA+A=I,有唯一解:
x=(ATA)−1ATyx=(A^TA)^{-1}A^Tyx=(ATA)−1ATy
其中(ATA)−1AT(A^TA)^{-1}A^T(ATA)−1AT被标记为左逆AL−1A^{-1}_LAL−1。
当AAA的列为单位正交基时,x=ATyx=A^Tyx=ATy。
(2) rank[A]=mrank[A]=mrank[A]=m,行满秩:(由于rank[A]≤min(m,n)rank[A]\leq min(m,n)rank[A]≤min(m,n),暗含m≤nm\leq nm≤n),
当m=nm=nm=n,与情况(1)相同,有唯一解。
当m<nm<nm<n, 有无穷解,一特解为x=AT(AAT)−1yx=A^T(AA^T)^{-1}yx=AT(AAT)−1y
其中AT(AAT)−1A^T(AA^T)^{-1}AT(AAT)−1被标记为右逆AR−1A^{-1}_RAR−1。
当AAA的行为单位正交基时,x=ATyx=A^Tyx=ATy。(卷积转置可视化原理)。
(3) rank[A]<min(m,n)rank[A]<min(m,n)rank[A]<min(m,n), 有无穷解:
x=A+y+(I−A+A)cx=A^+y+(I-A^+A)cx=A+y+(I−A+A)c
其中A+A^+A+为Moore Penrose逆,c逆,c逆,c为Rn\R^nRn中任意向量,解空间维度为n−rank[A]n-rank[A]n−rank[A]。
对于无穷解的情况,一般取其极小范数解:
∣∣x0∣∣2=minAx=y∣∣x∣∣2||x_0||_2=\min\limits_{Ax=y}||x||_2∣∣x0∣∣2=Ax=ymin∣∣x∣∣2,
x0=A+y。x_0=A^+y。x0=A+y。
对于不相容方程组:
(1)对于不相容方程组,基于最小二乘原则,可以得到最小二乘问题:
minx∣∣Ax−y∣∣2\min\limits_x||Ax-y||_2xmin∣∣Ax−y∣∣2
则可以取得最小值的全部解为x0=A+y+(I−A+A)cx_0=A^+y+(I-A^+A)cx0=A+y+(I−A+A)c,ccc为任意Rn\R^nRn。注意当A+A=IA^+A=IA+A=I,(rank[A]=nrank[A]=nrank[A]=n)时,有唯一解取得最小值。
因此不相容方程组的最小二乘解一般不唯一,常取最小二范数解x0=A+yx_0=A^+yx0=A+y,称为极小范数最小二乘解。
(2)如果对解加上其他约束,则得到其他形式的解[deep learning. p61]。比如约束xTx≤1x^Tx\leq 1xTx≤1:
minx12∣∣Ax−y∣∣22\min\limits_x\frac{1}{2}||Ax-y||_2^2xmin21∣∣Ax−y∣∣22
s.t. xTx≤1s.t.~~~x^Tx\leq 1s.t. xTx≤1
(3)最小二乘标准形式(带正则项的最小二乘)[PRML,p144]
minx12∣∣Ax−y∣∣22+λ2∣∣x∣∣22\min\limits_x\frac{1}{2}||Ax-y||_2^2+\frac{\lambda}{2}||x||_2^2 xmin21∣∣Ax−y∣∣22+2λ∣∣x∣∣22
解析解为x0=(λI+ATA)−1ATyx_0=(\lambda I+A^TA)^{-1}A^Tyx0=(λI+ATA)−1ATy。
Moore Penrose伪逆
最后我们看Moore Penrose伪逆的求法:
(1) [deep learning,p 28]
A+=limα→0(ATA+αI)−1ATA^+=\lim\limits_{\alpha\rightarrow0}(A^TA+\alpha I)^{-1}A^TA+=α→0lim(ATA+αI)−1AT
或
A+=VD+UTA^+=VD^+U^TA+=VD+UT
其中U,D,VU,D,VU,D,V来自于SVD分解。A=UDVTA=UDV^TA=UDVT。
(2)[PRML,p142]
A+=(ATA)−1ATA^+=(A^TA)^{-1}A^TA+=(ATA)−1AT
(3)
利用SVD分解[矩阵论简明教程,p142]:
A+=VD+UTA+=V[Σ−1000]UTA^+=VD^+U^T
A^+=V
\begin{bmatrix}
\Sigma^{-1}& 0\\
0 & 0
\end{bmatrix}
U^TA+=VD+UTA+=V[Σ−1000]UT
其中A=UDVTA=UDV^TA=UDVT。
或者利用满秩[矩阵论简明教程,p148]:
A+=GT(GGT)−1(FTF)−1FTA^+=G^T(GG^T)^{-1}(F^TF)^{-1}F^TA+=GT(GGT)−1(FTF)−1FT
A=FG,F∈Rrm×r,G∈Rrr×nA=FG,F\in\R_r^{m\times r},G\in\R_{r}^{r\times n}A=FG,F∈Rrm×r,G∈Rrr×n。
列满秩时:A+=(ATA)−1ATA^+=(A^TA)^{-1}A^TA+=(ATA)−1AT
行满秩时:A+=AT(AAT)−1A^+=A^T(AA^T)^{-1}A+=AT(AAT)−1
https://zhuanlan.zhihu.com/p/91859104
本文深入探讨了线性方程组的求解方法,包括超定、适定和欠定方程组的解决策略。通过分析矩阵的秩和MoorePenrose逆,阐述了不同情况下方程组的解的存在性和唯一性,并介绍了最小二乘解和极小范数解的概念。

1万+

被折叠的 条评论
为什么被折叠?



