SVD求解Ax=0

12 篇文章 1 订阅
11 篇文章 1 订阅

AX=0的解

对于齐次线性方程组:
A x = 0 ( A ∈ R m × n ) Ax=0(A\in R^{m \times n}) Ax=0(ARm×n)
m是方程数,n是未知数的个数

  • 当r(A)=r(A ) =n时:

    当A是方阵(m=n)时:

    ​ 齐次线性方程组有非零解的充要条件是它的系数行列式|A|=0,否则只有唯一零解。

    当A(m>n)时-超定方程:

    ​ 只有零解,但是零解一般而言并不是我们想要的,因此需要求它的一个最小二乘解,因为解并不唯一,需要一个合理的约束只求||x||=1的解

  • 当r(A)=r(A )<n,方程组有非零解,这是个充要条件

    而且此时基础解系并不唯一(如果x是方程组的一个解,那么对于任意常数k,kx也是方程组的一个解),方程组必有含 n - r(A) 个向量的基础解系,
    若 ξ 1 , ξ 2 , . . . , ξ n − r 是 方 程 组 的 基 础 解 系 , 那 么 此 时 方 程 组 的 解 可 以 表 示 为 : x = k 1 ξ 1 + k 2 ξ 2 + . . . + K n − r ξ n − r 若\xi_1,\xi_2,...,\xi_{n-r}是方程组的基础解系,那么此时方程组的解可以表示为:\\ x=k_1\xi_1+k_2\xi_2+...+K_{n-r}\xi_{n-r} ξ1ξ2,...,ξnrx=k1ξ1+k2ξ2+...+Knrξnr

注:

n个方程n个未知量的线性方程组有唯一解的充要条件是其系数行列式不等于0,这是线性代数中最重要的结论之一。当线性方程组的系数行列式等于0时,该线性方程组可能无解也可能有无数解,而由于齐次方程组必有零解,故系数行列式等于0时齐次方程组不可能无解,所以有无数组解,也就是有非零解。如果齐次方程组的系数行列式不等于0,那么它有唯一解,又因其必有零解,故这时齐次方程组只有零解。

https://wenku.baidu.com/view/d216b8ba1eb91a37f0115c2f.html

AX=0的最小二乘解

在实际中,所关心的并非是齐次最小二 乘问题的零解,而是它的非零解。因此,总是考虑相应的约束最小二乘问题:
m i n ∣ ∣ A x ∣ ∣ 2 2 s u b j e c t t o ∣ ∣ x ∣ ∣ 2 = 1 min||Ax||^2_2 \\ subject to ||x||_2=1 minAx22subjecttox2=1
SVD求解:

奇异值分解定义:

有一个m×n的实数矩阵A,我们想要把它分解成如下的形式:
A = U Σ V T A=U\Sigma V^T A=UΣVT
其中UV均为单位正交阵

具体计算可以参考:https://byjiang.com/2017/11/18/SVD/

或者:奇异值分解与应用
m i n ∣ ∣ A x ∣ ∣ 2 2 = m i n ∣ ∣ U Σ V T x ∣ ∣ 2 2 = m i n ∣ ∣ Σ V T x ∣ ∣ 2 2 s u b j e c t t o ∣ ∣ x ∣ ∣ 2 = 1 min||Ax||^2_2 =min||U\Sigma V^Tx||^2_2=min||\Sigma V^Tx||^2_2 \\ subject to ||x||_2=1 minAx22=minUΣVTx22=minΣVTx22subjecttox2=1

设 y = V T x 有 : m i n ∣ ∣ Σ V T x ∣ ∣ 2 2 = m i n ∣ ∣ Σ y ∣ ∣ 2 2 s u b j e c t t o ∣ ∣ y ∣ ∣ 2 = 1 设y=V^Tx \\ 有:min||\Sigma V^Tx||^2_2=min||\Sigma y||^2_2 \\ subject to ||y||_2=1 y=VTxminΣVTx22=minΣy22subjecttoy2=1

