矩陣之芯 SVD - 從奇異值角度看矩陣范數(shù)
首先,我們回顧一下矩陣奇異值分解的基本性質(zhì)。
令
1、如果
,即矩陣 的秩為 ,那么 的非零奇異值的數(shù)量等于 。 2、將兩個正交矩陣分別看成按左、右奇異向量按列排列,即
以及
則
1矩陣范數(shù)
度量、范數(shù)和內(nèi)積原來是這么個關(guān)系
在上面這篇里,我們介紹了向量的范數(shù),那么矩陣的范數(shù)又是怎么樣的呢?
.定義
考慮實數(shù)域上的矩陣,范數(shù)是滿足以下性質(zhì)的從
,以及 對于任意數(shù)
,有 對于可相乘矩陣,有
.矩陣 F-范數(shù)
矩陣
我們知道,矩陣具有專門的乘法,從而將它與一般的向量空間區(qū)分開。但是向量范數(shù)的三個性質(zhì)與向量乘積并沒有關(guān)系。
因此,對于矩陣來說,貌似需要一個額外的性質(zhì),能夠?qū)?
而 F-范數(shù)剛好具有此額外性質(zhì),即
因此有,
可以說 Frobenius 矩陣范數(shù)
相容性條件
簡寫為,
因此可將乘積性質(zhì)
除了 Frobenius 范數(shù)滿足前面矩陣范數(shù)的定義外,但是其他有用的矩陣范數(shù)又是從何而來呢?
實際上,如下所述,每個合法的向量范數(shù)都會生成(或誘導(dǎo)出)一個矩陣范數(shù)。
.誘導(dǎo)矩陣范數(shù)
在
連續(xù)函數(shù)在有界閉區(qū)域上必有最小、最大值。
很明顯,在某種意義上,誘導(dǎo)矩陣范數(shù)與其基礎(chǔ)向量范數(shù)相容,即
當(dāng) 非奇異時,
證明
容易驗證
換句話說,誘導(dǎo)范數(shù)
下圖描述了在

2奇異值與矩陣范數(shù)
下面,我們從奇異值角度審視一下矩陣的幾個常用范數(shù)。
我們再次來看一下矩陣的秩 1 展開式,
注意看,上面將矩陣
由上面誘導(dǎo)矩陣范數(shù)的定義可知,范數(shù)在一定意義上是考量一個矩陣對單位向量的縮放能力。我們將展開式代入矩陣向量乘積,
矩陣對單位向量的變換可以按奇異值和相應(yīng)的奇異向量分解開,而縮放能力主要反映在奇異值上。
那么,我們能不能直接從奇異值來考量或定義矩陣范數(shù)呢?
.Schatten p-范數(shù)
由矩陣
定義如下范數(shù),
巧的是,這樣用向量范數(shù)直接從奇異值定義的矩陣范數(shù)與常規(guī)方式定義的矩陣范數(shù)之間真的有等價關(guān)系。不信請看:
1、矩陣
其中,
2、矩陣
3、矩陣
定義如下,
也稱為矩陣
下面我們來對上面的定義簡單地解讀一番。
由
令
因此,
.程序小實驗
import?numpy?as?np
from?scipy.linalg?import?sqrtm
A?=?np.array([[1,2,3],[1,1,1],[0,1,-1]])
A
array([[ 1, 2, 3],
[ 1, 1, 1],
[ 0, 1, -1]])
U,?S,?V?=?np.linalg.svd(A)
AtA?=?A.T@A
AtA
array([[ 2, 3, 4],
[ 3, 6, 6],
[ 4, 6, 11]])
m?=?np.diag(S)@V
m
array([[-1.31467133, -2.16665828, -3.20525993],
[ 0.19957118, 1.13213211, -0.84714312],
[ 0.48146718, -0.15449536, -0.0930447 ]])
[email protected](S)@V
root_VSVT
array([[0.90174674, 0.71064345, 0.82573525],
[0.71064345, 2.09285003, 1.05591886],
[0.82573525, 1.05591886, 3.03367709]])
S.sum()
6.028273858670582
root?=?sqrtm(AtA)
root
array([[0.90174674, 0.71064345, 0.82573525],
[0.71064345, 2.09285003, 1.05591886],
[0.82573525, 1.05591886, 3.03367709]])
root@root
array([[ 2., 3., 4.],
[ 3., 6., 6.],
[ 4., 6., 11.]])
np.trace(root)
6.028273858670583
3小結(jié)
將
矩陣對單位向量的變換可以按奇異值和相應(yīng)的奇異向量分解開,而縮放能力主要反映在奇異值上。
因此,我們可以從奇異值的大小(甚至數(shù)量)來定義矩陣范數(shù)。可見,奇異值的確很厲害吧。
