Re: [理工] [線代]-approximation
回一篇先講原理比較清楚一點@@
A = UΣV^T 可以看成 A = (UΣ)V^T
令 UΣ = (σ1u1,σ2u2,...,σn un)
這樣就能將A用外積形式表示:
A = σ1u1V1^T + σ2u2V2^T +...+σn un Vn^T 即單秩矩陣的線性組合
這個式子應用在影像處理等大量資料的分析時很好用
當矩陣很大時(rank很大) 可以利用單秩矩陣的組合來近似
在誤差範圍內找最低秩數的矩陣來代表原矩陣數據
如此不會影響精確度 更可大幅減少資料量 這就是SVD很神的地方@@
而這個方法稱作 low rank approximation
至於這題 A = [ -1 1 0]
[ 0 -1 1]
你前一篇有算過SVD了 所以直接用
T
A = [-1/√2 -1/√2] [1 0 0] [ 1/√2 1/√6 1/√3]
[-1/√2 1/√2] [0 √3 0] [ 0 -2/√6 1/√3]
[-1/√2 1/√6 1/√3]
T T
= 1 [-1/√2] [ 1/√2] + √3 [-1/√2] [ 1/√6]
[-1/√2] [ 0] [ 1/√2] [-2/√6]
[-1/√2] [ 1/√6]
題目說求rank 1 approximation of A
所以σ取1或√3 應該有兩解: [-0.5 0 0.5] 或 [-0.5 1 -0.5]
[-0.5 0 0.5] [ 0.5 -1 0.5]
這兩個矩陣即是A的rank 1 近似
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.123.66.165
→
03/22 14:02, , 1F
03/22 14:02, 1F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):