利用特征向量的属性,矩阵 A A A 可以变成一个对角化矩阵 Λ \Lambda Λ

1. 对角化

假设一个 n × n n×n n×n 的矩阵 A A A n n n 个线性不相关的特征向量 x 1 ,   , x n x_1,\cdots,x_n x1,,xn ,把它们作为特征向量矩阵 S S S 的列,那么就有 S 1 A S = Λ S^{-1}AS=\Lambda S1AS=Λ

矩阵 A A A 被对角化了,因为所有的特征向量位于矩阵 Λ \Lambda Λ的对角线上。

证明过程也很简单,首先我们计算 A S AS AS

一个技巧就是将 A S AS AS 分解成 S Λ S\Lambda SΛ

所以我们有

A S = S Λ S 1 A S = Λ A = S Λ S 1 AS=S\Lambda \quad S^{-1}AS=\Lambda \quad A=S\Lambda S^{-1} AS=SΛS1AS=ΛA=SΛS1

矩阵 S S S 有逆矩阵,因为我们假设它的列是 n n n 个线性不相关的特征向量。如果没有 n n n 个线性不相关的特征向量,我们就不能进行对角化。

A = S Λ S 1 A=S\Lambda S^{-1} A=SΛS1 可得, A 2 = S Λ S 1 S Λ S 1 = S Λ 2 S 1 A^2=S\Lambda S^{-1}S\Lambda S^{-1} = S\Lambda^2 S^{-1} A2=SΛS1SΛS1=SΛ2S1,平方后我们得到** S S S 中相同的特征向量和 Λ \Lambda Λ 中平方的特征值**。同理,我们可以得到 k k k 次方为 A k = S Λ k S 1 A^k=S\Lambda^k S^{-1} Ak=SΛkS1

k = 1 k=1 k=1 时,我们得到 A A A.当 k = 0 k=0 k=0 时,我们得到 A 0 = I A^0=I A0=I。当 k = 1 k=-1 k=1 时,我们得到 A 1 A^{-1} A1

再继续往下进行之前,有几点需要我们注意。

  • 如果特征值 λ 1 ,   , λ n \lambda_1,\cdots,\lambda_n λ1,,λn 全部都不相同,那么自动地特征向量 x 1 ,   , x n x_1,\cdots,x_n x1,,xn 就是线性不相关的。任意没有重复特征值的矩阵都可以被对角化。

证明:

假设 c 1 x 1 + + c n x n = 0 c_1x_1 + \cdots+c_nx_n = 0 c1x1++cnxn=0,我们乘以矩阵 A A A,有

<mlabeledtr> <mtext> (1) </mtext> c 1 λ 1 x 1 + + c n λ n x n = 0 </mlabeledtr> \tag{1} c_1\lambda_1x_1 + \cdots+c_n\lambda_nx_n = 0 c1λ1x1++cnλnxn=0(1)

然后,乘以 λ n \lambda_{n} λn 并减去上面的式子 (1),有

<mlabeledtr> <mtext> (2) </mtext> c 1 λ n x 1 + + c n λ n x n = 0 </mlabeledtr> \tag{2} c_1\lambda_{n}x_1 + \cdots+c_n\lambda_{n}x_n = 0 c1λnx1++cnλnxn=0(2)

<mlabeledtr> <mtext> (3) </mtext> c 1 ( λ n λ 1 ) x 1 + + c n 1 ( λ n λ 1 ) x n 1 = 0 </mlabeledtr> \tag{3} c_1(\lambda_{n}-\lambda_1)x_1 + \cdots+c_{n-1}(\lambda_{n}-\lambda_1)x_{n-1} = 0 c1(λnλ1)x1++cn1(λnλ1)xn1=0(3)

这会消去 x n x_n xn,我们继续用 (3) 式分别乘以 A A A λ n 1 \lambda_{n-1} λn1,再相减, x n 1 x_{n-1} xn1 就也被消去了。一直重复这个过程,最后,我们就只剩下了 x 1 x_1 x1

<mlabeledtr> <mtext> (4) </mtext> c 1 ( λ n λ 1 ) ( λ n 1 λ 1 ) ( λ 2 λ 1 ) x 1 = 0 </mlabeledtr> \tag{4} c_1(\lambda_{n}-\lambda_1)(\lambda_{n-1}-\lambda_1)\cdots(\lambda_{2}-\lambda_1)x_1= 0 c1(λnλ1)(λn1λ1)(λ2λ1)x1=0(4)

因为特征值互不相同,因此有 c 1 = 0 c_1 = 0 c1=0,同理我们可得所有的系数都为 0,也即零空间只有零向量,所以这些特征向量是线性不相关的。

  • 特征向量乘以任意非零常数后, A x = λ x Ax = \lambda x Ax=λx 仍然成立。

  • 特征向量在 S S S 中的顺序和特征值在 Λ \Lambda Λ 中的顺序是一样的,也就是特征向量和特征值必须一一对应。

在上面的例子中,如果我们互换特征向量的顺序,那么 Λ \Lambda Λ 中特征值的顺序也要相应改变。

  • 一些矩阵没有足够的特征向量,因此不能被对角化,特别是注意有重复特征值的情况。

而且要注意,可逆性和可对角化性之间没有联系。可逆性和是否存在零特征值有关,而可对角化性和是否有足够的特征向量有关

2. 斐波那契数列

