特征值和特征向量(3Blue1Brown学习笔记)

特征值和特征向量(3Blue1Brown学习笔记)

基变换

以原基底观测新基底表示的向量

以二维空间为例,向量的坐标 [ a    b ] T [a \,\, b]^T [ab]T,这意味着从起点到他的终点需要向右移动三个单位,向上移动2个单位。以基底角度看,向量就是对基底的拉伸或者压缩。坐标的第一个元素是缩放 i i i,方向为 → \rightarrow ,坐标的第二个元素是缩放 j j j方向是 ↑ \uparrow

i i i j j j是二维空间最为常用的基向量,如果我们考虑使用不同于 i i i j j j的一组基向量表示空间中的向量,那么如何在这两组基向量中转换同一个向量将是一个重要的命题。我们将 i i i j j j定义为"Ours"将新的一组基底定义为"Jennifer’s",它们分别对应图中蓝色的 π \pi π和粉色的 π \pi π。使用Ours来描述Jennifer‘s的基底,可以获得这种表示 b 1 → = [ 2    1 ] T \overrightarrow{b_1} = [2 \,\, 1]^T b1 =[21]T以及 b 2 → = [ − 1    1 ] T \overrightarrow{b_2}=[-1 \,\, 1]^T b2 =[11]T

image-20221028133204441

Ours下的 [ 1    2 ] T [1 \,\, 2]^T [12]T 和Jennifer‘s下的 [ 1    2 ] T [1 \,\, 2]^T [12]T会完全不同。因为 b 1 → \overrightarrow{b_1} b1 b 2 → \overrightarrow{b_2} b2 就是她认为的 [ 1    0 ] T [1\,\, 0]^T [10]T [ 0    1 ] T [0 \,\, 1]^T [01]T

image-20221028134257548image-20221028134146070

二维空间中一个确定的向量可以用Ours和Jennifer’s两个体系描述。这可以类比于中国人和美国人都在表达“你好”,中国人说的就是“你好”,美国人说“Hello”。为了更方便的交流,我们需要找出这两个语言体系互相转换的规则。 Jennifer‘s描述了一个向量 [ − 1    2 ] T [-1 \,\, 2]^T [12]T,这个向量在Ours下是如何表示的呢。借助之前的分析Jennifer’s的基底用Ours描述是 b 1 → = [ 2    1 ] T \overrightarrow{b_1} = [2 \,\, 1]^T b1 =[21]T b 2 → = [ − 1    1 ] T \overrightarrow{b_2}=[-1 \,\, 1]^T b2 =[11]T。可以得到如下的推导,也就完成了从Jennifer’s 到Ours语言体系的转换。

v ^ = − 1 b 1 ^ + 2 b 2 ^ = − 1 [ 2 1 ] + 2 [ − 1 1 ] = [ − 4 1 ] = − 4 [ 1 0 ] + 1 [ 0 1 ] = − 4 i ^ + 1 j ^ \hat{v}=-1\hat{b_1} + 2\hat{b_2} = -1\left[ \begin{array}{c} 2\\ 1\\ \end{array} \right] +2\left[ \begin{array}{c} -1\\ 1\\ \end{array} \right] =\left[ \begin{array}{c} -4\\ 1\\ \end{array} \right] = -4 \left[ \begin{array}{c} 1 \\ 0 \\ \end{array} \right] + 1 \left[ \begin{array}{c} 0 \\ 1 \\ \end{array} \right] = -4\hat{i} + 1\hat{j} v^=1b1^+2b2^=1[21]+2[11]=[41]=4[10]+1[01]=4i^+1j^

image-20221028135527037

上面的公式也可以写成如下所示的矩阵乘法。
[ 2 − 1 1 1 ] [ − 1 2 ] \left[ \begin{array}{c} 2 & -1\\ 1 & 1\\ \end{array} \right] \left[ \begin{array}{c} -1\\ 2\\ \end{array} \right] [2111][12]
A = [ [ 2    1 ] T    [ − 1    1 ] T ] A = [[2 \,\, 1]^T \,\, [-1 \,\, 1]^T] A=[[21]T[11]T], A A A这个矩阵的两列也分别对应了 b 1 → \overrightarrow{b_1} b1 b 2 → \overrightarrow{b_2} b2 ,也就是Ours下 b 1 → \overrightarrow{b_1} b1 b 2 → \overrightarrow{b_2} b2 的坐标,可以把它解读为我们对Jennifer’s向量的“误解”。可以这样说,我们对Jennifer’s的语言体系持有一个有色眼镜(上述矩阵),无论Jennifer’s说什么,我们都要用这个有色眼镜(矩阵)去看才能理解她表达的意思。

到这里,我们就知道了如何将Jennifer’s表达的语言转换到Ours的语言体系里,那么如何将Ours语言体系的内容转换到Jennifer’s的语言体系呢。

以新基底观测原基底表示的向量

