日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

奇异值分解(SVD) --- 几何意义2

發(fā)布時(shí)間:2025/7/25 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 奇异值分解(SVD) --- 几何意义2 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在這篇文章中,我們以幾何的視角去觀察矩陣奇異值分解的過程,并且列舉一些奇異值分解的應(yīng)用。

介紹

矩陣奇異值分解是本科數(shù)學(xué)課程中的必學(xué)部分,但往往被大家忽略。這個(gè)分解除了很直觀,更重要的是非常具有實(shí)用價(jià)值。譬如,Netflix(在線電影租賃公司)對(duì)能夠提高其電影推薦系統(tǒng)準(zhǔn)確率10%的人提供100萬美元的豐厚獎(jiǎng)金。令人驚奇的是,這個(gè)看似簡單的問題卻非常具有挑戰(zhàn)性,相關(guān)的團(tuán)隊(duì)正在使用非常復(fù)雜的技術(shù)解決之,而這些技術(shù)的本質(zhì)都是奇異值分解。

奇異值分解簡單來講,就是以一種方便快捷的方式將我們感興趣的矩陣分解成更簡單且有直觀意義的矩陣的乘積。本文以幾何的視角去觀察奇異值分解的過程,并且列舉一些奇異值分解的應(yīng)用。

?線性變換的幾何解釋

首先,我們來看一個(gè)只有兩行兩列的簡單矩陣。第一個(gè)例子是對(duì)角矩陣

從幾何的角度,矩陣可以描述為一個(gè)變換:用矩陣乘法將平面上的點(diǎn)(x, y)變換成另外一個(gè)點(diǎn)(3x, y):

這種變換的效果如下:平面在水平方向被拉伸了3倍,在豎直方向無變化。

?

再看下這個(gè)矩陣

它會(huì)產(chǎn)生如下的效果

不過這張圖貌似也并沒有能夠簡潔、清晰的描述出上述矩陣變換的幾何效果。然而,如果我們把網(wǎng)格旋轉(zhuǎn)45度,再觀察一下。

?

啊哈!我們看到現(xiàn)在這個(gè)新的網(wǎng)格被轉(zhuǎn)換的方式與原始的網(wǎng)格被對(duì)角矩陣轉(zhuǎn)換的方式是完全一致的:網(wǎng)格在某一方向上被拉伸了3倍。

當(dāng)然這是一種特殊的結(jié)果,因?yàn)榫仃嘙是對(duì)稱的,換句話說,M的轉(zhuǎn)置(通過互換矩陣的對(duì)角項(xiàng)得到)還等于M。如果我們有一個(gè)2*2的對(duì)稱矩陣,可以證明,我們總是可以通過在平面上旋轉(zhuǎn)網(wǎng)格,使得矩陣變換的效果恰好是在兩個(gè)垂直的方向上對(duì)網(wǎng)格的拉伸或鏡面反射。換句話說,對(duì)稱矩陣表現(xiàn)得像對(duì)角矩陣一樣。

說的更數(shù)學(xué)化一些,給定一個(gè)對(duì)稱矩陣M,我們可以找到一組正交向量vi使得Mvi等于vi和標(biāo)量的乘積;那就是

Mvi?= λivi

這里λi是標(biāo)量。從幾何意義上講,這意味著當(dāng)vi乘上矩陣M時(shí)被簡單地拉伸或者反射了。因?yàn)檫@個(gè)性質(zhì),我們稱vi是M的特征向量;標(biāo)量λi被稱為特征值。一個(gè)可以被證明的重要的事實(shí)是:對(duì)稱矩陣不同的特征值對(duì)應(yīng)的特征向量是正交的。如果我們把對(duì)稱矩陣的特征向量和網(wǎng)格對(duì)齊,那么矩陣對(duì)網(wǎng)格的拉伸或反射的方式,與矩陣對(duì)特征向量的拉伸或反射的方式,兩者是完全一致的。

