【线性代数】矩阵的特征分解、特征值和特征向量(eigen-decomposition, eigen-value & eigen-vector)
就像我们可以通过质因数分解来发现整数的一些内在性质一样(12 = 2 x 2 x 3
),我们也可以通过分解矩阵来发现表示成数组元素时不明显的函数性质。
矩阵分解有种方式,常见的有
- 特征分解
- SVD 分解
- 三角分解
特征分解
特征分解是使用最广泛的矩阵分解之一,即我们将矩阵分解成一组特征向量和特征值。方阵 的特征向量(eigen vector)是指一个非零向量 ,这个向量与 相乘后相当于对该向量进行放缩变换– 方向不变,只是大小成倍数的缩放:
, 标量 被称为这个特征向量对应的特征值。更准确的说,这里的 是 右奇异向量 (right singular vector), 相应的我们也可以定义 左奇异向量(left singular vector) 。
如果 是 的特征向量,那么任何缩放后的 , 也是 的特征向量,而且 与 具有相同的特值。基于以上原因,我们通常只考虑单位特征向量。
假设 矩阵 有 个线性无关特征向量 ,对应着特征值 . 我们将特征向量连接成一个矩阵,使得每一列是一个特征向量: .类似地,我们也可以将特征值连接成一个向量 ,因此 的特征分解可以记做
.
更进一步,每一个实对称矩阵都可以分解成实特征向量和实特征值
, 其中 是 的特征向量组成的正交矩阵, 是对应特征值构成的对角矩阵。按照惯例,我们一般按降序排列 的条目。
一些规定,
- 所有特征值都是正数的矩阵被称为
正定(positive definite)
, , 一个优良性质 - 所有特征值都是非负数的矩阵被称为
半正定(positive semidefinite)
, . 一个优良性质, - 所有特征值都是负数的矩阵被称为
负定(negative definite)
, - 所有特征值都是非正数的矩阵被称为
半负定(negative semi-definite)
,
如何理解特征值和特征向量
如果把矩阵看做运动的表征,那么
- 特征向量就是运动的方向
- 特征值就是运动的速度
如果把矩阵看做空间的基底的组合,那么
如左图,矩阵 有两个标准正交的特征向量 , 图中蓝色单位圆代表所有的单位向量 的集合;右图中,蓝色椭圆代表 点的集合,即 把所有的单位向量拉伸后的效果。
如何用特征值和特征向量解决具体问题?
优化方程求解
实对称矩阵的特征分解可以用于优化二次方程 ,其中限制 .当 等于 的某一个特征向量的时候,会返回对应的特征值。在限制条件下,函数 的最大值就是最大特征值,最小值就是最小特征值。