斐波那契序列满足 F k + 2 = F k + 1 + F k F_{k+2} = F_{k+1} + F_{k} Fk+2=Fk+1+Fk。为了找到 F 100 F_{100} F100,我们可以从 F 2 F_{2} F2 开始,每次求出一个新的值,直至得到 F 100 F_{100} F100。线性代数则给出了一个更好的方法,我们将之转化为 u k + 1 = A u k u_{k+1}=Au_k uk+1=Auk 的问题。

每一次我们都乘以矩阵 A A A,100 次后我们就得到了 u 100 = A 100 u 0 u_{100}=A^{100}u_0 u100=A100u0

这样,我们就可以利用特征值来求解了。

求解特征方程,我们可以得到两个特征值分别为:

进而得到两个特征向量分别为:

x 1 = [ <mstyle displaystyle="false" scriptlevel="0"> λ 1 </mstyle> <mstyle displaystyle="false" scriptlevel="0"> 1 </mstyle> ] x 2 = [ <mstyle displaystyle="false" scriptlevel="0"> λ 2 </mstyle> <mstyle displaystyle="false" scriptlevel="0"> 1 </mstyle> ] x_1 = \begin{bmatrix}\lambda_1\\ 1\end{bmatrix} \quad x_2 = \begin{bmatrix}\lambda_2\\ 1\end{bmatrix} x1=[λ11]x2=[λ21]

然后我们将 u 0 u_0 u0 表示为特征向量的线性组合。

那么就有

u 100 = A 100 u 0 = 1 λ 1 λ 2 A 100 ( x 1 x 2 ) = λ 1 100 x 1 λ 2 100 x 2 λ 1 λ 2 u_{100}=A^{100}u_0 = \frac{1}{\lambda_1 - \lambda_2}A^{100}(x_1-x_2) = \frac{\lambda_1^{100}x_1 - \lambda_2^{100}x_2}{\lambda_1 - \lambda_2} u100=A100u0=λ1λ21A100(x1x2)=λ1λ2λ1100x1λ2100x2

上式中的第二项底数小于 0.5,因此会渐渐趋向于 0,也就是说随着 n n n 增大逐渐只有第一项有效。

F 101 F 100 1 + 5 2 1.618 \frac{F_{101}}{F_{100}} \approx \frac{1+\sqrt{5}}{2}\approx 1.618 F100F10121+5 1.618

这个数字就是我们众所周知的黄金比例。

3. A A A 的幂

斐波那契数列是一个典型的差分方程,每一步我们都乘以矩阵 A A A。下面我们来看一下对角化是怎么来快速计算 A k A^k Ak 的。

A k u 0 = ( S Λ S 1 ) ( S Λ S 1 ) u 0 = S Λ k S 1 u 0 A^k u_0= (S\Lambda S^{-1})\cdots(S\Lambda S^{-1})u_0 = S\Lambda^{k} S^{-1}u_0 Aku0=(SΛS1)(SΛS1)u0=SΛkS1u0

然后我们将 u 0 u_0 u0 表示为特征向量的线性组合

  • u 0 = c 1 x 1 + + c n x n u 0 = S c c = S 1 u 0 u_0 = c_1x_1+\cdots+c_nx_n \to u_0=Sc \to c = S^{-1}u_0 u0=c1x1++cnxnu0=Scc=S1u0

  • A u 0 = c 1 A x 1 + + c n A x n = c 1 λ 1 x 1 + + c n λ n x n Au_0 = c_1Ax_1+\cdots+c_nAx_n =c_1\lambda_1x_1+\cdots+c_n\lambda_nx_n Au0=c1Ax1++cnAxn=c1λ1x1++cnλnxn

  • A k u 0 = c 1 λ 1 k x 1 + + c n λ n k x n = S Λ k c A^ku_0 = c_1\lambda_1^kx_1+\cdots+c_n\lambda_n^kx_n = S\Lambda^kc Aku0=c1λ1kx1++cnλnkxn=SΛkc

4. 不可对角化矩阵

特征值 λ \lambda λ 可能会有重复情况,这时候我们想知道它的重复度(multiplicity),有两种方法来计量。

  • 几何重数(Geometric Multiplicity)与特征值 λ \lambda λ 对应的线性不相关的特征向量的个数
  • 代数重数(Algebraic Multiplicity)特征值 λ \lambda λ 的重复次数,也就是 d e t ( A λ I ) det(A-\lambda I) det(AλI) 的重根数

几何重数小于等于代数重数。

几何重数小于代数重数说明特征向量数量不够,也就是说 A A A 不能被对角化。

5. A B AB AB A + B A+B A+B 的特征值

让我们来猜一猜 A B AB AB 的特征值是多少?

你可能会说是它们各自特征值的积。

A B x = A β x = β A x = β λ x ABx = A\beta x = \beta Ax=\beta\lambda x ABx=Aβx=βAx=βλx

但是,通常情况下 A A A B B B 的特征向量是不相同的,因此上面的证明是错误的。同样,两个矩阵各自特征值的和也通常不是两个矩阵和的特征值。

但是,如果 x x x 同时是 A A A B B B 的特征向量。那么有

A B x = λ β x = B A x A B = B A ABx = \lambda\beta x = BAx \to AB = BA ABx=λβx=BAxAB=BA

因此,如果 A A A B B B 都可以被对角化,它们拥有相同的特征向量当且仅当 A B = B A AB=BA AB=BA

获取更多精彩,请关注「seniusen」!