奇異值分解


奇異值分解(singular value decomposition, SVD)是一種矩陣因子分解方法,是線性代數的概念,但在統計學習中被廣泛使用,成為其重要工具。

定義 (奇異值分解)矩陣的奇異值分解是指, 將一個非零的mxn實矩陣A, A∈Rmxn,表示為以下三個實矩陣乘積形式的運算,即進行矩陣的因子分解:

                    A= UΣVT

其中U是m階正交矩陣(orthogonal matrix),V是n階正交矩陣,Σ是由降序排列的非負的對角線元素組成的mxn矩形對角矩陣(rectangulardiagonalmatrix),滿足

UUT= I

VVT= I

 Σ= diag(σ1, σ2 ,··· , σp)

σ1≥σ2≥···≥σp ≥0   p = min(m,n)

 

UΣVT稱為矩陣A的奇異值分解( singular value decomposition, SVD), σi稱為矩陣A的奇異值( singular value),U的列向量稱為左奇異向量( left singular vector), V的列向量稱為右奇異向量( right singular vector )。

 

幾何解釋
從線性變換的角度理解奇異值分解,mxn矩陣A表示從n維空間Rn到m維空間Rm的一個線性變換,

                       T:x→Ax

x∈Rn,Ax∈Rm, x和Ax分別是各自空間的向量。線性變換可以分解為三個簡單的變換,一個坐標系的旋轉或反射變換、一個坐標軸的縮放變換、另一個坐標系的旋轉或反射變換。奇異值定理保證這種分解一定存在。這就是奇異值分解的幾何解釋。

對矩陣A進行奇異值分解,得到A=UΣVT, V和∪都是正交矩陣,所以V的列向量v1,v2,…,vn構成Rn空間的一組標准正交基,表示Rn中的正交坐標系的旋轉或反射變換; U的列向量u1,u2,...,um構成Rm空間的一組標准正交基,表示Rm中的正交坐標系的旋轉或反射變換; Σ的對角元素σ1,σ2,…σn是一組非負實數,表示Rn中的原始正交坐標系坐標軸的σ1, σ2,.. σn倍的縮放變換。

 

奇異值分解的計算

奇異值分解基本定理證明的過程蘊含了奇異值分解的計算方法。矩陣A的奇異值分解可以通過求對稱矩陣ATA的特征值和特征向量得到。ATA的特征向量構成正交矩陣V的列,ATA的特征值的平方根為奇異值σi

對其由大到小排列作為對角線元素,構成對角矩陣Σ,求正奇異值對應的左奇異向量,再求擴充的AT的標准正交基,構成正交矩陣U的列。從而得到A的奇異值分解   A= UΣVT

給定mxn矩陣A,可以按照上面的敘述寫出矩陣奇異值分解的計算過程。

(1)首先求ATA的特征值和特征向量。

計算對稱矩陣W = ATA。

求解特征方程

(W-入I)x= 0

得到特征值入i,並將特征值由大到小排列

 

λ1≥入2≥...≥入n≥0

將特征值入i (i=1,2,... ,n)代入特征方程求得對應的特征向量。

(2)求n階正交矩陣V

將特征向量單位化,得到單位特征向量v1,v2,... vn,構成n階正交矩陣V:

 

V=[v1  v2  …  vn ]

 

(3)求mx n對角矩Σ

計算A的奇異值

 

σi=i, i= 1,2,... ,n

構造mxn矩形對角矩陣Σ,主對角線元素是奇異值,其余元素是零,

Σ = diag(σ12,…,σn)

(4)求m階正交矩陣U

對A的前r個正奇異值,令

 

Uj = Avj  , j= 1,2,... ,r

得到   U1=[u1  u2 …ur]

求AT的零空間的一組標准正交基{ur+1,ur+2,… ,um},令

U2=[ ur+1,ur+2,… ,um]

並令

U=[U1  U2 ]

(5)得到奇異值分解

A= UΣVT

                               

 

小結:奇異值分解在圖像壓縮與機器學習中主成分的提取中有較多的應用,它將一個比較復雜的矩陣用更簡單的幾個子矩陣的相乘來表示,這些小矩陣描述的是矩陣的重要的特性,奇異值可以被看作成一個矩陣的代表值,能夠代表這個矩陣的信息。當奇異值越大時,它代表的信息越多。奇異值在奇異值矩陣中是按照從大到小排列,可以用最大的k個的奇異值和對應的左右奇異向量來近似描述矩陣。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM