0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

機器學習進階之線性代數(shù)-奇異值分解(上)

jf_78858299 ? 來源:人工智能大講堂 ? 作者:人工智能大講堂 ? 2023-05-22 16:26 ? 次閱讀

機器學習(ML)中,最重要的線性代數(shù)概念之一是奇異值分解(SVD)和主成分分析(PCA)。在收集到所有原始數(shù)據(jù)后,我們如何發(fā)現(xiàn)其中的結構?例如,通過過去6天的利率,我們能否理解其組成并發(fā)現(xiàn)趨勢?

圖片

對于高維原始數(shù)據(jù),這變得更加困難,就像在一堆干草中找針一樣。SVD使我們能夠提取和解開信息。在本文中,我們將詳細介紹SVD和PCA。我們假設您具備基本的線性代數(shù)知識,包括秩和特征向量。如果您在閱讀本文時遇到困難,我建議您先刷新這些概念。在本文末尾,我們將回答上面的利率示例中的一些問題。本文還包含可選部分。根據(jù)您的興趣程度隨意跳過。

誤解

我發(fā)現(xiàn)一些非初學者可能會問這樣的問題。PCA是降維嗎?PCA確實可以降維,但它遠遠不止于此。我喜歡維基百科的描述:

主成分分析(PCA)是一種統(tǒng)計過程,它使用正交變換將一組可能存在相關性的變量(每個實體都具有各種數(shù)值)的觀測值轉換為一組線性不相關變量的值,這些變量稱為主成分。

從一個簡化的角度來看,PCA將數(shù)據(jù)線性轉換為彼此不相關的新屬性。對于機器學習而言,將PCA定位為特征提取,可能比將其定位為降維更能充分發(fā)揮其潛力。

SVD和PCA的區(qū)別是什么?SVD將矩陣對角化為易于操作和分析的特殊矩陣,從而為將數(shù)據(jù)分解成獨立成分奠定了基礎。PCA跳過了較不重要的成分。顯然,我們可以使用SVD來找到PCA,方法是在原始SVD矩陣中截斷較不重要的基向量。

矩陣對角化

在特征值和特征向量的文章中,我們描述了一種將n×n方陣A分解為以下形式的方法:

圖片

例如,

圖片

如果A是一個方陣并且A具有n個線性無關的特征向量,則可以將矩陣對角化。現(xiàn)在,是時候使用SVD為所有矩陣開發(fā)解決方案了。

奇異向量和奇異值

在線性代數(shù)中,矩陣AA?和A?A非常特殊??紤]任何m×n矩陣A,我們可以分別將其與A?相乘以形成AA?和A?A。這些矩陣:

  • 對稱的,
  • 方陣,
  • 至少是半正定的(特征值為零或正),
  • 這兩個矩陣具有相同的正特征值,
  • 這兩個矩陣的秩與A的秩相同,均為r。

此外,我們在機器學習中經(jīng)常使用的協(xié)方差矩陣也處于這種形式。由于它們是對稱的,我們可以選擇其特征向量為正交的(彼此垂直且長度為1)——這是對稱矩陣的基本性質。

圖片

現(xiàn)在,讓我們介紹一些在SVD中經(jīng)常使用的術語。我們在這里將AA?的特征向量稱為u?,將A?A的特征向量稱為v?,并將這些特征向量集合u和v稱為A的奇異向量。這兩個矩陣具有相同的正特征值。這些特征值的平方根被稱為奇異值。

到目前為止還沒有太多解釋,但讓我們先把所有東西放在一起,解釋將在接下來給出。我們將向量u?連接成U,將向量v?連接成V,以形成正交矩陣。

圖片

由于這些向量是正交的,很容易證明U和V遵循以下關系:

圖片

SVD

我們先從難的部分開始。SVD表明,任何矩陣A都可以分解為:

圖片

其中U和V是正交矩陣,其特征向量分別從AA?和A?A中選擇。S是一個對角矩陣,其r個元素等于AA?或A?A的正特征值的平方根(這兩個矩陣具有相同的正特征值)。對角線元素由奇異值組成。

圖片

即一個m×n矩陣可以分解為:

圖片

圖片

我們可以按不同的順序排列特征向量來產(chǎn)生U和V。為了標準化解決方案,我們將特征值較大的向量排在較小的值的前面。

圖片

與特征值分解相比,SVD適用于非方陣。對于SVD中的任何矩陣,U和V都是可逆的,并且它們是正交的,這是我們所喜歡的。在這里不提供證明,我們還告訴您,奇異值比特征值更具數(shù)值穩(wěn)定性。

示例

在進一步深入之前,讓我們用一個簡單的例子來演示一下。這將使事情變得非常容易理解。

圖片

計算:

