哪个网站简历做的好,网站建设要学会什么,办公室改造装修公司,elementor wordpress\qquad看了很多关于最小二乘解的博客#xff0c;事实上都没有找到自己想要的证明过程#xff0c;后来学了矩阵函数时才彻底搞明白了这件事情#xff0c;所以和大家简单分享如下#xff1a; \qquad已知矩阵Amn(m#xff1e;n)A_{mn}(m#xff1e;n)Amn(m#xff1e;n)是…\qquad看了很多关于最小二乘解的博客事实上都没有找到自己想要的证明过程后来学了矩阵函数时才彻底搞明白了这件事情所以和大家简单分享如下 \qquad已知矩阵Am×n(mn)A_{m×n}(mn)Am×n(mn)是列满秩的则超定方程组AxBAxBAxB的最小二乘解为 x(ATA)−1ATBx(A^TA)^{-1}A^TBx(ATA)−1ATB \qquad需要说明的是根据线性代数的知识rank(ATA)rank(AAT)rank(A)nrank(A^TA)rank(AA^T)rank(A)nrank(ATA)rank(AAT)rank(A)n而ATAA^TAATA的维数是n×n所以ATAA^TAATA一定可逆。事实上MATLAB矩阵求伪逆用的也是这个公式只不过令BEmBE_mBEm。 \qquad最小二乘法是让近似解代入的等式右边的B∗B^*B∗与BBB的度量最小为了和向量的模长兼容这里取的是矩阵的Frobenius范数详见这里因此问题转换为 x∗argminx∣∣B∗−B∣∣Fs.t.Ax∗B∗x^*arg\min_{x}||B^*-B||_F\\ s.t.Ax^*B^*x∗argxmin∣∣B∗−B∣∣Fs.t.Ax∗B∗ 为了简便起见我们仅讨论B是向量的情况事实上矩阵的情况也可以通过向量化的方法加以解决即AxbAxbAxb。
该问题也等价为 F(x)(Ax−b)T(Ax−b)x∗argminxF(x)F(x)(Ax-b)^T(Ax-b)\\ x^*arg\min_{x}F(x) F(x)(Ax−b)T(Ax−b)x∗argxminF(x) 将F(x)F(x)F(x)展开如下 F(x)(Ax−b)T(Ax−b)(xTA−bT)(Ax−b)xT(ATA)x−bTAx−ATbxbTbxT(ATA)x−2xT(ATb)bTb\begin{aligned} F(x)(Ax-b)^T(Ax-b)\\ (x^TA-b^T)(Ax-b)\\ x^T(A^TA)x-b^TAx-A^Tbxb^Tb\\ x^T(A^TA)x-2x^T(A^Tb)b^Tb \end{aligned} F(x)(Ax−b)T(Ax−b)(xTA−bT)(Ax−b)xT(ATA)x−bTAx−ATbxbTbxT(ATA)x−2xT(ATb)bTb 需要说明的是bTAxb^TAxbTAx是数因此它等于本身的转置等于ATbxA^TbxATbx下面就是求F(x)F(x)F(x)的最小值由于AATAA^TAAT是半正定的因为xT(AAT)x(ATx)T(ATx)≥0x^T(AA^T)x(A^Tx)^T(A^Tx)\geq0xT(AAT)x(ATx)T(ATx)≥0而因为之前我们证明了AAA列满秩时ATAA^TAATA可逆因此ATAA^TAATA必定没有零特征值所以AATAA^TAAT是正定的。这样F(x)F(x)F(x)的极值点就一定是极小值点即严格凸优化问题。下面无非就是求导的问题 ∂F(x)∂x(ATA(ATA)T)x−2(ATb)2(ATA)x−2(ATb)\frac{\partial F(x)}{\partial x}(A^TA(A^TA)^T)x-2(A^Tb)\\ 2(A^TA)x-2(A^Tb) ∂x∂F(x)(ATA(ATA)T)x−2(ATb)2(ATA)x−2(ATb) 令其等于0求得 x∗(ATA)−1ATbx^*(A^TA)^{-1}A^Tbx∗(ATA)−1ATb 这就是F(x)F(x)F(x)的极小值点即最小二乘解。 不清楚矩阵函数求导的同志可以看一下如下的公式: dA(x)B(x)dxdA(x)xB(x)A(x)dB(x)dxdxTAxdx(AAT)xdCTxdxdxTCdxC\begin{aligned} \frac{dA(x)B(x)}{dx}\frac{dA(x)}{x}B(x)A(x)\frac{dB(x)}{dx}\\ \frac{dx^TAx}{dx}(AA^T)x\\ \frac{dC^Tx}{dx}\frac{dx^TC}{dx}C \end{aligned} dxdA(x)B(x)xdA(x)B(x)A(x)dxdB(x)dxdxTAx(AAT)xdxdCTxdxdxTCC