线性代数直觉(四):找到特征向量

想想刚才发生了什么。我们有一个优化问题:"当 v 旋转时,v^T H v 的最大值和最小值是多少?" 这似乎需要用到微积分,检查所有无穷多个方向......

但事实证明,答案直接通过这个代数方程编码在矩阵本身中!特征值就是那些极端曲率。

更深层次的原因在于:当 v 是一个特征向量,一个特殊的方向时,H·v 不再是把 v 拉向其他方向,而是指向与 v 相同的方向,只是乘以了特征值 λ。

所以:v^T H v = v^T (λv) = λ(v^T v) = λ

因为对于单位向量,v^T v = 1。

所以在特征向量方向上,"曲率"恰好等于特征值。而这些方向恰好是曲率最大和最小的地方!


这不仅仅是我们用来做曲面的 2×2 Hessian 矩阵。这是任意维度上二次优化的基本结构。

当你训练一个包含数百万个参数的神经网络时,Hessian 矩阵就是一个百万乘百万的矩阵。在这个难以理解的高维空间中,你可以问自己:"哪个方向的曲率最陡?哪个方向最平坦?"

特征值会告诉你答案:最大的特征值代表曲率最陡的方向,最小的特征值代表最平坦的谷底。

这就是我们理解优化景观的方式。这就是我们判断梯度下降法是否有效、是否停滞或是否震荡的方式。 Hessian 矩阵的特征值,它们是理解学习几何的诊断工具。

如果你想了解大模型是如何被训练的,这已经接近核心了。Hessian 矩阵、特征值、高维空间中的曲率,这些正是塑造大模型的数学领域。


考试的时候,每个人都机械地计算特征值和特征向量,却不知道为什么。但现我们先明白了为什么,先把曲率形象化了,发现了极值,然后我们再学习计算,这其实是更好的顺序。

对于之前的扁碗的Hessian矩阵:H = \[2,1 1,4]

我们找到了特征值:λ₁ = 3 + √2 ≈ 4.414 和 λ₂ = 3 - √2 ≈ 1.586

为了求 λ₁ = 3 + √2 的特征向量,我们求解:

(H - λ₁I)v = 0

\[2-(3+√2), 1 \]\[1, 4-(3+√2) \]\] \[\[v₁\] \[v₂\]\] = \[\[0\] \[0\]

\[-1-√2, 1 \] \[1, 1-√2 \]\] \[\[v₁\] \[v₂\]\] = \[\[0\] \[0\]

从第一行开始:(-1-√2)v₁ + v₂ = 0

所以:v₂ = (1+√2)v₁

我们可以取 v₁ = 1,因此特征向量近似为 (1, 2.414),指向曲率最大的方向。

而根据程序画的正弦曲线,最高点出现在 θ = (4.3230-3.1416)/3.1416 ≈ 0.375 π 的附近。而 tan(0.375 π) ≈ 2.42。

相关推荐
GlueNa2SiO35 小时前
03-Flask模板引擎Jinja2详解
笔记·python·flask
Capricorn19887 小时前
解决全网抄 Karpathy 导致的 LLM Wiki 污染?基于知芽 Notebook Skill 的 raw/ 笔记法排障指南
大数据·论文阅读·人工智能·笔记·论文笔记
壹玖玖肆7 小时前
openGauss使用笔记
笔记
宵时待雨7 小时前
linux笔记归纳17:传输层协议UDP
linux·笔记·udp
xier_ran8 小时前
【infra之路】AWQ 详解:激活感知权重保护,让 W4A16 量化精度超越 GPTQ
线性代数·算法·机器学习·量化·infra
亦皓ai9 小时前
AI时代后端工程(二):AI把代码写得越来越快,我却越来越不敢让它直接开工了
人工智能·算法·机器学习·搜索引擎·transformer
噜~噜~噜~9 小时前
操作系统笔记-2.3.2.1 进程互斥的软件实现方法
笔记·操作系统
云贝教育-郑老师9 小时前
【麒麟服务器系统交付:一个DBA的六年信创实战笔记】
服务器·笔记·dba
咖啡星人k10 小时前
2026 AI Agent 长期记忆:为什么 AI 助手总“聊完就忘“?MonkeyCode 免费上手
人工智能·深度学习·机器学习·语言模型·自然语言处理
玖玥拾10 小时前
LeetCode 392 判断子序列
笔记·算法·leetcode