矩陣 A 之特徵值 (eigemvalue) 是指一純量 λ,存在一非零向量 x 使 Ax = λx。由此定義可知:談特徵值時,矩陣必須是方陣。特徵值的概念可以擴充至線性變換 T,存在一非零向量 x 使 T(x) = λx。同樣 T 必須是在一個向量空間 V 上的線性變換,而不是一般 U 到 V 的線性映像。與特徵值相對應的非零向量 x 稱為特徵向量 (eigenvector)。若 x 是對應特徵值 λ 的特徵向量,則其任意非零純量倍 cx 也是對應特徵值 λ 的一個特徵向量;若 x, y 都是對應特徵值 λ 的特徵向量,則其和也是。因此,對應特徵值 λ 的所有向量與零向量構成 V 的一個子空間,稱為特徵空間 (eigenspace)。特徵值也簡稱徵值,或稱特性值 (characteristic value) 或特性根 (characteristic root),為特性方程式 (characteristic equation) det(tI-A) = 0 之根,或待性多項式 (characteristic polynomial) det(tI-A) 之零位 (zero),所以特徵向量也稱特性向量 (characteristic vector)。
特徵值、特徵向量及特徵空間,它們究竟什麼意義呢?首先,佈於 K 的一般 m×n 矩陣可以代表 K^n 至 K^m 的線性映射 (linear mapping) 或譯線性映像,而 n 階方陣就是 K^n 至本身的線性映射,也稱其為在 K^n 上的線性變換 (linear transformation) 或線性算子 (linear operator)。特徵值要求非云向量 v 使
T: v → Av = λv
是把 v 向量送到 v 的 λ 倍 (λ in K);特徵空間(λ 的)就是 K^n 中使上列規則成立的所有向量 v(含 0)所形成的集合,它在 K^n 的運算下是 K^n 的子空間。對應不等的特徵值,它們是線性獨立的,意即不等的特徵值 λ_i 其特徵空間 E(λ_i) 唯一的共同元素是 0 向量。但特性方程式中根的重根數不一定等於其特徵空間的維度,例如:
A = [ λ 1 ]
[ 0 λ ]
則其唯一特徵值是 λ,是特性方程式 (t-λ)^2 = 0 的二重根;但其特徵向量 v = [x 0]^t, x 任意(上標 t 代表矩陣轉置運算),故其特徵空間僅一個維度。甚至,有些矩陣並不保證存在特徵根,例如
A = [ 0 1 ]
[ -1 0 ]
在 R 中並不存在特徵根,只有把它當成佈於 C 的矩陣,才保證特徵根的存在。對於一般的,特徵空間維數(又稱特徵值的幾何重複數)可能小於其在特性方程式之重根數(又稱之為代數重複數),或所有特徵空間維度總和小於方陣階數的情形此處不談,我們假設特性方程式有 n 個根(含重根),並且所有特徵值的幾何重複數都和代數重複數一致,故對每一特徵空間,存在一組基底將其張開,而這些基底向量聯合組成 K^n 的一組基底 {u_1, ..., u_n},
A[u_1 ... u_n] = [λ_1 u_1 ... λ_n u_n] = [u_1 ... u_n] diag[λ_1, ..., λ_n]
式中 diag[λ_1, ..., λ_n] 是以 λ_1, ..., λ_n 為主對角線元素的對角線矩陣。上式可簡記為 AU = UD,則 A = UDU^{-1} 或 D = U^{-1}AU,稱為:將 A 對角線化。這是什麼意思呢?意思是:如果以 {u_1, ..., u_n} 為 K^n 的新基底,那麼,將 K^n 中所有向量用新基底為座標表示:
v = Σ_i a_i u_i → u = [a_1 ... a_n]^t
則線性變換 T(v) = Av 依新基底其表示法為 T(v') = Dv', 此處 v' 與 T(v') 分別是 v 與 T(v) 的新基底表示法。我們能透過一組基底的選定,把線性變換或矩陣變成對角線矩陣,稱之為「可對角線化 (diagonalizable)」。前面我們看到不可對角線化的例子,就是特徵值的代數重複數大於幾何重複數,或特性根總數小於方陣階數。如果矩陣 A 的特徵值兩兩不等,當然不存在這種情形,也就是這樣的矩陣一定可以對角線化。另外一種情形是 A 為複數矩陣中的厄米特矩陣 (Hermitian matrix) 或實數矩陣中的對稱矩陣,它們甚至可選擇 U 的各行相互正交,並且其「長度」或「模 (norm)」都是 1,稱之為么正對角線化(實數矩陣則是正交對角線化)。事實上么正對角線化的充要條件是 A 為正規的 (normal),即 AA* = A*A,此處暫不贅述。
若 A 不一定是方陣,而是一般 m×n 矩陣。一般將純量體 K 定為複數體 C,而矩陣 A 之奇異值 σ 為非負實數,存在 C^m 中的單位向量 u,和 C^n 中的單位向量 v,滿足
Av = σu, A*u = σv
其中 A* 是 A 的共軛轉置矩陣 (conjugate transpose matrix) 或厄米特轉置矩陣 (Hermitian transpose matrix)。向量 u, v 分別稱為 σ 的左奇異向量和右奇異向量,因為上列兩式可寫成
Av = σu, u*A = σv*
先不管奇異值 σ 的非負實數值,及 u, v 的單位(歐氏長度)限制,只要求 σ, u, v 滿足上列關係即分別稱之為奇異值與左右奇異向量。若 u, v 如上,c 為純量,則
A(cv) = c(Av) = c(σ)u = σ(cu), A*(cu) = c(A*u) = σ(cv)
再者,如 x, y 與 u, v 一般是奇異值 σ 的左、右奇異向量,胰
A(v+y) = σ(u+x), A*(u+x) = σ(v+y)
也就是說 u+x, v+y 也是 σ 的奇異向量。因此,A 的一個奇異值 σ 的左、右奇異向量分別構成 C^m 和 C^n 的子空間。奇異值 0 的左奇異向量構成 A* 的核(零空間) (kernel, null space);右奇異向量構成 A 的核,如果矩陣 A 的秩 (rank) 為 r, 則 A 的核有維度 n-r 而 A* 的核的維度是 m-r。另一方面,若 σ 是一非零奇異值,則其對應之左、右奇異向量構成的空間維度是多少?假設 u_i, i = 1, ..., k 是 σ 的線性獨立左奇異向量,對應右奇異向量 v_i, i = 1, ..., k,則對於其非零線性組合 Σ_i a_i u_i,
A(Σ_i a_i v_i) = σ(Σ_i a_i u_i), A*(Σ_i a_i u_i) = σ(Σ_i a_i v_i)
則 Σ_i a_i u_i ≠ 0 保證 Σ a_i v_i ≠ 0; 反之亦然。這也就是說:非零奇異值 σ 的所有左奇異向量構成的空間和所有右奇異向量構成的空間有相同維度。
為何定義中奇異值是限定非負實數?首先,若 σ 是一奇異值,u, v 為一組左、右奇異向量,不妨限定 u*u = 1 = v*v,即 u, v 具單位長。則
u*Av = u*(σu) = σu*u = σ
v*A*u = v*(σv) = σv*v = σ
但 v*A*u = (u*Av)* = σ* 是 σ 的共軛(複數),而唯有實數滿足其共軛等於原數,所以奇異值必是實數。再者,若 σ 是奇異值而 u, v 是左、右奇異向量,則
Av = (-σ)(-u), A*(-u) = -A*u = (-σ)v
也就是說 -σ 是一奇異值而 -u, v 是其左、右奇異向量,u, v 也是。所以:奇異值不是唯一的,除非限定奇異值非負。因此,限定了奇異值非負,這就確定了如特徵值一般的唯一性。此「唯一」並非指矩陣 A 僅有「一個」奇異值,而是只有「一組」奇異值,如方陣的特徵值一般。
假設 σ, u, v 是一組奇異值與奇一向量,則
A*Av = σA*u = σ^2v, AA*u = σAv = σ^2u
這意謂我們可考慮找 A*A 及 AA* 的特徵值及特徵向量來解奇異值及奇異向量問題。但 A*A, AA* 的特徵值及特徵向量是否就是我們要的奇異值及奇異向量?首先,A*A 與 AA* 會有相同的非零特徵值組合,而且都是正值,因為兩矩陣都是非負確定的。假設
A*Av = λv, AA*u = λu
則 Av = (1/λ)AA*Av, A*u = (1/λ)A*AA*u。對於前者,令 u = (1/λ^{3/2})AA*Av, 則
Av = √λ u
A*u = A*[ (1/λ^{3/2})AA*Av ] = (1/λ^{3/2})(A*A)(A*A)v = √λ v
也就是說,根據 A*Av = λv,令 u = (1/λ^{3/2})AA*Av,則 √λ, u, v 為 A 之一組奇異值與奇異向量組合。類似,由 AA*u = λu,令 v = (1/λ^{3/2})A*AA*u 則同樣可得一組奇異值與奇異向量組合 √λ, u, v。而且,很容易驗證由 A*Av = λv 定義出的 u 滿足 AA*u = λu,由 AA*u = λu 定義的 v 滿足 A*Av = λv。因此,我們可以說:A 的奇異值和奇異向量問題,等價於 A*A 與 AA* 的特徵值及特徹向量問題。由於 AA* 及 A*A 都是厄米特矩陣 (Hermitian matrix),即其轉置共軛等於原矩陣 (H* = H),故可正交對角線化:
AA* = UDU*, A*A = VEV*
其中 U, V 皆為「么正矩陣 (unitary matrix)」,即 U* = U^{-1}, V* = V^{-1};D, E 皆為由特徵值為對角線元素構成的對角線矩陣,對角線上每個不同特徵值重複次數等於其特徵空間維度,並由大到小排列。由於 AA* 和 A*A 之非零特徵值相同,故 D, E 左上角非零部分一致,其餘部分不同(階)但元素值都是 0。令 Σ 為一 m×n 矩陣,其主對角線元素為 D 之主對角線的平方根,其餘部分元素皆為 0。令 R 定義如下:
R =[ R(ij) ] 為 n×m 矩陣,其中 R(ij) = 1/σ(ji) if σ(ji) > 0; = 0 otherwise
則 R 是 Σ 的一個廣義反矩陣。故 R*R 為 D = ΣΣ* 的廣義反矩陣,而 RR* 為 E = Σ*Σ 的廣義反矩陣。由AA*U = UD, 定義
V = A*AA*UR*RR*
可以驗證 AV = UΣ 及 A*U = VΣ*,故 U*AV = (ΣV*)V = Σ,最後得
A = UU*AVV* = UΣV*
這就是一般矩陣的奇異值分解 (singular value decomposition, SVD)。當 A 為實數矩陣時,共軛轉置運算變成轉置運算,么正矩陣變成正交矩陣 (orthogonal matrix)。
假設 A 為 m×n 矩陣,事實上 A 代表一個從 K^n 到 K^m 的線性映射,Au = σv 表示這個線性映射限制在 K^n 的 cu 和 K^m 的 cv 上,是把 u 映到 σv;並且要求另一個反向(從 K^m 到 K^n)的線性映射 A*,把 v 送到 σu。而結果的 SVD 找到 K^n 上的規格正交基 (v_1, ..., v_n) 和一組 K^m 上的規格正交基 (u_1, ..., u_m),使在這雙基表示法之下,此線性映射可以極簡地用 Σ 矩陣來表示。
如果 A 是一個方陣,則它不一定能對角線化;但依以上對奇異值分解的介紹,必然可以做。即使在 A 是方陣時,此線性映射的定義域和對應域都是 K^n,但仍然可看成是兩個不同的空間,所以可以選定雙基。而對角線化,或稱特徵分解 (eigendecomposition) 或譜分解 (spectral decomposition),只可在 K^n 上選定一組基底,有時做不到(非可對角線化),有時也可以選定一組規格正交基(么正對角線化,或實數矩陣的正交對角線化),與 SVD 是兩回事。
前面提過,可么正對角線化的充要條件是 A 為正規的。如果 A = UDU*, 其中 U 是么正矩陣而 D 為對角線矩陣,則 A* = UD*U*。故
AA* = (UΣU*)(UΣU*)* = UΣΣ*U* = UΣ*ΣU* = A*A
也就是說 A 是正規的。反之,如果 A 是正規矩陣,我們將證明 A 可以么正對角線化。首先,因為 A 是複數矩陣,即 K = C,A 的特性方程式可以分解為一次式的乘積:
det(tI-A) = (t-λ_1)...(t-λ_n)
設 u_1 是特徵值 λ_1 對應的一個特徵向量。又取 u_2,...,u_n 和 u_1 構成 C^n 的一組規格正交基 以 U_1 = [u_1, W_1] ,則在此基底下,
A = UA'U*, A' = U*AU
而 A' 將是如下形式
A' = [ λ_1 B ]
[ 0 A_1 ]
而 det(tI-A') = det(tI-A) = (t-λ_1)det(tI'-A_1),意即 A 的特性多項式去掉 (t - λ_1) 即為 A_1 的特性多項式。我們對 A_1 如上取其一特徵值與一特徵向量 u'_2, 這是 C^(n-1) 的一個向量;並構造 C^(n-1) 上的一組規格正交基 U_2 = [u'_2, W'_2], 並取 u_2 = W_1 u'_2, W_2 = W_1 W'_2,則
(u_1)*(u_2) = (u_1)*(W_1 u'_2) = 0
(u_1)*(W_2) = (u_1)*(W_1 W'_2) = 0
(u_2)*(W_2) = (W_1 u'_2)*(W_1 W'_2) = (u'_2)*(W'_2) = 0
而在 [(u_1 u_2 W_2)] 各行所形成的新基底下,
[ (u_1)* ]
A" = [ (u_2)* ] A [ u_1 u_2 W_2]
[ (W_2)* ]
[ (u_1)* ]
= [ (u_2)* ] [ (λ_1 u_1) (A W_1 u'_2) (A W_1 W'_2) ]
[ (W_2)* ]
[ λ_1 (u_1)*(A W_1 u'_2) (u_1)*(A W_1 W'_2) ]
= [ 0 (W_1 u'_2)*(A W_1 u'_2) (W_1 u'_2)*(A W_1 W'_2) ]
[ 0 (W_1 W'_2)*(A W_1 u'_2) (W_1 W'_2)*(A W_1 W'_2) ]
注意 (W_1)*A(W_1) = A',或由前面 (u_2)*(W_2) = 0 得知上列 3×3 區塊矩陣中第 (3,2) 區塊為 0。也就是說,上列是區塊上三角矩陣。把關於 u_1 的部分改成:
現有一規格正交基,以區塊矩陣表示是 U = [B W],線性變換 T 或矩陣 A 以基底 U 來表現是
A' = U*AU = [ A(11) A(12) ]
[ 0 A(22) ]
其中 B(11) 為 k 階上三角矩陣,以 B(22) 為基礎可取 C^(n-k) 之一規格正交基 U' = [u' W'],u' 對應 B(22) 的特徵值 λ,而 λ 也是 T 或 A 的特徵值。取 U" = [B Wu' WW'] 為新基底,則 U" 為 C^n 之一組規格正交基,並且 T 或 A 以新基底 U" 表現的矩陣為
[ A(11) * * ]
A" = [ 0 λ * ]
[ 0 0 A'(33) ]
注意,由 A 和 A' 的關係
Au =A(Wu') = U(A')U*(Wu') = BA(12)u' + WA(22)u' = BB*Au + λu
或
Au = A(Wu') = UU*AWu' = (BB*+WW*)AWu' = BB*Au + λu
當 A(12) = 0,也就是 A' 是區塊對角線時,u = Wu' 也是原矩陣 A(或線性變換 T)的特徵向量;也就是如果基底 U = [B W] 兩部分把 C^n 分成兩個子空間的直和 (direct sum) 時,上述方法找到的 u 也是 A 的特徵向量。
最後我們得一組 C^n 上的規格正交基 U = [u_1 ... u_n] 使得 A = UA'U* 或 A' = U*AU,而 A' 是上三角矩陣。若 A 是正規的,則 A' 也是正規的。可證得一正規的上三角矩陣必是一個對角線矩陣,因此把 A 上三角化的么正矩陣 U 也把 A 對角線化。此時,U 的各行都是 A 的特徵向量。
如果 A 是方陣,將 A 做奇異值分解成 UΣV*, 則
A = UV*VΣV* = WP = UΣU*UV* = P'W
其中 P = VΣV*, P' = UΣU*, W = UV*。因
W* = (UV*)* = VU* = VU^{-1) = (UV^{-1})^{-1} = (UV*)^{-1} = W^{-1}
可知 W* 是一個么正矩陣,而 P, P' 是非負確定的矩陣(nonnegative definite, 包含正確定 positive definite 和正半確定 positive semidefinite,後者指其任意非零二次式 y*Py, y≠0 等之值大於或等於 0,並且有某些非零 y 使其值為 0。可能有些作者對「正半確定」的定義就是這裡說的非負確定。)像這樣把矩陣 A 表示成一個么正矩陣 W 和一個非負確定矩陣 P 相乘,稱為矩陣的極分解 (polar decomposition) 或「右極分解」;對稱性地,把 A 表示成 P'W 是 A 的左極分解。以極分解為名因為 A = WP 或 P'W 有點類似複數的極表示法 z = |z| e^{iθ}, 么正矩陣 W 是極式 e^{iθ} 的性質,非負確定矩陣 P 則類似複數絕對值 |z|。由於矩陣運算的特性,所以有左、右兩種極分解。但 A = WP = WPW*W = P'W, 可得 P' = WPW*, 只要有 A 的一個右極分解,自然得到其左極分解;反之,由左極分解 A = P'W 也可得到右極分解 A = WP,其中 P = W*P'W。
若 A 可逆,假設 A = WP = UQ 都是 A 的(右)極分解,則
W = AP^{-1}, = UQP^{-1}
故 QP{-1} = U*W 是么正矩陣(因為 U, W 均為么正矩陣),則
I = (QP^{-1})*(QP^{-1}) = P^{-1}Q^2P^{-1}
即 P^2 = Q^2.。但因 P, Q 是正確定,事實上只要是非負碓定,則 P^2 = Q^2 蘊涵 P = Q:
設 P = RDR* 是 P 的么正對角線化, 則
P^2 = Q^2 <==> D^2 = R*P^2R = R*Q^2R
由於 P, Q 非負確定, 故 D = (D^2)^{1/2} 唯一, 所以
RU*PR = R*QR
所以 P = Q.
同時,W = AP^{-1} = AQ^{-1} = U, 也就是說 A 的極分解是唯一的。注意雖然只要 P, Q 非負確定就保證 P^2 = Q^2 蘊涵 P = Q,但如 P, Q 不是正確定而只是正半確定,則不存在 P^{-1},上述唯一性的論證就不成立了。
由 A 的左、右極分解式,得
AA* = P'W(P'W)* = P'P'* = P'^2 = UΣΣU*
A*A = (WP)*WP = P*P = P^2 = VΣΣV*
若 A 是正規的,則 P^2 = P'^2, 由前面知 P = P'。所以,A 是正規的若且唯若 A = WP = PW。或者,由 A = WP 及 AA* = A*A 得
AA* = A*A <==> P^2 = WP^2W* <==> P^2W = WP^2
<==> P = WPW* <==> PW = WP
兩方陣 A, B 若滿足 AB = BA,則稱之為可交換 (commute)。如果 A, B 可交換,則
A^2-B^2 = (A-B)(A+B) = (A+B)(A-B)
又如 (A+B)^2 = A^2+B^2+2AB, (AB)^k = A^k B^k,許多代數等式在可交換矩陣間也成立。午麼樣的矩陣可交換?如果 A, B 可同時對角線化,或者說在 C^n 中有一基底使兩線性變換 T, S 可同時對角線化,那麼 AB = BA, TS = ST,因為若 A, B 同時被矩陣 U 對角線化,A = UDU^{-1}, B = UEU^{-1},則
AB = (UDU^{-1})(UEU^{-1}) = UDEU^{-1} = UEDU^{-1} = BA
反之,若 AB = BA, 而 A = UDU^{-1} 把 A 對角線化,即 AU = UD, D 為所有特徵值形成的對角線矩陣,U 之各行即是對應特徵值的特徵向量,各行向量取單位長度。以 U 之各行組成基底,則在新基底下變成 D 與 U^{-1}BU。
A 與 B 可交換 <==> D = U^{-1}AU 與 E = U^{-1}AU 可文換
一個對角線矩陣與什麼樣的矩陣可交換?D = diag(d_1, ..., d_n) 而 E = [e(ij)],則 DE 的第 (i, j) 項元素為
a(i,j) = d_i e(ij)
而 ED 的第 (i, j) 項元素為 b(ij) = e(ij) d_j, 所以
d_i e(ij) = e(ij) d_j for all i, j
其條件是 (d_i - d_j)e(ij) = 0 for all i, j。但這要成立唯有兩個情形:(1) d_i = d_j,(2) e(ij) = 0。設 D 之主對角線元素,也就是 A 的特性值,相同的排在一起,結果 E 矩陣成為區塊對角線矩陣。進一步對角線化那些對角線區塊,因為 D 中對應的區塊是純量矩陣,並不會造成變化,這就將 A, B 同時對角線化了。
我們從特徵空間來看,因為預設 A, B 是可被對角線化的,所以 C^n 是 A 或 B 的所有特徵空間的直和。假設 E(λ) 是 A 特徵值 λ 的特徵空間,則
對任意 x in E(λ), ABx = BAx = Bλx = λ(Bx)
換言之,Bx 在 E(λ) 中,也就是說 B 對 E(λ) 是不變的。若 E(λ) 是由特徵向量 u_1,...,u_k 展開,則 Bu_i, i = 1,...,k, 都是 u_1, ..., u_k 的線性組合,結果 E 就是與 D(相同特徵值放一起)相對應的區塊對角線矩陣。再從每個 E(λ) 選取適當的基底把 E 矩陣對應的區塊完全對角線化,這基底的改變對 D 並無影響,最終得到的完整基底就是同時對角線化 A, B 的 U。
具體地說,假設 U' 先將 A 對角線化了,於是
E = U'^{-1}BU' = BlkDiag(E_1, ..., E_k)
對應 D = BlkDiag(λ_1 I_1, ..., λ_k I_k)。取
R = Blk Diag(R_1, ..., R_k)
其中 R_i 分別把 E_i 對角線化,於是 U = U'R 把 A, B 同時對角線化。
如果可交換矩陣 A, B 中有一個,假設是 A,可么正對角線化,則同時對角線化的矩陣 U = QR,其中 Q 是一個么正矩陣首先將 A 對角線化了,而 R 是一個區塊對角線矩陣,各區塊 R_i 階數同於 A 特徵值 λ_i 之特徵空間維度,實際上 R_i 相當於對與 λ_i 對應的諸規格正交特徵向量,也就是 E(λ_i) 的一組規格正交基重新線性組合,使結果仍是 E(λ_i) 的基底,只是可能不再相互正交。但若 B 也可么正對角線化,則 R 也是一個么正矩陣,則
(QR)* = R*Q* = R^{-1}Q^{-1} = (QR)^{-1}
所以 A, B 同時被么正矩陣 U = QR 對角線化。
前面得 A 正規的充要條件是其極分解 A = WP = PW, 也就是說 W, P 是可交換的,可同時對角線化。么正矩陣 W 的特性值不是 1 就是 -1,它依定義也是正規的,因為 WW* = I = W*W。而 P 是非負確定的厄米特矩陣,因此存在么正矩陣 U 同時將 W 和 P 對角線化,所以
A =WP = (UW'U*)(UΣU*) = U(W'Σ)U*
其中 W' 是主對角線元素只能是 ±1 的對角線矩陣,而 Σ 是 A 的奇異值構成的對角線矩陣,結果的 W'Σ 就是由 A 的特徵值構成的對角線矩陣。
由於 SVD 用到厄米特矩陣的對角線化,上面由 A 的極分解再到 W, P 的同時么正對角線化,至得到 A 的對角線化,也用到了么正矩陣和非負碓定(厄米特)矩陣的可么正對角線化,因此並不能當作正規矩陣可么正對角線化的證明,除非先證明了么正矩陣和厄米特矩陣的可么正對角線化問題。不過正規矩陣可對角線化問題,前面已經解決了。
以上我們談了方陣的特徵值、特徹向量與特徵(子)空間,雖然主要是談矩陣,但也適用於在 K^n 上的線性變換(算子);同時也談了一般對角線化及么正(或正交)對角線化的充分必要條件;同時談了一般矩陣的奇異值分解,它和么正對角線化(或特徵分解、譜分解)存在關聯。做為結束,我們要注意:即使是方陣,也不一定可對角線化;而奇異值分解在純量體是複數體時總是存在的,但即使么正分解存在,它和奇異值分解可能不同,明顯的差別是特徵值可以有正有負,而奇異值則限定是非負的。如果 A 是一個非負確定正規矩陣,則其么正對角線化也就是一個奇異值分解。
留言列表