SVD分解

Posted codedog123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SVD分解相关的知识,希望对你有一定的参考价值。

正奇异值:设$A=A_{m imes n}, rank(A)=p>0$,则$lambda ({A^H}A)$与$lambda (A{A^H})$恰有p个正特征根,${lambda _1} > 0,{lambda _2} > 0,...,{lambda _p} > 0$

$lambda ({A^H}A) = { {lambda _1},{lambda _2},...,{lambda _p},0,...,0} $  n-p个0

$lambda (A{A^H}) = { {lambda _1},{lambda _2},...,{lambda _p},0,...,0} $  m-p个0

称$sqrt {{lambda _1}} ,sqrt {{lambda _2}} ,,...,sqrt {{lambda _p}} $为正奇异值,记为$S^{+}(A) = { sqrt {{lambda _1}} ,sqrt {{lambda _2}} ,,...,sqrt {{lambda _p}} } $

正奇异值分解:任意$A=A_{m imes n}$,秩$rank(A)=r>0$,则有$A = PDelta {Q^H}$,

[Delta { m{ = }}left[ {egin{array}{*{20}{c}}
{sqrt {{lambda _1}} }&0&0&0\
0&{sqrt {{lambda _2}} }&0&0\
0&0&{...}&0\
0&0&0&{sqrt {{lambda _p}} }
end{array}} ight]]

P和Q为半酉阵,$P^HP=Q^HQ=I$

