如何理解矩阵的复数特征值和特征向量?

实数特征值的直观含义非常好理解,它就是在对应的特征向量方向上的纯拉伸/压缩。

而复数特征值,我们可以把它放在复数域中理解。但是这里给出一个不那么简洁、但是更加直观的理解方式:把它放在实空间中。那么复数特征值表现的就是旋转+等比放大/缩小。我们不妨从一个二维空间说起:

对二维空间的一个线性变换:

A=(a11a12a12a22)

假设它有两个复数特征值:

λ=a±bi=r(cos⁡θ±isin⁡θ)

以及相对应的两个特征向量:

v=(x1x2)±i(y1y2)

也就是说,虽然每个特征值都有一个实部和一个虚部(两个自由度),但是由于特征值必然是共轭成对出现的,那么两个特征值仍然只对应着一个实部和一个虚部(两个自由度)。对特征向量而言同理。

也就是说,一对复特征值给我们两个自由度,一个模,一个幅角。一对特征向量也给我们两个向量,一个是实部向量,一个是虚部向量。

于是乎,如下两个向量:

,(x1x2), (y1y2)

就可以构成一个二维空间的一组基。

那么可以证明,当我们选取这两个向量为基时,原线性变换的表述就变成了:

B=r(cos⁡(θ)−sin⁡(θ)sin⁡(θ)cos⁡(θ))

这是一个旋转矩阵乘以一个数字。也就是说,在特征向量的实部和虚部构成的基底下,这个线性变换就是一个纯粹的旋转 θ 外加一个等比放大倍数 r 。

比如说,我们令(简化起见,选取行列式为1的矩阵)

A=(0.7−0.50.61)

这个矩阵把下图中蓝色的空间变换成红色的空间:

我们可以按照上述的原则进行坐标变换,变换的结果就是这样的:

我们可以看到,经过坐标变换后,蓝色空间变为红色空间就是一个纯粹的旋转过程了。这里,复数特征值和特征向量的含义就是:

  • 特征值的模代表着等比放大的倍数
  • 特征值的幅角代表着旋转的角度
  • 特征向量的实部向量和虚部向量代表着实现上述变换的一组基

我们可以很容易推广到三维空间的变换,对一个三维矩阵:

A=(a11a12a13a21a22a23a31a32a33)

我们假设这个矩阵有三个不重叠的特征值,其中两个为共轭复数:

λ1/2=a±bi,λ3=c

那么,可以证明这个矩阵和下面这样一个分块矩阵相似,也就是说,我们可以通过选取某一个坐标系,把这个线性变换写成如下形式:

B=(ab0−ba000c)

我们令:

r=a2+b2, a=rcos⁡(θ), b=rsin⁡(θ)

那么,可以看到:

B=(cos⁡(θ)−sin⁡(θ)0sin⁡(θ)cos⁡(θ)0001)(r000r000c)

我们可以看到,这个变换就可以被分解成两个单独的变换 ,一个是纯旋转 :在x-y平面中的旋转,另一个纯伸缩:在x-y平面上的均匀拉伸r倍,以及在z方向上单向拉伸c倍。

实现这种变换的基就是复特征向量的实部向量、虚部向量、以及实特征值的特征向量。具体讲,假定矩阵A的特征向量为:

v1/2=(x1x2x3)±i(y1y2y3), v3=(z1z2z3)

那么,这三个基底就是:

(x1x2x3), (y1y2y3), (z1z2z3)

也就是说,当我们拿到任意一个三维矩阵(注意,这里不考虑特征值重根的情况):

  1. 我们可以把这个矩阵变成一个纯旋转和一个纯伸缩的两个变换的组合。
  2. 纯旋转的角度就是复数特征值的幅角,旋转发生在复特征向量的实部向量和虚部向量所构成的平面中。
  3. 纯伸缩的倍数在各个方向上分别是复特征向量的模、以及实特征向量本身。

如果我们继续推广到高维空间,一个线形变换可以通过上述基底的选择表示成:

{(cos⁡θ1−sin⁡θ1sinθ1cos⁡θ1)0⋯001⋯0⋮⋮⋱⋮00⋯(cos⁡θi−sin⁡θisinθicos⁡θi)}{r100⋯000r10⋯0000λ3⋯00⋮⋮⋮⋱⋮⋮00⋯ri000⋯0ri}

也是纯旋转+纯伸缩的两种变换的组合。

相关推荐
倒头就睡的小比特4 天前
算法竞赛C++常用的STL
c++·算法
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
猎头南楼4 天前
知识社区推荐系统实践:新用户冷启动与长短期兴趣建模的挑战 资深推荐算法工程师
人工智能·深度学习·算法·机器学习
旖旎夜光4 天前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
wzdark4 天前
大规模并行计算中的负载均衡算法研究4
算法
Because_of_Her14 天前
并查集-听课笔记
笔记·算法·并查集
码流子4 天前
高速公路安全监测实践:碰撞监测预警+物联网底座,从感知到处置的闭环
大数据·人工智能·物联网·算法·架构
another heaven4 天前
【算法/C++ MD5算法能否逆解码?原理、C++实现与同类哈希算法对比】
c++·算法·哈希算法
wzdark4 天前
从算法设计模式看编程思维的抽象能力4
算法
2601_962218614 天前
万象生鲜系统称重自动多退少补算法解决生鲜非标品痛点
大数据·数据库·人工智能·python·算法