圖片

這些矩陣至少是半正定的(所有特征值均為正或零)。如圖所示,它們共享相同的正特征值(25和9)。下面的圖還顯示了它們對應的特征向量。

圖片

奇異值是正特征值的平方根,即5和3。因此,SVD分解為:

圖片

證明(可選)

為了證明SVD,我們要解出U、S和V,使得:

圖片

我們有三個未知數(shù)。希望我們可以使用上面的三個方程解決它們。A的轉置為:

圖片

已知

圖片

計算 A?A,

圖片

最后一個方程相當于矩陣(A?A)的特征向量定義。我們只是將所有特征向量放入一個矩陣中。

圖片

其中VS2等于

圖片

V保存A?A的所有特征向量v?,而S保存A?A的所有特征值的平方根。我們可以對AA?重復相同的過程,并得到類似的方程式。

圖片

現(xiàn)在,我們只需要解出U、V和S,使其符合以下條件:

圖片

總結

以下是SVD的總結。

圖片

其中

圖片

重新表述SVD

由于矩陣V是正交的,V?V等于I。我們可以將SVD方程重寫為:

圖片

這個方程式建立了u?和v?之間的重要關系。

回顧

圖片

應用AV = US,

圖片

這可以推廣為:

圖片

回顧

圖片

and

圖片

SVD分解可以被認為是u?和v?的一系列外積。

圖片

這種SVD的公式化是理解A的構成要素的關鍵。它提供了一種將糾纏在一起的m×n數(shù)據(jù)數(shù)組分解為r個組件的重要方法。由于u?和v?是單位向量,我們甚至可以忽略具有非常小奇異值σ?的項(σ?u?v??)。 (稍后我們會回到這個問題。)

讓我們先重用之前的例子,展示一下它是如何工作的。

圖片

上面的矩陣A可以分解為:

圖片

列空間,行空間,左零空間和零空間(可選-高級用戶)

接下來,我們將看看U和V由什么組成。假設A是一個秩為r的m×n矩陣。A?A將是一個n×n的對稱矩陣。所有對稱矩陣都可以選擇n個正交的特征向量v?。由于Av? = σ?u?,而v?是A?A的正交特征向量,我們可以計算u??u?的值:

圖片

它等于零,即u?和u?互相正交。如前所述,它們也是AA?的特征向量。

由于Av? = σu?,我們可以認識到u?是A的列向量。

圖片

由于A的秩為r,所以我們可以選擇這r個u?向量為正交基。那么AA?的剩余m-r個正交特征向量是什么呢?由于A的左零空間與列空間正交,因此將其選為剩余的特征向量非常自然。(左零空間N(A?)是由A?x = 0定義的空間。)對于A?A的特征向量,類似的論證也是適用的。因此,我們有:

圖片

從前面的SVD方程式回到原來的方程式,我們有:

圖片

我們只需將特征向量放回左零空間和零空間中。

圖片

Moore-Penrose偽逆

對于線性方程組,我們可以計算一個方陣A的逆來求解x。

圖片

但并非所有矩陣都可逆。而且,在機器學習中,由于數(shù)據(jù)中存在噪聲,很難找到精確的解。我們的目標是找到最適合數(shù)據(jù)的模型。為了找到最佳擬合解,我們需要計算一個偽逆。

圖片

該偽逆最小化以下最小二乘誤差:

圖片

解x的估計值為:

圖片

在線性回歸問題中,x是我們的線性模型,A包含訓練數(shù)據(jù),b包含相應的標簽。我們可以通過以下方式解決x:

圖片

圖片

下面是一個例子

圖片

方差和協(xié)方差

在機器學習中,我們識別模式和關系。我們如何確定數(shù)據(jù)中屬性之間的相關性?讓我們從一個例子開始討論。我們隨機抽取了12個人的身高和體重,并計算它們的均值。我們通過將原始值減去其均值來將其零中心化。例如,下面的矩陣A保存了調整后的零中心化身高和體重。

圖片

當我們繪制數(shù)據(jù)點時,我們可以看出身高和體重是正相關的。但是我們如何量化這種關系呢?

圖片

首先,一個屬性如何變化?我們可能在高中就學過方差。讓我們介紹一下它的近親。樣本方差的定義為:

圖片

注意,它的分母為n-1而不是n。由于樣本數(shù)量有限,樣本均值存在偏差并與樣本相關。相對于總體,平均平方距離會更小。樣本協(xié)方差S2除以n-1來抵消這個偏差,可以被證明是方差σ2的無偏估計。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ML
    ML
    +關注

    關注

    0

    文章

    149

    瀏覽量

    34664
  • SVD
    SVD
    +關注

    關注

    0

    文章

    21

    瀏覽量

    12179
  • 機器學習
    +關注

    關注

    66

    文章

    8420

    瀏覽量

    132687
收藏 人收藏

    評論

    相關推薦

    MATLAB線性方程和特征奇異命令

    MATLAB線性方程和特征奇異命令線性方程 \和/ 線性方程求解Chol Cholesky
    發(fā)表于 09-22 16:01

    線性代數(shù)超強總結

    線性代數(shù)超強總結
    發(fā)表于 05-26 07:26

    基于改進奇異值分解的人耳識別算法研究

    提出了基于特征矩陣和改進的奇異值分解的人耳識別算法。采用特征矩陣及Fisher最優(yōu)鑒別分析方法將原始樣本向最優(yōu)鑒別矢量投影,有效地降低了維數(shù),再進行奇異值分解后所得
    發(fā)表于 06-29 08:53 ?18次下載

    采用奇異值分解的數(shù)字水印嵌入算法

    提出一種新的數(shù)字水印嵌入算法,采用奇異值分解(SVD)算法對數(shù)據(jù)進行分解變換。利用正交矩陣作為容器進行水印嵌入,并通過參數(shù)的選擇和糾錯碼的使用提高水印的隱蔽性和魯棒性
    發(fā)表于 07-30 14:30 ?29次下載

    《工程線性代數(shù)(MATLAB版)》程序集

    工程線性代數(shù)(MATLAB版)》程序集:《工程線性代數(shù)(MATLAB版)》第六章例題6.20程序 陳懷琛,高淑萍,楊威合編,電子工業(yè)出版社,2007年6月奇異值分解
    發(fā)表于 10-24 08:40 ?0次下載

    基于整體與部分奇異值分解的人臉識別

    針對原有奇異值分解的不足,本文將圖像矩陣進行投影,并對整體與三組局部奇異結合進行改進,再利用BP 神經(jīng)網(wǎng)絡進行分類識別,對該文提出的方法進行了人臉識別實驗。結
    發(fā)表于 01-13 14:36 ?10次下載

    基于奇異值分解的車牌特征提取方法研究

    研究了基于小波分析的車牌圖像定位、分割、大小歸一化方法,并分析了奇異值分解算法的數(shù)學原理和算法。利用奇異值分解作為代數(shù)特征提取方法,獲得圖像的有效特征描述。以Mat
    發(fā)表于 10-17 11:08 ?28次下載
    基于<b class='flag-5'>奇異值分解</b>的車牌特征提取方法研究

    線性代數(shù)相關的基本知識

    線性代數(shù)包含了關于矩陣的所有相關的基本知識,可以快速學習,適合自學。
    發(fā)表于 12-22 17:58 ?0次下載

    基于FPGA的高光譜圖像奇異值分解降維技術

    基于FPGA的高光譜圖像奇異值分解降維技術
    發(fā)表于 08-30 15:10 ?2次下載

    基于BP神經(jīng)網(wǎng)絡和局部與整體奇異值分解的人臉識別

    基于BP神經(jīng)網(wǎng)絡和局部與整體奇異值分解的人臉識別matlab
    發(fā)表于 07-29 13:46 ?24次下載

    機器學習線性代數(shù)基礎

    機器學習所需要的一些線性代數(shù)知識
    發(fā)表于 09-04 10:08 ?0次下載

    基于奇異值分解和引導濾波的低照度圖像增強

    基于奇異值分解和引導濾波的低照度圖像增強
    發(fā)表于 06-18 11:53 ?4次下載

    機器學習進階線性代數(shù)-奇異值分解(下)

    機器學習(ML)中,最重要的線性代數(shù)概念之一是奇異值分解(SVD)和主成分分析(PCA)。在收集到所有原始數(shù)據(jù)后,我們如何發(fā)現(xiàn)其中的結構?例如,通過過去6天的利率,我們能否理解其組成
    的頭像 發(fā)表于 05-22 16:27 ?810次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學習</b><b class='flag-5'>進階</b><b class='flag-5'>之</b><b class='flag-5'>線性代數(shù)</b>-<b class='flag-5'>奇異值分解</b>(下)

    PyTorch教程2.3線性代數(shù)

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程2.3線性代數(shù).pdf》資料免費下載
    發(fā)表于 06-05 11:32 ?1次下載
    PyTorch教程2.3<b class='flag-5'>之</b><b class='flag-5'>線性代數(shù)</b>

    PyTorch教程22.1幾何和線性代數(shù)運算

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程22.1幾何和線性代數(shù)運算.pdf》資料免費下載
    發(fā)表于 06-06 09:26 ?0次下載
    PyTorch教程22.1<b class='flag-5'>之</b>幾何和<b class='flag-5'>線性代數(shù)</b>運算