A A A这个矩阵可以将Jennifer’s的语言转换到Ours的语言,那么 A − 1 A^{-1} A1就可以将Ours的语言转换到Jennifer’s语言。下图中,网格到网格的变换可以这样理解,我们想要理解另一个语言体系,那首先要把我们的视角(基底)转换到另一套语言体系的视角(基底),然后再去观察这个视角里是如何对基底进行缩放的。就可以得到我们视角下另一套语言表述的内容。

image-20221028141353633image-20221028141401882

可以看下面的这个转换的例子。

image-20221028143333333

Jennifer如何描述空间旋转 90 ° 90 \degree 90°呢。在Ours下 [ [ 0    1 ] T    [ − 1    0 ] T ] [[0\,\, 1]^T \,\, [-1\,\, 0]^T] [[01]T[10]T]可以表示为对空间的逆时针旋转。如下图,我们首先将Jennifer’s下的向量转换到Ours下,然后旋转,然后再将语言体系转换到Jennifer’s 下即可。其中, [ − 1    2 ] T [-1 \,\, 2]^T [12]T可以是任意向量。

image-20221028145127831

如果我们单独看这个变换矩阵的话,可以发现它接受一个Jennifer’s的向量,返回一个Jennifer’s下逆时针旋转 90 ° 90 \degree 90°的向量。

image-20221028151248921

​ 我们将变换矩阵写成如下的形式,这是一张数学上的转移作用, M M M为常见的一种变换,两边的矩阵代表着转移作用,也就是视角上的转化。
A − 1 M A A^{-1}MA A1MA

特征值和特征向量

image-20221028151816216

对于线性变换 [ [ 3    0 ] T    [ 1    2 ] T ] [[3\,\, 0]^T \,\, [1 \,\, 2]^T] [[30]T[12]T] x x x轴上的向量并没有改变方向(共线)只是在该变换下出现了一定量的缩放。也称这种情况为,向量留在了自己张成的空间里。

image-20221028153613862

对于 [ [ 3    0 ] T    [ 1    2 ] T ] [[3\,\, 0]^T \,\, [1 \,\, 2]^T] [[30]T[12]T],有两个张成空间上的向量都只是缩放为了原来的某个倍数,其他张成空间上的向量都离开了它们本来张成的空间。这些留在原来原来空间的向量就是这个线性变换的特征向量,这些向量变换后缩放的倍数就是特征值。

image-20221028154542873

可以用如下公式表示。 A A A是线性变换, v → \overrightarrow{v} v 是特征向量, λ \lambda λ是特征值。

A v → = λ v → A v → = ( λ I ) v → A v → − ( λ I ) v → = 0 → ( A − λ I ) v → = 0 → A \overrightarrow{v} = \lambda \overrightarrow{v} \\ A \overrightarrow{v} = (\lambda I)\overrightarrow{v} \\ A \overrightarrow{v} - (\lambda I)\overrightarrow{v} = \overrightarrow{0} \\ (A - \lambda I)\overrightarrow{v} = \overrightarrow{0} \\ Av =λv Av =(λI)v Av (λI)v =0 (AλI)v =0
求解特征值和特征向量就是求解一个非零 v → \overrightarrow{v} v 使得等式成立。当 A − λ I A- \lambda I AλI将空间压缩后,存在非零向量使得矩阵和它的乘积为零向量。

image-20221028204338872image-20221028204357644

举例

有特征向量

A = [ 3 1 0 2 ] A v → = λ v → ( A − λ I ) v → = 0 → det ⁡ ( A − λ I ) = 0 λ = 2    o r    λ = 3 A = \left [ \begin{matrix} 3 & 1 \\ 0 & 2 \end{matrix} \right] \\ A \overrightarrow{v} = \lambda \overrightarrow{v} \\ (A - \lambda I)\overrightarrow{v} = \overrightarrow{0} \\ \det (A - \lambda I) = 0 \\ \lambda = 2 \,\, or \,\, \lambda = 3 A=[3012]Av =λv (AλI)v =0 det(AλI)=0λ=2orλ=3

无特征向量

A = [ 0 − 1 1 0 ] A = \left [ \begin{matrix} 0 & -1 \\ 1 & 0 \end{matrix} \right] \\ A=[0110]

矩阵 A A A是一个将二维空间旋转 90 ° 90 \degree 90°的线性变换,容易想到,当空间旋转时没有向量会留在原来的张成空间内。所以对于 A A A而言,没有特征向量。

image-20221104124101472
多个特征向量

A = [ 2 0 0 2 ] A = \left [ \begin{matrix} 2 & 0 \\ 0 & 2 \end{matrix} \right] \\ A=[2002]

上面这个线性变换把二维空间的两个基底分别拉伸了2倍,平面内的所有向量也被拉伸了2倍,所以每一个向量都是该线性变换的特征向量。

