第 6 步 · 把前两章接成一个环
拉普拉斯算子 · 平均与曲率Laplacian
拉普拉斯 = 散度(梯度)。它衡量「该点和邻居差多少」—— 这一个度量同时统治着图像锐化、图卷积、谱聚类和热扩散。
18 分钟
阅读 + 实操
4 个
交互演示
中级
难度
拉普拉斯算子 · 交互演示
信号阶跃
∇²f—
该点 − 邻居均值—
① 一维二阶差分:曲线(上)与 f[i−1] − 2f[i] + f[i+1](下)。左键点选采样点
② 图像锐化:原图 / ∇² 图 / 原图 − k∇²。拖动滑块调 k
③ 图上热扩散:节点颜色 = 温度 u,迭代 u ← u − αLu 让温度逐渐均匀
④ 图拉普拉斯矩阵 L = D − A 的热力图(对角 = 度数,非对角 = 负的边权)
为什么学这步?
第 7 步给出 ∇(标量场 → 向量场),第 14 步给出 ∇·(向量场 → 标量场)。把它们串起来 ∇² = ∇·∇,就得到一个「标量场 → 标量场」的二阶算子。它度量局部曲率,也正是卷积核、图神经网络、谱聚类与扩散模型共享的那块地基。
📌 发生了什么
- ∇² = ∇·∇,二阶算子
- = 该点与邻域平均之差
- 图上形式 L = D − A,半正定
⚠️ 常见陷阱
- Δ 是拉普拉斯算子,不是「增量」
- 图形学卷积核常差一个负号,须声明约定
- 归一化后特征值在 [0,2],谱结论别混用
✅ 本章小结
- ∇² = ∇·(∇f)(回指第 7、14 步)
- fᵀLf 度量不平滑程度
- 热方程 ∂u/∂t = −Lu 抹平差异
📐 为什么它等于「与邻域平均之差」
把二阶差分稍微改写一下就看清了:f[i−1] − 2f[i] + f[i+1] 可以写成 2 ×(邻居平均 − 本点)。也就是说,拉普拉斯就是「本点低于(或高于)周围多少」的度量(差一个常数因子)。
于是符号有了明确含义:∇²f > 0 表示本点低于邻域平均(谷),∇²f < 0 表示高于平均(峰),∇²f = 0 表示恰好等于邻域平均。推广到球面平均后,∇²f = 0 的函数就叫调和函数。
热方程直接受益于此:∂u/∂t = α∇²u 说的是「高于邻域的点降温、低于邻域的点升温」,结果就是差异被抹平、越来越平滑 —— 这正是演示 ③ 看到的画面。
🎛 连续 → 离散 → 图
同一条公式有三副面孔。理解了前两行的对应关系,图上那一行就不再突兀。
| 设定 | ∇² 的形式 | 性质 |
|---|---|---|
| 连续(2D) | ∂²f/∂x² + ∂²f/∂y² | 二阶、线性、旋转不变 |
| 网格(五点) | f[i±1], f[j±1] 的加权和 − 4f[i,j] | 核 [0 1 0; 1 −4 1; 0 1 0] |
| 图 | L = D − A;(Lf)ᵢ = Σⱼ wᵢⱼ(fⱼ − fᵢ) | 对称、半正定、行和为 0 |
💡 图上那行里,Σⱼ wᵢⱼ(fⱼ − fᵢ) 与一维的二阶差分是同一件事:把「本点」换成 fᵢ,把「左右邻居」换成所有邻居。
🔗 它在 ML 里出现在哪
这是数学轨道里落点最多的一章 —— 因为「和邻居差多少」在图数据上无处不在:
- 谱聚类:用 L 的前 k 个特征向量把节点嵌到低维,再在嵌入空间里跑 KMeans。λ₂ 越小(Fiedler 值),图越容易被切开 —— 接着 ML 第 9 步 · K-Means 的流程。
- GCN 图卷积:邻域聚合 H′ = σ(ÂHW) 里的 Â 就是 L_sym 的一阶近似 —— ∇² 在图上最朴素的化身。
- 图像处理:以 [0 1 0; 1 −4 1; 0 1 0] 做边缘检测;用「原图 − k∇²」做锐化(演示 ②)。卷积核在这里就是空间上的差分算子,接 ML 第 12 步 · CNN。
- 扩散模型与 PINN:前向加噪对应热方程式的平滑(与 第 14 步的 Fokker–Planck 一同出现);物理信息网络直接把 ∇²u − f = 0 写进损失,用 第 7 步的自动微分求 ∇²。
- 对比 PCA:L 的特征向量是「图上最平滑的分量」,而 ML 第 11 步 · PCA 的最大特征向量是「方差最大的方向」—— 一个求最小、一个求最大,别记混。
💻 图拉普拉斯与热扩散
本页的矩阵与热扩散都来自这段(引擎 DW.graphlap):
// 组合拉普拉斯 L = D − A
function combinationLaplacian(n, edges) {
// 对角 = 度数,非对角 = −边权;行和恒为 0
}
// 一步热扩散:u ← u − αLu
function heatStep(u, L, alpha) {
const Lu = laplacianApply(L, u);
return u.map((v, i) => v - alpha * Lu[i]);
}
// 稳定性:显式欧拉要求 α·λ_max < 2(组合式下 λ_max ≤ 2·d_max)
📚 参考文献与延伸阅读
- Strang, Computational Science and Engineering / MIT 18.06 — 拉普拉斯矩阵与图的谱
- von Luxburg (2007), A Tutorial on Spectral Clustering — 谱聚类的标准入门综述
- Kipf & Welling (2017), Semi-Supervised Classification with Graph Convolutional Networks — L_sym 到 GCN 的那一步近似
- 回顾 → 第 7 步 · 梯度(∇f)与 第 14 步 · 散度(∇·F):本章的 ∇² = ∇·(∇f) 就是这两步的复合。到这里,三章的算子阶梯闭合成环。
📝 课后练习
检验你的理解——答对为止