(1)求$lambda (A{A^H}) = lambda ({A^H}A) = { {lambda _1},{lambda _2},...,{lambda _p}$与特征向量$x_1,x_2,...,x_r$

(2)令这里的$x_1,x_2,...,x_r$得互相垂直

[P = left[ {egin{array}{*{20}{c}}
{frac{{A{X_1}}}{{left| {A{X_1}} ight|}}}&{frac{{A{X_2}}}{{left| {A{X_2}} ight|}}}&{...}&{frac{{A{X_r}}}{{left| {A{X_r}} ight|}}}
end{array}} ight]]

[Q = left[ {egin{array}{*{20}{c}}
{frac{{{X_1}}}{{left| {{X_1}} ight|}}}&{frac{{{X_2}}}{{left| {{X_2}} ight|}}}&{...}&{frac{{{X_r}}}{{left| {{X_r}} ight|}}}
end{array}} ight]]

$P=P_{m imes r}, Q=Q_{n imes r}$

(3)有$A = PDelta {Q^H}$

奇异值分解:

(1)根据正奇异值分解得到$A = PDelta {Q^H}

(2)扩充$W=[Q_{m imes r},Q_{m imes (n-r)}], V=[P_{n imes r},P_{n imes (n-r)}]$使得P和Q为从半酉阵扩展为酉阵

(3)$Delta_{r imes r}$0扩充为$Delta_{n imes n}$

[D { m{ = }}left[ {egin{array}{*{20}{c}}
Delta &0\
0&0
end{array}} ight]]

(4)有

[{ m{A = W}}left[ {egin{array}{*{20}{c}}
Delta &0\
0&0
end{array}} ight]{V^H}]

证明:

[{ m{A = W}}left[ {egin{array}{*{20}{c}}
Delta &0\
0&0
end{array}} ight]{V^H} = left[ {egin{array}{*{20}{c}}
{{P_{m imes r}}}&{{P_{m imes (m - r)}}}
end{array}} ight]{left[ {egin{array}{*{20}{c}}
Delta &0\
0&0
end{array}} ight]_{m imes n}}{left[ {egin{array}{*{20}{c}}
{{Q_{n imes r}}}&{{Q_{n imes (n - r)}}}
end{array}} ight]^H} = {P_{m imes r}}Delta {Q_{n imes r}} = A]

奇异值分解性质:

(1)方阵$A=A_{n imes n}$,有$S_1S_2...S_n=|det(A)|=$|lambda_1lambda_2...lambda_n|$

[lambda (A) = { {lambda _1},{lambda _1},...,{lambda _n}} ]

[lambda (A{A^H}) = lambda ({A^H}A) = { {t_1},{t_2},...,{t_n}} ]

[S(A) = { sqrt {{t_1}} ,sqrt {{t_2}} ,...,sqrt {{t_n}} } ]

有:

[sqrt {{t_1}} sqrt {{t_2}} ...sqrt {{t_n}}  = left| {det (A)} ight| = left| {{lambda _1}{lambda _1}...{lambda _n}} ight|]

证明:

[det ({A^H}A) = det (A{A^H}) = det ({A^H})det (A) = det (overline {{A^T}} )det (A) = overline {det (A)} det (A) = {left| {det (A)} ight|^2} Rightarrow det ({A^H}A) = {left| {det (A)} ight|^2}]

[det ({A^H}A) = {t_1}{t_2}...{t_n} = {({S_1}{S_2}...{S_n})^2}]

[{left| {det (A)} ight|^2} = {left| {{lambda _1}{lambda _1}...{lambda _n}} ight|^2}]

[{({S_1}{S_2}...{S_n})^2} = {left| {det (A)} ight|^2} = {left| {{lambda _1}{lambda _1}...{lambda _n}} ight|^2} Rightarrow ({S_1}{S_2}...{S_n}) = left| {det (A)} ight| = left| {{lambda _1}{lambda _1}...{lambda _n}} ight|]

所以:

[({S_1}{S_2}...{S_n}) = left| {det (A)} ight| = left| {{lambda _1}{lambda _1}...{lambda _n}} ight|]

 正SVD分解性质

(1)${ m{A}} = PDelta {Q^H} Rightarrow {A^H} = Q{Delta ^H}{P^H}$

(2)由正SVD:$A=P delta Q^H$:

[Delta { m{ = }}left[ {egin{array}{*{20}{c}}
{sqrt {{lambda _1}} }&0&0&0\
0&{sqrt {{lambda _2}} }&0&0\
0&0&{...}&0\
0&0&0&{sqrt {{lambda _p}} }
end{array}} ight]]

[P = left[ {egin{array}{*{20}{c}}
{{X_1}}&{{X_2}}&{...}&{{X_r}}
end{array}} ight]({X_1} ot {X_2} ot ... ot {X_r})]

[Q = left[ {egin{array}{*{20}{c}}
{{Y_1}}&{{Y_2}}&{...}&{{Y_r}}
end{array}} ight]({Y_1} ot {Y_2} ot ... ot {Y_r})]

有:

[A = left[ {egin{array}{*{20}{c}}
{{X_1}}&{{X_2}}&{...}&{{X_r}}
end{array}} ight]left[ {egin{array}{*{20}{c}}
{sqrt {{lambda _1}} }&0&0&0\
0&{sqrt {{lambda _2}} }&0&0\
0&0&{...}&0\
0&0&0&{sqrt {{lambda _r}} }
end{array}} ight]left[ {egin{array}{*{20}{c}}
{Y_1^H}\
{egin{array}{*{20}{c}}
{Y_2^H}\
{...}
end{array}}\
{Y_r^H}
end{array}} ight] = sqrt {{lambda _1}} {X_1}Y_1^H + ... + sqrt {{lambda _r}} {X_r}Y_r^H]

 可以令$sqrt {{lambda _1}}  ge sqrt {{lambda _2}}  ge ... ge sqrt {{lambda _r}} $

[A{ m{ = }}sqrt {{lambda _1}} {X_1}Y_1^H + ... + sqrt {{lambda _r}} {X_r}Y_r^H approx sqrt {{lambda _1}} {X_1}Y_1^H]

可以近似表达A

(3)

[A = {A_{m imes n}},{S^ + }(A) = { {S_1},{S_2},...,{S_r}}  Rightarrow tr({A^H}A) = tr(A{A^H}) = sum {{{left| {{a_{ij}}} ight|}^2}} ]

















































以上是关于SVD分解的主要内容,如果未能解决你的问题,请参考以下文章

【转】矩阵分解之SVD和SVD++

奇异值分解(SVD)

聊聊特征分解和SVD分解

SVD(奇异值分解)(转)

奇异值分解SVD

奇异值分解SVD和偏最小二乘奇异值分解PLSSVD