複製鏈接
請複製以下鏈接發送給好友

奇異值

鎖定
奇異值是矩陣裏的概念,一般通過奇異值分解定理求得。設A為m*n階矩陣,q=min(m,n),A*A的q個非負特徵值的算術平方根叫作A的奇異值。奇異值分解是線性代數矩陣論中一種重要的矩陣分解法,適用於信號處理和統計學等領域。
中文名
奇異值
外文名
singular value
學    科
數學
常用於
壓縮;降噪
方    法
奇異值分解
應    用
信號處理等

奇異值分解定理

設給定
,令
並假設
(a)存在酉矩陣
,以及一個對角方陣
使得
以及
(b)參數
的按照遞減次序排列的非零特徵值的正的平方根,它們與
的按照遞減次序排列的非零特徵值的正的平方根是相同的。 [1] 

奇異值定義

在奇異值分解定理中,矩陣
的對角元素(即純量
,它們是方陣
的對角元素),稱為矩陣A的奇異值。A的奇異值由
的特徵值唯一地決定(等價地説,是由
的特徵值唯一地決定)。
A的奇異值
重數
作為
的特徵值的重數,或者,等價地説,也就是
的特徵值的重數。如果A的一個奇異值是
(或
)的單重特徵值,則奇異值
稱為單重的。 [1] 

奇異值奇異值與秩

矩陣A的等於它的非零奇異值的個數,而
不小於它的非零特徵值的個數。 [1] 

奇異值定理及結論

(1)設
有相同的奇異值
(2)
的兩個平方的奇異值是:
(3)設給定一個無窮序列
,並假設
(逐個元素地收斂),又設
,設
以及
分別是A與
按非增次序排列的奇異值(對
),那麼,對每個
都有
(4)設
,其中
,若A是滿秩的,當且僅當它的所有奇異值都是正數。 [1] 

奇異值Matlab函數

svd函數是Matlab中對矩陣進行奇異值分解的內置函數,用法如下: [2] 
s = svd(A) %返回矩陣A的按降序排列的奇異值
[U,S,V] = svd(A) %對A進行奇異值分解,A = U*S*V'
[U,S,V] = svd(A,'econ')
[U,S,V] = svd(A,0)

奇異值應用

奇異值分解法是線性代數矩陣論中一種重要的矩陣分解法,在信號處理、統計學等領域有重要應用。
下面以在數據分析中的降噪為例。
在現實生活中,我們蒐集的數據中總是存在噪聲:無論採用的設備多精密,方法有多好,總是會存在一些誤差的。由於大的奇異值對應着矩陣中的主要信息,因此可以運用奇異值分解進行數據分析,提取矩陣的主要信息。 [3] 
假如我們蒐集的數據如下所示:
圖示 圖示
將數據用矩陣的形式表示:
經過奇異值分解後,得到:
由於第一個奇異值遠比第二個要大,數據中有包含一些噪聲,第二個奇異值在原始矩陣分解相對應的部分可以忽略。經過SVD分解後,保留了主要樣本點如圖1所示:
圖示 圖示
參考資料