天天看點

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

簡介

奇異值是矩陣中的一個非常重要的概念,一般是通過奇異值分解的方法來得到的,奇異值分解是線性代數和矩陣論中一種重要的矩陣分解法,在統計學和信号進行中非常的重要。

在了解奇異值之前,讓我們先來看看特征值的概念。

相似矩陣

線上性代數中,相似矩陣是指存在相似關系的矩陣。設A,B為n階矩陣,如果有n階可逆矩陣P存在,使得P-1AP=B,則稱矩陣A與B相似,記為A~B。

對角矩陣

對角矩陣(diagonal matrix)是一個主對角線之外的元素皆為0的矩陣,常寫為diag(a1,a2,…,an) 。對角矩陣可以認為是矩陣中最簡單的一種,值得一提的是:對角線上的元素可以為 0 或其他值,對角線上元素相等的對角矩陣稱為數量矩陣;對角線上元素全為1的對角矩陣稱為機關矩陣。對角矩陣的運算包括和、差運算、數乘運算、同階對角陣的乘積運算,且結果仍為對角陣。

可對角化矩陣

可對角化矩陣是線性代數和矩陣論中重要的一類矩陣。如果一個方塊矩陣 A 相似于對角矩陣,也就是說,如果存在一個可逆矩陣 P 使得 P −1AP 是對角矩陣,則它就被稱為可對角化的。

特征值

設A為n階矩陣,若存在常數λ及n維非零向量x,使得Ax=λx,則稱λ是矩陣A的特征值,x是A屬于特征值λ的特征向量。

一個矩陣的一組特征向量是一組正交向量。

即特征向量被施以線性變換 A 隻會使向量伸長或縮短而其方向不被改變。

一個線性變換通常可以由其特征值和特征向量完全描述。特征空間是相同特征值的特征向量的集合。

特征分解

特征分解(Eigendecomposition),又稱譜分解(Spectral decomposition)是将矩陣分解為由其特征值和特征向量表示的矩陣之積的方法。需要注意隻有對可對角化矩陣才可以施以特征分解。

令 A 是一個 N×N 的方陣,且有 N 個線性無關的特征向量 qi(i=1,…,N)。這樣, A 可以被分解為: A= QΛQ-1

其中 Q 是N×N方陣,且其第 i列為 A 的特征向量 。如果A的所有特征向量用x1,x2 … xm來表示的話,那麼Q可以表示為:

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

, 其中x是n維非零向量。

Λ 是對角矩陣,其對角線上的元素為對應的特征值,也即Λii=λi。 也就是

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

這裡需要注意隻有可對角化矩陣才可以作特征分解。比如

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

不能被對角化,也就不能特征分解。

因為 A= QΛQ-1 ,可以看做A被分解為三個矩陣,也就是三個映射。

假如現在有一個向量x,我們可以得出下面的結論:

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

Q是正交矩陣,正交陣的逆矩陣等于其轉置,是以

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

=

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

.

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

對x的變換是正交變換,它将x用新的坐标系來表示,這個坐标系就是A的所有正交的特征向量構成的坐标系。比如将x用A的所有特征向量表示為:

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

則通過第一個變換就可以把x表示為

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

然後,在新的坐标系表示下,由中間那個對角矩陣對新的向量坐标換,其結果就是将向量往各個軸方向拉伸或壓縮:

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

如果A不是滿秩的話,那麼就是說對角陣的對角線上元素存在0,這時候就會導緻次元退化,這樣就會使映射後的向量落入m維空間的子空間中。

最後一個變換就是Q對拉伸或壓縮後的向量做變換,由于Q和

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

是互為逆矩陣,是以Q變換是

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

變換的逆變換。

特征值的幾何意義

一個矩陣乘以一個列向量相當于矩陣的列向量的線性組合。一個行向量乘以矩陣,相當于矩陣的行向量的線性組合。

是以向量乘以矩陣之後,相當于将這個向量進行了幾何變換。

之前講了 Λ 是對角矩陣,其對角線上的元素為對應的特征值,也即Λii=λi。 也就是

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

這些特征值表示的是對向量做線性變換時候,各個變換方向的變換幅度。

奇異值 Singular value

假如A是m * n階矩陣,q=min(m,n),A*A的q個非負特征值的算術平方根叫作A的奇異值。

奇異值分解SVD

特征值分解可以友善的提取矩陣的特征,但是前提是這個矩陣是一個方陣。如果是非方陣的情況下,就需要用到奇異值分解了。先看下奇異值分解的定義:

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

其中A是目标要分解的m * n的矩陣,U是一個 n * n的方陣,Σ 是一個n * m 的矩陣,其非對角線上的元素都是0。

AI數學基礎之:奇異值和奇異值分解簡介相似矩陣對角矩陣可對角化矩陣特征值特征分解特征值的幾何意義奇異值 Singular value奇異值分解SVD

是V的轉置,也是一個n * n的矩陣。

奇異值跟特征值類似,在矩陣Σ中也是從大到小排列,而且奇異值的減少特别的快,在很多情況下,前10%甚至1%的奇異值的和就占了全部的奇異值之和的99%以上了。也就是說,我們也可以用前r大的奇異值來近似描述矩陣。r是一個遠小于m、n的數,這樣就可以進行壓縮矩陣。

通過奇異值分解,我們可以通過更加少量的資料來近似替代原矩陣。

本文已收錄于 http://www.flydean.com/ai-math-01-singular-value/

最通俗的解讀,最深刻的幹貨,最簡潔的教程,衆多你不知道的小技巧等你來發現!

歡迎關注我的公衆号:「程式那些事」,懂技術,更懂你!

繼續閱讀