今天學習svd原理,檢視一些博文與資料,為了方便複習,做一下學習筆記。
svd不僅是乙個數學問題,在工程應用中的很多地方都有它的身影,比如前面講的pca,掌握了svd原理後再去看pca那是相當簡單的,在推薦系統方面,svd更是名聲大噪,將它應用於推薦系統的是netflix大獎的獲得者koren,可以在google上找到他寫的文章。
設a∈定義cm×n
r ,那麼存在b∈
cm×r
r ,c∈
cr×n
r ,使得a=
bc,其中b為列滿秩矩陣,c為行滿秩矩陣;這樣的分解為矩陣的滿秩分解。
aa正交變換t=e (
e 為單位矩陣,at
表示「矩陣a的轉置矩陣」。)或at
a=e ,則n階實矩陣a稱為正交矩陣。
正交矩陣是在歐幾里得空間裡的叫法,在酉空間裡叫酉矩陣,乙個正交矩陣對應的變換叫正交變換,這個變換的特點是不改變向量的尺寸和向量間的夾角,那麼它到底是個什麼樣的變換呢?看下面這張圖1:
通過圖1,可知:
向量x=總結[ab]
,e1與e2
相互正交的單位向量,e1
′ 與e2
′ 相互正交的單位向量;設oa
′=m⋅
e1,ob
′=m⋅
e2,其中
m 為線性變換的矩陣(即將座標旋轉)。設定m
⋅e1在
e11 模為σ1
,m⋅e2
在e21 的模為σ2
,則 m⋅
e1=σ
1⋅e1
′(1)
m⋅e2=σ2
⋅e2′
(2)
通過向量的性質我們知道: x
=(e1
⋅x)⋅
e1+(
e2⋅x
)⋅e2
(3) mx
=(e1
⋅x)m
⋅e1+
(e2⋅
x)m⋅
e2(4)
因為(1)與(2),則: m
x=(e
1⋅x)
⋅σ1⋅
e1′+
(e2⋅
x)⋅σ
2⋅e2
′(5)
在(5)中 e
1⋅x 與 e
2⋅x 是向量的內積,我們轉換成向量轉置來表示: m
x=(e
1tx)
⋅σ1⋅
e1′+
(e2t
x)⋅σ
2⋅e2
′(6)
m=e1′⋅σ
1⋅e1
t+e2
′⋅σ2
⋅(e2
t)(7)
通過(7)知道: m
=uσv
t(8)
其中 u
矩陣的列向量分別是e1
′和 e
2′,
σ 是乙個對角矩陣,對角元素分別是對應的σ1 和 σ2,v矩陣的列向量分別是 e
1 和 e
2 。上角標t 表示矩陣 v
的轉置。
這就表明任意的矩陣 m 是可以分解成三個矩陣。v表示了原始域的標準正交基,u表示經過m 變換後的co-domain的標準正交基,σ表示了v 中的向量與u中相對應向量之間的關係。
未完待續。。。。。。。
奇異值分解 SVD 原理詳解及推導
在網上看到有很多文章介紹svd的,講的也都不錯,但是感覺還是有需要補充的,特別是關於矩陣和對映之間的對應關係。前段時間看了國外的一篇文章,叫a singularly valuable decomposition the svd of a matrix,覺得分析的特別好,把矩陣和空間關係對應了起來。本...
奇異值分解 SVD
最近不小心接觸到了svd,然後認真看下去之後發現這東西真的挺強大的,把乙個推薦問題轉化為純數學矩陣問題,看了一些部落格,把乙個寫個比較具體的博文引入進來,給自己看的,所以把覺得沒必要的就去掉了,博文下面附原始部落格位址。一 基礎知識 1.矩陣的秩 矩陣的秩是矩陣中線性無關的行或列的個數 2.對角矩陣...
SVD奇異值分解
原文出處 今天我們來講講奇異值分解和它的一些有意思的應用。奇異值分解是乙個非常,非常,非常大的話題,它的英文是 singular value decomposition,一般簡稱為 svd。下面先給出它大概的意思 對於任意乙個 m n 的矩陣 m 不妨假設 m n 它可以被分解為 m udv t 其...