上述線性變換的幾何解釋非常簡單:網(wǎng)格在某個(gè)方向上被簡單地拉伸了。對(duì)于更一般的矩陣,我們將要問的問題是: 能否能找到某個(gè)正交網(wǎng)格,在矩陣變換之下,變成另一個(gè)正交網(wǎng)格? 讓我們最后來考慮一個(gè)非對(duì)稱矩陣的例子:

這個(gè)矩陣產(chǎn)生的幾何效果是切變(shear)。

?

很容易找到一族沿水平軸的特征向量。但是從上圖可以看出,這些特征向量無法把某個(gè)正交網(wǎng)格變換到另外一個(gè)正交網(wǎng)格。盡管如此,我們先嘗試將網(wǎng)格旋轉(zhuǎn)30度,然后看看發(fā)生了什么,

?

注意右側(cè)紅色平行四邊形在原點(diǎn)形成的夾角已經(jīng)增加。(譯者注:這暗示了,如果我們?cè)黾有D(zhuǎn)角度,平行四邊形在原點(diǎn)形成的夾角可能增加到90度,從而變成正交網(wǎng)格。) ?接下來將左側(cè)網(wǎng)格旋轉(zhuǎn)到60度:

?

右側(cè)的網(wǎng)格現(xiàn)在幾乎是正交的。事實(shí)上,如果將左側(cè)網(wǎng)格旋轉(zhuǎn)58.28度,左右兩個(gè)網(wǎng)格就都是正交的了。

?

奇異值分解

2*2矩陣奇異值分解的幾何實(shí)質(zhì)是:對(duì)于任意2*2矩陣,總能找到某個(gè)正交網(wǎng)格到另一個(gè)正交網(wǎng)格的轉(zhuǎn)換與矩陣變換相對(duì)應(yīng)。

用向量解釋這個(gè)現(xiàn)象:選擇適當(dāng)?shù)恼坏膯挝幌蛄縱1和v2,向量Mv1和Mv2也是正交的。

?

用u1和u2來表示Mv1和Mv2方向上的單位向量。Mv1和Mv2的長度用σ1?和 σ2來表示——量化了網(wǎng)格在特定方向上被拉伸的效果。σ1?和 σ2被稱為M的奇異值。(在本例中,奇異值就是黃金比例及其倒數(shù),但它在此不是很重要。)

由此,我們有

Mv1?= σ1u1
Mv2?= σ2u2

現(xiàn)在給出矩陣M作用于向量x的簡單描述。因?yàn)橄蛄縱1和v2是正交的單位向量,我們有

x?= (v1?·?x)?v1?+ (v2?·?x)?v2

這意味著

Mx?= (v1?·?x)?Mv1?+ (v2?·?x)?Mv2
Mx?= (v1?·?x) σ1u1?+ (v2?·?x) σ2u2

注意點(diǎn)積可以用向量的轉(zhuǎn)置來計(jì)算

v?·?x?=?vTx

我們有

Mx?=?u1σ1?v1Tx?+?u2σ2?v2Tx
M?=?u1σ1?v1T?+?u2σ2?v2T

通常表述成

M =?UΣVT

這里U是列向量u1和u2組成的矩陣,Σ是非零項(xiàng)為σ1?和 σ2的對(duì)角矩陣,V是列向量v1和v2組成的矩陣。帶有上標(biāo)T的矩陣V是矩陣V的轉(zhuǎn)置。

上面描述了怎樣將矩陣M分解成三個(gè)矩陣的乘積:V描述了原始空間中的正交基,U描述了相關(guān)空間的正交基,Σ描述了V中的向量變成U中的向量時(shí)被拉伸的倍數(shù)。

怎樣做奇異值分解?

奇異值分解的魅力在于任何矩陣都可以找到奇異值。怎么做?讓我們來看下先前的例子,這回在空間中加入單位圓。在變換后的空間中,單位圓變成了橢圓,其長軸和短軸定義了正交網(wǎng)格。

?

注意長軸和短軸用Mv1和Mv2定義。這兩個(gè)向量因此成為單位圓里的所有向量中最長的和最短的向量。

?