( A − λ I ) v → = 0 A − λ I = [ 2 − λ 0 0 2 − λ ] det ⁡ ( A − λ I ) = 0 λ = 2 [ 0 0 0 0 ] v → = 0 (A-\lambda I) \overrightarrow{v} = 0 \\ A - \lambda I = \left [ \begin{matrix} 2-\lambda & 0 \\ 0 & 2-\lambda \end{matrix} \right] \\ \det(A - \lambda I) = 0 \\ \lambda = 2 \\ \left [ \begin{matrix} 0 & 0 \\ 0 & 0 \end{matrix} \right] \overrightarrow{v} = 0 (AλI)v =0AλI=[2λ002λ]det(AλI)=0λ=2[0000]v =0

特征值和特征向量在三维旋转中的应用

旋转过程中,旋转轴上的向量会保留在它们张成的空间中,求得了该特征向量也就得到了旋转轴。而把三维旋转看做绕某个轴旋转,比直接考虑 3 × 3 3 \times 3 3×3的矩阵来的更为直观。

image-20221028184352801image-20221028184234498

旋转时特征向量必须为1,因为旋转不会缩放任何向量。

image-20221028161112447image-20221028184653179

对角矩阵

如果基向量恰好是特征向量,会发生什么?

image-20221104125342677

I = [ − 1 0 0 2 ] I = \left [ \begin{matrix} -1 & 0 \\ 0 & 2 \end{matrix} \right] I=[1002]

结合上面的计算过程,我们能很快的口算出 I I I的特征向值是 − 1 -1 1 2 2 2,对应的特征向量分别是 k [ − 1    0 ] T k [-1\,\,0]^T k[10]T k [ 0    2 ] T k [0\,\,2]^T k[02]T

对角矩阵计算乘法是很便利的。
[ 3 0 0 2 ] [ 3 0 0 2 ] [ 3 0 0 2 ] = [ 3 3 0 0 2 3 ] \left [ \begin{matrix} 3 & 0 \\ 0 & 2 \end{matrix} \right] \left [ \begin{matrix} 3 & 0 \\ 0 & 2 \end{matrix} \right] \left [ \begin{matrix} 3 & 0 \\ 0 & 2 \end{matrix} \right] = \left [ \begin{matrix} 3^3 & 0 \\ 0 & 2^3 \end{matrix} \right] [3002][3002][3002]=[330023]
而对于非对角矩阵而言,计算高痴迷的矩阵乘法简直是噩梦。但是如果你要计算的这个矩阵(k维)有足够的特征向量,这些特征向量同样可以张成一个k维的空间,那么我们可以通过线性变换的方式,利用特征向量求解原矩阵的高次幂乘法。

image-20221104125844144

A = [ 3 1 0 2 ] v 1 → = k [ 1 − 1 ] ,    v 2 → = k [ 1 0 ] A = \left [ \begin{matrix} 3 & 1 \\ 0 & 2 \end{matrix} \right] \\ \overrightarrow{v_1} = k \left [ \begin{matrix} 1 \\ -1 \end{matrix} \right],\,\, \overrightarrow{v_2} = k \left [ \begin{matrix} 1 \\ 0 \end{matrix} \right] A=[3012]v1 =k[11],v2 =k[10]

通过下图中的变换,我们可以得到一个新的矩阵,这个矩阵和原矩阵代表了相同的变换(在不同视角下,新矩阵以新基底表示)。对于 A A A而言,这个过程叫做矩阵的对角化,并非所有矩阵都能对角化。

image-20221104131029943

可对角矩阵的定义: 若存在可逆矩阵 S S S,使得 S − 1 A S S^{−1}AS S1AS对角矩阵,则称为矩阵 A A A是可对角化的(diagonalized)。
S − 1 A S = Λ o r    A = S Λ S − 1 S^{-1} A S = \varLambda \\ or \,\, A = S \varLambda S^{-1} S1AS=ΛorA=SΛS1
那么,矩阵的幂可以这样计算。
A n = ( S Λ S − 1 ) n = ( S Λ S − 1 ) ( S Λ S − 1 ) ⋯ ( S Λ S − 1 ) = S Λ ( S − 1 S ) Λ ( S − 1 S ) ⋯ ( S − 1 S ) Λ S − 1 = S Λ n S − 1 \begin{aligned} A^{n} &= (S \varLambda S^{-1}) ^ n \\ &= (S \varLambda S^{-1})(S \varLambda S^{-1}) \cdots (S \varLambda S^{-1}) \\ &= S \varLambda (S^{-1}S) \varLambda (S^{-1} S) \cdots (S^{-1} S) \varLambda S^{-1} \\ &= S \varLambda ^ n S^{-1} \end{aligned} An=(SΛS1)n=(SΛS1)(SΛS1)(SΛS1)=SΛ(S1S)Λ(S1S)(S1S)ΛS1=SΛnS1

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值