矩阵分解方法 概述
目錄
- 簡(jiǎn)述矩陣分解
- 定義
- 作用
- 三角分解(LU分解、LR分解)
- 必要條件
- 定義
- 步驟
- 作用
- QR分解
- 必要條件
- 定義
- 步驟
- 作用
- 特征值分解(譜分解,EVD分解)
- 必要條件
- 定義
- 步驟
- 作用
- 奇異值分解(SVD分解)
- 必要條件
- 定義
- 步驟
- 作用
簡(jiǎn)述矩陣分解
定義
把一個(gè)矩陣AAA表示為多個(gè)矩陣連乘的形式。
作用
- 用更少的內(nèi)存消耗,存儲(chǔ)一樣多信息。eg:稀疏矩陣分解為多個(gè)稠密矩陣。
- 提高計(jì)算速度。eg:小矩陣比大矩陣更容易求逆。
- 用于矩陣補(bǔ)全。eg:推薦系統(tǒng)中,填補(bǔ)評(píng)分矩陣中的空缺項(xiàng);圖像復(fù)原。
- 分解后的矩陣有一些實(shí)際的意義。
三角分解(LU分解、LR分解)
這部分可以參考我之前的博客,鏈接
必要條件
- AAA可逆,即:滿秩矩陣
- AAA可以被前面的r(A)r(A)r(A)行線性表示
定義
A=LU=LRA=LU=LRA=LU=LR
- LU分解中,LLL是下三角矩陣
- LR分解中,LLL是單位下三角矩陣(單位的意思是“對(duì)角線全為1”)
- UUU或RRR是上三角矩陣
- 三角分解本質(zhì)上是高斯消元法的一種表達(dá)形式
步驟
通過(guò)對(duì)AAA不斷的左乘初等矩陣,對(duì)AAA進(jìn)行初等變換,使其變?yōu)樯先蔷仃?#xff0c;那么得到的上三角矩陣即為UUU,這些初等矩陣的逆即為LLL。
eg:E3E2E1A=U=>A=(E3E2E1)?1UE_3E_2E_1A=U => A=(E_3E_2E_1)^{-1}UE3?E2?E1?A=U=>A=(E3?E2?E1?)?1U
作用
- 求AAA的行列式∣A∣|A|∣A∣時(shí),轉(zhuǎn)換為求解∣L∣∣U∣|L||U|∣L∣∣U∣,三角矩陣求解行列式只需計(jì)算對(duì)角元素。
- 求線性方程組Ax=bAx=bAx=b時(shí),可將其轉(zhuǎn)換為求解Ly=bLy=bLy=b和Ux=yUx=yUx=y的兩個(gè)同規(guī)模問(wèn)題,由于LLL和UUU都是三角矩陣,運(yùn)算量小。
- 求AAA的逆矩陣時(shí),A?1=U?1L?1A^{-1}=U^{-1}L^{-1}A?1=U?1L?1,三角矩陣的逆可以通過(guò)矩陣分塊的方法計(jì)算。
QR分解
這部分可以參考我之前的博客,鏈接
必要條件
- AAA的所有列向量線性無(wú)關(guān),即:列滿秩,即:可逆。
定義
A=QRA=QRA=QR
- QQQ是AAA的列向量的施密特標(biāo)準(zhǔn)正交化(正規(guī)正交矩陣)
- RRR是AAA的列向量在標(biāo)準(zhǔn)正交基下的坐標(biāo)表(上三角矩陣)
步驟
作用
- 求解矩陣AAA的全部特征值,此方法被稱為QR方法(前提:不存在絕對(duì)值相等的特征值),下面進(jìn)行詳細(xì)描述。
當(dāng)AAA為對(duì)稱矩陣時(shí):
①. 通過(guò)相似變換,將AAA變換為三對(duì)角矩陣A0A_0A0?(除主對(duì)角線、主對(duì)角線挨著的兩條線,其他元素為零);
②. 對(duì)A0A_0A0?進(jìn)行QR分解,得到A0=Q0R0A_0=Q_0R_0A0?=Q0?R0?,令A1=R0Q0A_1=R_0Q_0A1?=R0?Q0?;
③. 對(duì)A1A_1A1?進(jìn)行QR分解,得到A1=Q1R1A_1=Q_1R_1A1?=Q1?R1?,令A2=R1Q1A_2=R_1Q_1A2?=R1?Q1?;
④. 重復(fù)上述過(guò)程,得到AkA_kAk?,當(dāng)AkA_kAk?趨于對(duì)角矩陣時(shí),其特征值即為A0A_0A0?的特征值(因?yàn)?span id="ozvdkddzhkzd" class="katex--inline">Ak+1=RkQk=Qk?1QkRkQk=Qk?1AkQkA_{k+1}=R_k Q_k=Q_k^{-1} Q_k R_k Q_k = Q_k^{-1} A_k Q_kAk+1?=Rk?Qk?=Qk?1?Qk?Rk?Qk?=Qk?1?Ak?Qk?)。
當(dāng)AAA不是對(duì)稱矩陣時(shí):
①. 通過(guò)HouseHolder變換,將AAA變換為HessenbergA0A_0A0?(上三角矩陣,左下零三角中緊貼主對(duì)角線的那條線上的元素均不為零),Hessenberg矩陣的QR分解一定是另一個(gè)Hessenberg矩陣乘以上三角矩陣;
②. 對(duì)A0A_0A0?進(jìn)行QR分解,得到A0=Q0R0A_0=Q_0R_0A0?=Q0?R0?,令A1=R0Q0A_1=R_0Q_0A1?=R0?Q0?;
③. 對(duì)A1A_1A1?進(jìn)行QR分解,得到A1=Q1R1A_1=Q_1R_1A1?=Q1?R1?,令A2=R1Q1A_2=R_1Q_1A2?=R1?Q1?;
④. 重復(fù)上述過(guò)程,得到AkA_kAk?,當(dāng)AkA_kAk?趨于上三角矩陣時(shí),其特征值即為A0A_0A0?的特征值。
特征值分解(譜分解,EVD分解)
必要條件
- 方陣
定義
A=QDQ?1A=QDQ^{-1}A=QDQ?1
- 當(dāng)AAA為nnn階方陣時(shí)(一般形式),A=QDQ?1A=QDQ^{-1}A=QDQ?1,QQQ為nnn階方陣,QQQ的列向量qiq_iqi?為特征向量,D=diag{λ1,λ2,...,λn}n×nD=diag \{ \lambda_1, \lambda_2, ... , \lambda_n \}_{n \times n}D=diag{λ1?,λ2?,...,λn?}n×n?,λ1,λ2,...,λn\lambda_1, \lambda_2, ... , \lambda_nλ1?,λ2?,...,λn?為特征值。
- 當(dāng)AAA為實(shí)對(duì)稱矩陣時(shí),A=QDQTA=QDQ^{T}A=QDQT,QQQ為正交陣(QQT=IQQ^T=IQQT=I)。
- 當(dāng)AAA為復(fù)正規(guī)矩陣時(shí),A=UDUHA=UDU^{H}A=UDUH,UUU為酉矩陣。
步驟
求AAA的特征值和特征向量即可。
作用
- 求解AAA的逆矩陣,A?1=QDQ?1?1=QD?1Q?1A^{-1}= {QDQ^{-1}}^{-1} =QD^{-1}Q^{-1}A?1=QDQ?1?1=QD?1Q?1,可以看出,只需求D?1D^{-1}D?1即可求得A?1A^{-1}A?1,而DDD是對(duì)角矩陣,其逆矩陣只需將對(duì)角元素取倒數(shù)。
- 圖像壓縮。但是一般現(xiàn)實(shí)中,大多數(shù)圖片不是方的,所以奇異值分解用的較多。
奇異值分解(SVD分解)
必要條件
- 無(wú)限制
定義
A=UDVHA=UDV^HA=UDVH
- AAA為mmm行nnn列
- UUU為mmm階酉矩陣
- VVV為nnn階酉矩陣,VHV^HVH是VVV的共軛轉(zhuǎn)置
- D=diag{σ1,σ2,...,σr,0,...,0}m×nD=diag \{ \sigma_1, \sigma_2, ... , \sigma_r, 0, ... ,0\}_{m \times n}D=diag{σ1?,σ2?,...,σr?,0,...,0}m×n?,σ1,σ2,...,σr\sigma_1, \sigma_2, ... , \sigma_rσ1?,σ2?,...,σr?為奇異值。
步驟
作用
- 奇異值相當(dāng)于方陣中的特征值,一般對(duì)應(yīng)于矩陣中的重要信息,奇異值越大,信息的重要性越大。
- 圖像壓縮。假設(shè)原圖片為800×600800 \times 600800×600(忽略顏色通道)的矩陣AAA,將其進(jìn)行SVD分解,得到UUU、DDD和VVV三個(gè)矩陣,我們可以很容易的通過(guò)分解后的三個(gè)矩陣還原圖片。但是,當(dāng)我們沒(méi)有足夠的存儲(chǔ)空間時(shí),我們可以僅保留奇異值較大的若干項(xiàng)(保留的奇異值越多,圖片的還原程度越高),來(lái)還原一個(gè)近似的圖像。
- 圖像去噪。當(dāng)圖像中存在噪聲時(shí),我們可以假設(shè)較小的奇異值是由噪聲引起的,將這些奇異值變?yōu)榱?#xff0c;即可去除噪聲。
- 主成分分析。
- 推薦系統(tǒng)。
- 語(yǔ)義索引LSI。
總結(jié)
- 上一篇: 图像处理中的秩、低秩、稀疏
- 下一篇: TextVQA论文汇总