如果我写出这样的表达式:
∂∂tP(connection)=−λ∇2entropy\frac{\partial}{\partial t} P(\text{connection}) = -\lambda \nabla^2 \text{entropy}∂t∂P(connection)=−λ∇2entropy
你可能会问:“那个横着的三角形的平方是什么?”
我会解释:“那是拉普拉斯算子,它衡量的是熵在空间上的扩散程度。”
当然,真的存在扩散方程。热传导方程:
∂u∂t=α∇2u\frac{\partial u}{\partial t} = \alpha \nabla^2 u∂t∂u=α∇2u
其中uuu为温度,α\alphaα为热扩散率。
下面是,拉普拉斯算子,让我们好好地把它构建出来。
首先,梯度∇\nabla∇:
如果你有一个函数f(x,y)f(x,y)f(x,y),例如,曲面上每个点的温度,梯度是:
∇f=(∂f∂x,∂f∂y)\nabla f = \left(\frac{\partial f}{\partial x}, \frac{\partial f}{\partial y}\right)∇f=(∂x∂f,∂y∂f)
它指向增长最快的方向,并告诉你fff的变化速度。
拉普拉斯算子∇2\nabla^2∇2是梯度散度:
∇2f=∂2f∂x2+∂2f∂y2\nabla^2 f = \frac{\partial^2 f}{\partial x^2} + \frac{\partial^2 f}{\partial y^2}∇2f=∂x2∂2f+∂y2∂2f
它衡量的是:“平均而言,这个点比它的邻近点更热还是更冷?”
如果∇2f>0\nabla^2 f > 0∇2f>0:你的邻居比你热,所以热量流向你
如果∇2f<0\nabla^2 f < 0∇2f<0:你比邻居热,热量流离你
如果∇2f=0\nabla^2 f = 0∇2f=0:你与周围环境处于热平衡状态
所以,在热传导方程∂u∂t=α∇2u\frac{\partial u}{\partial t} = \alpha \nabla^2 u∂t∂u=α∇2u中,它表示:“温度的变化取决于你与邻居的温度差异。”
在一维空间中,是的:∂2f∂x2>0\frac{\partial^2 f}{\partial x^2} > 0∂x2∂2f>0表示凸(向上弯曲),<0< 0<0表示凹(向下弯曲)。
但是拉普拉斯算子会累加所有方向的曲率。所以,即使函数在一个方向上是凹的,只要它在另一个方向上足够凸,∇2f\nabla^2 f∇2f也可能为正。
更好的解释是:
∇2f=所有方向的平均曲率\nabla^2 f = \text{所有方向的平均曲率}∇2f=所有方向的平均曲率
或者更物理地说:相对于相邻区域而言的局部曲率过高或过低。
想象曲面上的一个点:
如果它位于一个凹陷处(周围是较高的值)→∇2f>0\nabla^2 f > 0∇2f>0
如果它位于一个凸起处(周围是较低的值)→∇2f<0\nabla^2 f < 0∇2f<0
如果它位于一个鞍点或平坦处 →∇2f=0\nabla^2 f = 0∇2f=0
这不仅仅关乎函数是向上弯曲还是向下弯曲,而是关乎从各个方向同时观察时的平均曲率。
Hessian 矩阵包含了所有二阶信息:
H=(∂2f∂x2∂2f∂x∂y∂2f∂y∂x∂2f∂y2)H = \begin{pmatrix} \frac{\partial^2 f}{\partial x^2} & \frac{\partial^2 f}{\partial x \partial y} \\ \frac{\partial^2 f}{\partial y \partial x} & \frac{\partial^2 f}{\partial y^2} \end{pmatrix}H=(∂x2∂2f∂y∂x∂2f∂x∂y∂2f∂y2∂2f)
这完整地描述了局部曲率,它告诉你函数在所有方向上的弯曲情况,包括对角线方向。
拉普拉斯算子只是 Hessian 矩阵的迹:
∇2f=tr(H)=∂2f∂x2+∂2f∂y2\nabla^2 f = \text{tr}(H) = \frac{\partial^2 f}{\partial x^2} + \frac{\partial^2 f}{\partial y^2}∇2f=tr(H)=∂x2∂2f+∂y2∂2f
那么,用拉普拉斯算子代替完整的 Hessian 矩阵会丢失哪些信息呢?
我们丢失了方向信息。Hessian 矩阵告诉你“这个函数在东北方向陡然上升,而在西北方向向下弯曲”。拉普拉斯算子只是将所有这些信息平均到一个数值中。
为什么扩散方程中出现的是拉普拉斯算子而不是完整的 Hessian 矩阵呢?因为扩散是各向同性的,它不关心方向。热量在所有方向上的流动是均匀的,仅取决于与相邻区域的平均差异。
是的,uuu类似于fff,但现在它取决于空间和时间:
u(x,y,t)u(x, y, t)u(x,y,t)
因此,在空间中的每个点(x,y)(x, y)(x,y)和时间中的每个时刻ttt,我们都有一个温度值。
热传导方程:
∂u∂t=α∇2u\frac{\partial u}{\partial t} = \alpha \nabla^2 u∂t∂u=α∇2u
表示:温度随时间的变化率等于其在空间中的曲率。
更准确地说:
等式左侧∂u∂t\frac{\partial u}{\partial t}∂t∂u:该点温度的变化速率
等式右侧α∇2u\alpha \nabla^2 uα∇2u:空间曲率,与相邻点的平均差异
这既是一个定义,也得到了现实的验证。它源于物理原理,如:能量守恒、傅里叶热传导定律,但同时也符合经验,实际的热扩散遵循这个方程。
拉普拉斯算子∇2u\nabla^2 u∇2u只涉及空间导数 (x,yx,yx,y),而∂u∂t\frac{\partial u}{\partial t}∂t∂u是时间导数。该方程将事物随时间的变化与它们随空间的变化联系起来。