換句話講,單位圓上的向量函數(shù)|Mx|在v1上有最大值而在v2上有最小值。這就把原始問題簡化為了一個(gè)標(biāo)準(zhǔn)的微積分問題:我們?cè)趩挝粓A上去優(yōu)化一個(gè)函數(shù)的極值。而這個(gè)函數(shù)的極值點(diǎn)正好恰恰是矩陣MTM的特征向量。由于該矩陣是對(duì)稱的,其不同的特征值對(duì)應(yīng)的特征向量之間是正交的。這就產(chǎn)生了向量族vi

奇異值通過σi?= |Mvi|得到,ui是Mvi方向上的單位向量。但是ui之間為什么是正交的呢?

為了解釋這個(gè)問題,我們假設(shè)σi和σj是不同的奇異值。我們有

Mvi?= σiui
Mvj?= σjuj

讓我們從表達(dá)式MviMvj開始,為了方便,假定奇異值是非零的。一方面,MviMvj是零,因?yàn)樽鳛榫仃嘙TM的特征向量vi之間是正交的:

Mvi?·?Mvj?=?viTMT?Mvj?=?vi?·?MTMvj?= λjvi?·?vj?= 0

另一方面,我們有

Mvi?·?Mvj?= σiσj?ui?·?uj?= 0

因此ui和uj是正交的,所以我們已經(jīng)找到能夠轉(zhuǎn)換成某個(gè)正交向量集ui的正交向量集vi。奇異值描述了在不同方向上拉伸的倍數(shù)。

在實(shí)踐中,這不是獲得矩陣奇異值分解的步驟,因?yàn)檫@個(gè)方法不是特別高效,或者在數(shù)值計(jì)算中的表現(xiàn)也不夠好。

另外一個(gè)例子

讓我們看一個(gè)奇異矩陣

矩陣的幾何效果如下:

在這個(gè)例子中,第二個(gè)奇異值是零,所以我們可以這樣寫:

M =?u1σ1?v1T

換句話講,如果一些奇異值為零,相應(yīng)的項(xiàng)將不會(huì)出現(xiàn)在M的分解中。因此,矩陣M的秩(即線性獨(dú)立的行或列的個(gè)數(shù))等于非零奇異值的個(gè)數(shù)。

數(shù)據(jù)壓縮

奇異值分解可以高效的表示數(shù)據(jù)。例如,假設(shè)我們想傳送下列圖片,包含15*25個(gè)黑色或者白色的像素陣列。

因?yàn)樵趫D像中只有三種類型的列(如下),它可以以更緊湊的形式被表示。

? ? ??? ? ??

我們用15*25的矩陣來表示這個(gè)圖像,其中每個(gè)元素非0即1,0表示黑色像素,1表示白色像素。如下所示,共有375個(gè)元素。

如果對(duì)M進(jìn)行奇異值分解的話,我們只會(huì)得到三個(gè)非零的奇異值。

σ1?= 14.72
σ2?= 5.22
σ3?= 3.31

因此,矩陣可以如下表示

M=u1σ1?v1T?+?u2σ2?v2T?+?u3σ3?v3T

我們有三個(gè)包含15個(gè)元素的向量vi,三個(gè)包含25個(gè)元素的向量ui,以及三個(gè)奇異值σi。這意味著我們可以只用123個(gè)數(shù)字就能表示這個(gè)矩陣而不是出現(xiàn)在矩陣中的375個(gè)元素。在這種方式下,我們看到在矩陣中有3個(gè)線性獨(dú)立的列,也就是說矩陣的秩是3。

降噪

從之前的例子看出我們利用了矩陣中有很多奇異值為0的特殊性。通常來說,越大的奇異值對(duì)應(yīng)的信息越令人感興趣。例如,想象我們用掃描儀將上面的圖片輸入到我們的計(jì)算機(jī)。但是,我們的掃描機(jī)會(huì)在圖片上產(chǎn)生一些缺陷(通常稱作“噪聲”)。

我們以同樣的方式處理:用15*25矩陣來表示圖像,然后進(jìn)行奇異值分解。我們得到以下奇異值:

σ1?= 14.15
σ2?= 4.67
σ3?= 3.00
σ4?= 0.21
σ5?= 0.19

σ15?= 0.05

很明顯,頭三個(gè)奇異值是最重要的,所以我們假定其他的都是圖像上的噪聲,并假設(shè)假設(shè)

M≈u1σ1?v1T?+?u2σ2?v2T?+?u3σ3?v3T

這就產(chǎn)生了如下的優(yōu)化后的圖片

Noisy image???????????? Improved image

數(shù)據(jù)分析

我們?cè)谑占瘮?shù)據(jù)的時(shí)候經(jīng)常會(huì)遇到噪聲:無論工具多好,總有一些誤差在測量過程中。如果我們記得大的奇異值指向矩陣中重要的特征,很自然地想到用奇異值分解去研究被收集的數(shù)據(jù)。

例如,我們收集了一些數(shù)據(jù)如下:

如下是我們獲得的數(shù)據(jù),將其放入矩陣中:

-1.030.74-0.020.51-1.310.990.69-0.12-0.721.11
-2.231.61-0.020.88-2.392.021.62-0.35-1.672.46

然后進(jìn)行奇異值分解。我們得到奇異值

σ1?= 6.04
σ2?= 0.22

其中第一個(gè)奇異值遠(yuǎn)遠(yuǎn)大于另外一個(gè),很安全的假設(shè)小的奇異值σ2是數(shù)據(jù)中的噪聲并且可以理想地認(rèn)為是0。這個(gè)例子中的矩陣的秩是1,意味著所有數(shù)據(jù)都位于ui定義的線上。

這個(gè)簡短的例子引出了主成分分析領(lǐng)域,展示了一系列用奇異值分解來檢測數(shù)據(jù)依賴和冗余的技術(shù)。

同樣地,奇異值分解可以用來檢測數(shù)據(jù)中的簇,這就解釋了奇異值分解可以用來嘗試優(yōu)化Netflix的電影推薦系統(tǒng)。程序會(huì)根據(jù)你看過的電影來對(duì)與你看過的電影相似的未看過的電影進(jìn)行排序。推薦系統(tǒng)會(huì)挑選出你未看過的電影集合中預(yù)估分高的電影。

總結(jié)

如文章的開頭所述,奇異值分解應(yīng)該是本科數(shù)學(xué)專業(yè)線性代數(shù)課程的核心部分。除了擁有無比簡單的幾何解釋,奇異值分解提供了將線性代數(shù)想法應(yīng)用于現(xiàn)實(shí)的極其有效的技術(shù)。然而大家對(duì)本科線性代數(shù)課程的通常都缺乏足夠的重視。

本文可能有點(diǎn)印象派的風(fēng)格:我的目的是為奇異值分解背后的中心思想提供直觀的解釋,并通過具體的例子來說明怎么將奇異值分解的思想付諸實(shí)踐。

References:

  • Gilbert Strang,?Linear Algebra and Its Applications. Brooks Cole.Strang’s book is something of a classic though some may find it to be a little too formal.
  • William H. Press?et al,?Numercial Recipes in C: The Art of Scientific Computing. Cambridge University Press.Authoritative, yet highly readable. Older versions?are available online.
  • Dan Kalman,?A Singularly Valuable Decomposition: The SVD of a Matrix,?The College Mathematics Journal?27?(1996), 2-23.Kalman’s article, like this one, aims to improve the profile of the singular value decomposition. It also a description of how least-squares computations are facilitated by the decomposition.
  • If You Liked This, You’re Sure to Love That,?The New York Times, November 21, 2008.This article describes Netflix’s prize competition as well as some of the challenges associated with it.

本文鏈接:奇異值分解(We Recommend a Singular Value Decomposition)
本站文章若無特別說明,皆為原創(chuàng),轉(zhuǎn)載請(qǐng)注明來源:火光搖曳,謝謝!^^


總結(jié)

以上是生活随笔為你收集整理的奇异值分解(SVD) --- 几何意义2的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。