SVD求解线性方程组

2 篇文章 0 订阅
1 篇文章 0 订阅

SVD分解

对于任一给定的矩阵 A m × n \boldsymbol{A}_{m\times n} Am×n,都存在这样的分解:
A = U D V T \boldsymbol{A}=\boldsymbol{U}\boldsymbol{D}\boldsymbol{V}^T A=UDVT
这里:
U \boldsymbol{U} U是一个 ( m × m ) (m\times m) (m×m)正交矩阵
D \boldsymbol{D} D是一个 ( m × n ) (m\times n) (m×n)对角矩阵
V \boldsymbol{V} V是一个 ( n × n ) (n\times n) (n×n)正交矩阵

D \boldsymbol{D} D中的对角元叫做 A \boldsymbol{A} A奇异值
U \boldsymbol{U} U中的列向量叫做 A \boldsymbol{A} A左奇异向量
V \boldsymbol{V} V中的列向量叫做 A \boldsymbol{A} A右奇异向量

SVD解优化问题

解非齐次线性方程组(Ax = b)

问题等价于 min ⁡ ∥ A x − b ∥ 2 \min\parallel \boldsymbol{Ax}-\boldsymbol{b}\parallel^2 minAxb2,是一个非线性优化问题。
对A进行SVD分解
min ⁡ ∥ A x − b ∥ 2 = min ⁡ ∥ U D V T x − b ∥ 2 = min ⁡ ∥ D V T x − U T b ∥ 2 \min\parallel \boldsymbol{Ax}-\boldsymbol{b}\parallel^2 \\ = \min \parallel \boldsymbol{U}\boldsymbol{D}\boldsymbol{V}^T \boldsymbol{x}-\boldsymbol{b}\parallel^2 \\ = \min \parallel \boldsymbol{D}\boldsymbol{V}^T \boldsymbol{x}- \boldsymbol{U}^T\boldsymbol{b}\parallel^2 minAxb2=minUDVTxb2=minDVTxUTb2
y = V T x \boldsymbol{y}=\boldsymbol{V}^T\boldsymbol{x} y=VTx, c = U T b \boldsymbol{c} = \boldsymbol{U}^T \boldsymbol{b} c=UTb,则 min ⁡ ∥ D V T x − U T b ∥ 2 \min \parallel \boldsymbol{D}\boldsymbol{V}^T \boldsymbol{x}- \boldsymbol{U}^T\boldsymbol{b}\parallel^2 minDVTxUTb2可以表述为 D y = c \boldsymbol{D}\boldsymbol{y}= \boldsymbol{c} Dy=c,方程组的解为 y i = c i / d i \boldsymbol{y}_i=\boldsymbol{c}_i/\boldsymbol{d}_i yi=ci/di

解齐次方程组(Ax = 0)

问题等价于 min ⁡ ∥ A x ∥ 2 \min\parallel \boldsymbol{Ax}\parallel^2 minAx2
上式转化为:
min ⁡ ∥ A x ∥ 2 = min ⁡ ∥ U D V T x ∥ 2 \min\parallel \boldsymbol{Ax}\parallel^2 \\=\min \parallel \boldsymbol{U}\boldsymbol{D}\boldsymbol{V}^T \boldsymbol{x}\parallel^2 minAx2=minUDVTx2
y = V T x \boldsymbol{y} = \boldsymbol{V}^T\boldsymbol{x} y=VTx,则上式变为
min ⁡ ∥ D y ∥ 2 \min \parallel \boldsymbol{Dy}\parallel^2 minDy2
D是一个对角矩阵,且对角元素按照递减的顺序排列,所以最小值即最优解在 y = ( 0 , 0 , . . . , 1 ) T \boldsymbol{y}=(0,0,...,1)^T y=(0,0,...,1)T时取得,此时 x = V y \boldsymbol{x}=\boldsymbol{V}\boldsymbol{y} x=Vy,所以最优解就是 V \boldsymbol{V} V的最小奇异值对应的列向量。比如,最小奇异值在第10行10列,那么解向量 x \boldsymbol{x} x就等于 V \boldsymbol{V} V的第10个列向量.

参考链接: link.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值