问题可解。

Ax=0的解是ATA/AAT的最小特征值的特征矢量:

《计算机视觉中的数学方法》推论8.4.6

上述问题等价于(构造成二次型形式求解最小范数问题):
m i n x T A T A x s u b j e c t t o ∣ ∣ x ∣ ∣ 2 = 1 min x^TA^TAx \\ subject to ||x||_2=1 minxTATAxsubjecttox2=1
注:
当 A X = 0 时 , A T A X = 0 , 所 以 A X = 0 的 解 是 A T A X = 0 的 解 。 当 A T A X = 0 时 , 等 式 两 边 同 时 乘 以 X T , 得 X T A T A X = 0 , 也 就 是 ( A X ) T A X = 0 。 而 ( A X ) T A X = ∣ ∣ A X ∣ ∣ , 称 为 A X 的 范 数 , 它 的 取 值 大 于 等 于 0 , 当 且 仅 当 A X = 0 时 , ∣ ∣ A X ∣ ∣ = 0 。 所 以 A T A X = 0 时 , A X = 0 , 即 A T A X = 0 的 解 是 A X = 0 的 解 。 当AX=0时,A^TAX=0,所以AX=0的解是A^TAX=0的解。\\当A^TAX=0时,等式两边同时乘以X^T,得X^TA^TAX=0,\\也就是(AX)^TAX=0。\\而(AX)^TAX=||AX||,称为AX的范数,它的取值大于等于0,当且仅当AX=0时,||AX||=0。\\ 所以A^TAX=0时,AX=0,即A^TAX=0的解是AX=0的解。 AX=0ATAX=0AX=0ATAX=0ATAX=0XTXTATAX=0AXTAX=0AXTAX=AXAX0AX=0AX=0ATAX=0AX=0ATAX=0AX=0
然后SVD求解

主要利用如下性质:
A A T = U Σ V T V Σ T U T = U Σ Σ T U T A T A = V Σ T U T U Σ V T = V Σ T Σ V T AA^T=U\Sigma V^TV\Sigma^TU^T=U\Sigma\Sigma^TU^T\\ A^TA=V\Sigma^T U^TU\Sigma V^T=V\Sigma^T\Sigma V^T\\ AAT=UΣVTVΣTUT=UΣΣTUTATA=VΣTUTUΣVT=VΣTΣVT

Σ Σ T = [ σ 1 2 0 ⋯ 0 0 σ 2 2 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ σ m 2 ] , Σ T Σ = [ σ 1 2 0 ⋯ 0 0 σ 2 2 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ σ n 2 ] \Sigma\Sigma^T= \left[ \begin{matrix} \sigma_1^2 &amp; 0 &amp; \cdots &amp; 0 \\ 0 &amp; \sigma_2^2 &amp; \cdots &amp; 0 \\ \vdots &amp; \vdots &amp; \ddots &amp; \vdots \\ 0 &amp; 0 &amp; \cdots &amp; \sigma_m^2 \\ \end{matrix} \right], \Sigma^T\Sigma= \left[ \begin{matrix} \sigma_1^2 &amp; 0 &amp; \cdots &amp; 0 \\ 0 &amp; \sigma_2^2 &amp; \cdots &amp; 0 \\ \vdots &amp; \vdots &amp; \ddots &amp; \vdots \\ 0 &amp; 0 &amp; \cdots &amp; \sigma_n^2 \\ \end{matrix} \right] ΣΣT=σ12000σ22000σm2,ΣTΣ=σ12000σ22000σn2

OpenCV求解SVD

https://blog.csdn.net/weixin_42587961/article/details/96865137

为什么Ax=0的SVD解是V的最后一列

https://blog.csdn.net/weixin_42587961/article/details/97241162

参考

《计算机视觉中的多视图几何》P412

《计算机视觉中的数学方法》第八章

  • 6
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值