特征值分解

2023-05-16 20:13:21 浏览数 (2)

1. 简介

以物理中「力」的角度来看待,我们通常会将「合力」分解为各个「分力」,来描述整个「合力」的影响。特征值分解便是将「矩阵」分解成各个方向的分量,通过对各个分量的刻画来描述此矩阵。

特征分解:eigen decomposition 特征向量:eigen vector 特征值:eigen value

2. 理解

设矩阵

A in mathbb{R}^{n times n}

,向量

x in mathbb{R}^{n times 1}

,则有:

  • 矩阵乘法本质是一种变换。以几何角度来看,
Ax

表示对向量

x

进行旋转和伸缩变换。

  • 矩阵
A

的特征向量是一种特殊的向量,满足

Ax = lambda x

。也就是说,矩阵

A

对特征向量

x

只起到伸缩变换的作用,而没有旋转变换的作用

Ax = lambda x

表示矩阵

A

和特征值

lambda

、特征向量

x

之间建立了联系,但无法通过单一的

lambda

x

来表示

A

,因为单一的式子是不完备的。对于秩为

m

的矩阵

A

,应该存在

m

个这样的式子,满足:

begin{aligned} A(x_1, x_2, cdots, x_m) & = (lambda_1 x_1, lambda_2 x_2, cdots, lambda_m x_m) \ & = (x_1, x_2, cdots, x_m) left[begin{matrix} lambda_1 & 0 & cdots & 0 \ 0 & lambda_2 & cdots & 0 \ 0 & 0 & cdots & lambda_m \ end{matrix}right] end{aligned}

简化表达为:

AV = V Lambda

从而可以得到矩阵

A

的表达:

A = V Lambda V^{-1}

,也即矩阵

A

特征值分解

  • 特征值和特征向量是为了研究向量在经过线性变换后的方向不变性而提出的。一个矩阵和该矩阵的非特征值向量相乘是对该向量的旋转和伸缩变换,一个矩阵和该矩阵的特征向量相乘是对该向量的伸缩变换,其伸缩程度取决于对应特征值的大小。
  • 矩阵在特征向量所指的方向上具有增强(或减弱)特征向量的作用。也就是说,如果矩阵持续地叠代作用于向量,那么特征向量的就会突显出来。
  • 设矩阵
A in mathbb{R}^{n times n}

的特征向量为

(v_1, v_2, cdots, v_n)

,特征值为

(lambda_1, lambda_2, cdots, lambda_n)

,则对于向量

x = x_1 v_1 x_2 v_2 cdots x_n v_n

,有

begin{aligned} Ax &= A(x_1 v_1 x_2 v_2 cdots x_n v_n) \ &= x_1 A v_1 x_2 A v_2 cdots x_n A v_n \ &= x_1 lambda_1 v_1 x_2 lambda_2 v_2 cdots x_n lambda_n v_n \ end{aligned}

使用

A

作用

x

k

次,有

begin{aligned} A^k x &= A^{k-1} A x \ &= A^{k-1} (x_1 lambda_1 v_1 x_2 lambda_2 v_2 cdots x_n lambda_n v_n) \ &= A^{k-2} (x_1 lambda_1^2 v_1 x_2 lambda_2^2 v_2 cdots x_n lambda_n^2 v_n) \ &quad vdots \ & = x_1 lambda_1^k v_1 x_2 lambda_2^k v_2 cdots x_n lambda_n^k v_n \ end{aligned}

一般假定

lambda_1 gt lambda_2 gt cdots gt lambda_n

,故有

begin{aligned} A^k x &= lambda_1^k(x_1 v_1 x_2 frac{lambda_2^k}{lambda_1^k} v_2 cdots x_n frac{lambda_n^k}{lambda_1^k} v_n) \ end{aligned}

k rightarrow infty

时,有

lim_{k rightarrow infty} A^k x = lambda_1^k x_1 v_1

即当矩阵

A

作用在

x

上足够多次时,将得到矩阵

A

的主特征向量的伸缩,归一化便可得到主特征向量

v_1

3. 求解

只有对可对角化矩阵才可以施以特征分解。

  • 首先求出所有特征值,由
Av = lambda v Rightarrow (lambda I - A) v = 0

为使上述方程有非零解,要求

det{(lambda I - A)} = 0

  • 再根据求出的特征值
lambda

,代入

Av = lambda v

去计算对应的特征向量

v

附录

  • 一文解释 矩阵特征分解

0 人点赞