矩阵乘以向量?向量乘以向量?

这里有一个问题:v^T H v 到底是什么意思?为什么向量乘以矩阵,然后再乘以向量(的转置),就能得到方向曲率(二阶方向导数)?

好吧,我们来展开说。首先,矩阵乘以向量是什么意思?

当你进行 H·v 运算时,你实际上是对 H 的列进行线性组合,并由 v 的各个分量加权。结果是一个新向量,它告诉你 H 如何"变换"方向 v。

但我们不会就此止步,接下来我们进行 v^T · (H·v) 运算,它将变换后的向量投影回原始方向 v。

直观的理解是:H·v 告诉你"当你沿方向 v 移动时,梯度会如何变化?" 然后 v^T ·(该变化)会问"其中有多少变化是沿着方向 v 本身发生的?"


我们把 v^T 写在左边而不是 v 写在右边是有原因的。计算 H·v 时,我们得到一个向量,它是沿方向 v 移动时梯度的变化。到目前为止一切顺利。

现在,我们想知道:这个变化中有多少是沿我们移动方向的?我们要将这个"梯度变化向量"与方向 v 做点积。两个向量的点积可以写成 v^T · (某物) 或 (某物)^T · v,它们得出的数字相同。但按照惯例,我们将其写成 v^T · H · v,以显示对称性。

(H v)^T v = v^T H v

v^T 从技术上讲是一个 1×n 矩阵(行向量),当它与列向量 H·v 相乘时,我们得到一个 1×1 矩阵,它只是一个数字,一个标量。但更深层次的是,我们并非只是随机选择符号。v^T H v 这种形式揭示了一些美妙的东西,它是一个二次型。而二次型有一些特殊的性质......


H·v 告诉你当你沿方向 v 移动时,梯度是如何变化的。但这种变化可能出现在各种方向上,也许梯度一开始指向东北,最后指向西南,或者其他方向。

但我们关心的是方向 v 的曲率:梯度沿着我们行走的方向变化了多少?

如果你向东走,梯度向东越来越陡,那么你方向上的曲率就是正的,你上坡的速度越来越快。但如果梯度以垂直方向变化,比如你向东走时,梯度呈南北旋转的更多,这其实并不会影响(向东走的)你对路径陡峭程度的感觉。

点积 v^T · (H·v) 滤除了所有无关的方向变化,只保留了重要的部分:与行进方向一致的变化。

在一维空间中,只有两个方向:向前和向后,正向和负向。一切都很简单。但进入二维、三维、数百个维度时......方向突然变得如此丰富复杂。而Hessian矩阵正是捕捉曲率所有复杂性的数学对象。

相关推荐
2zcode1 小时前
基于LSTM神经网络的金属材料机器学习本构模型研究(硕士级别)
神经网络·机器学习·lstm·金属材料
其实防守也摸鱼2 小时前
CTF密码学综合教学指南--第五章
开发语言·网络·笔记·python·安全·网络安全·密码学
phoenix@Capricornus2 小时前
从贝叶斯决策到最小距离判别法再到Fisher判别分析
机器学习
Yeh2020584 小时前
Filter与Listener笔记
笔记
Chef_Chen4 小时前
论文解读:多模态智能体长期记忆突破:M3-Agent让AI像人一样“看、听、记、想“
人工智能·机器学习·agent·memory
九成宫4 小时前
Git 与远程仓库实操记录:克隆、配置、分支推送与问题排查
笔记·git·ssh
代码飞天5 小时前
机器学习算法和函数整理——助力快速查阅
人工智能·算法·机器学习
东京老树根5 小时前
SAP学习笔记 - BTP SAP Build12 - SAP Build Content Package
笔记·学习
北京海得康5 小时前
阿那格雷临床疗效与起效时间【海得康】
笔记
绛橘色的日落(。・∀・)ノ6 小时前
机器学习 单变量线性回归模型
人工智能·机器学习