线性代数直觉(五):行列式——让空间坍缩
我们来思考一下 H·v 的几何意义。H 将一个向量 v 变换成一个新的向量。通常,这种变换会旋转和拉伸 v,同时改变它的方向和长度。
但对于特殊的向量——特征向量,H 只会拉伸(或收缩)它们。它根本不会旋转它们。H·v = λv 的意思是“H 只是将 v 缩放了 λ 倍。”
现在,(H - λI)v = 0 等于 H·v - λv = 0,也就是 H·v = λv。所以我们要问:“对于哪些向量 v,H 的作用类似于简单的缩放?”这就是寻找特征向量的过程。
det(H - λI) = 0 的问题是:“对于哪些 λ 值,矩阵 (H - λI) 会使空间塌缩?” 行列式为零的矩阵会将空间压扁,这意味着存在非零向量,它会将其变为零。
想象一下二维空间,一个平面。通常,一个 2×2 矩阵会以各种方式变换这个平面:旋转、拉伸、剪切等等。但平面仍然是二维的。
但有些特殊的矩阵会“坍缩”这个平面。它们会把它压缩成一条线(一维),甚至一个点(零维)。
例如,矩阵[[1 1] [1 1]]。取每个向量 (x, y) 并将其映射到 (x+y, x+y)。注意,这两个分量是相同的!所以整个二维平面被压缩到对角线上。我们损失了一个维度。
这个矩阵的行列式是什么?零。因为行列式衡量的是“这个矩阵对面积的缩放程度是多少?”如果它从二维塌缩到一维,面积就变成零。
所以,当我们求解 det(H - λI) = 0 时,我们是在寻找使 (H - λI) 塌缩空间的 λ 值。这意味着存在非零向量 v,使得 (H - λI)v = 0,也就是 H·v = λv。
维度坍缩与 Hessian H 本身无关,H 不会使空间坍缩。H 是一个非常好的变换,可以保持维度不变。坍缩的是 (H - λI)。这是一个不同的矩阵,由 H 的对角线减去 λ 得到。
例如:H = [[2 1] [1 4]]
当 λ = 3+√2 时,我们得到:
H - λI = [[2-(3+√2), 1 ] [1, 4-(3+√2)]] = [[-1-√2, 1 ] [1, 1-√2 ]]
这个矩阵使空间坍缩。如果将它应用于特征向量 v = (1, 1+√2),则会得到零。它会将那个特定方向压扁。
原因很微妙:在那个特殊的λ值下,矩阵 (H - λI) 中的行会变得相互依赖,它们包含冗余信息!它们试图描述的约束实际上只是一个约束,而不是两个独立的约束。
所以事实是这样的:每个矩阵都有特征值,这是不可避免的。
当你解 det(H - λI) = 0 时,你总会得到解,如果你允许复数的话是这样,这些解就是特征值。但是,这一点很重要,并非每个矩阵都有实数特征值。有些矩阵只有复数特征值。
例如,一个二维的纯旋转矩阵:
[0 -1]
[1 0]
这会将每个向量旋转 90°。没有哪个方向只是缩放,每个方向都会旋转。所以它没有实数特征向量,只有复数特征向量。
对于任何矩阵,特征值和特征向量代表着那些特殊的方向,在这些方向上,变换会简化,变换不是旋转和拉伸,而是缩放。找到它们需要寻找 (M - λI) 何时失去秩,维度何时坍缩。特别是对于 Hessian 矩阵,由于它们是对称的,所以这个几何故事与曲率完美地联系在一起。特征值就是主曲率,特征向量就是主方向。
但是 Hessian 矩阵很特别!它是对称的(H = Hᵀ),因为二阶混合偏导数可以交换顺序。也就是说它等于它自己的转置矩阵。并且有一个很棒的定理:对称矩阵总是有实数特征值和垂直的特征向量。这就是为什么我们的 Hessian 分析如此清晰的原因。曲率方向总是实数,总是垂直的。几何结构保证完美。
