头像

阿

正在初始化站点

探索笔记
杂谈2026年10月19日

math4ai

本页目录
  1. 数学家究竟在研究神经网络的什么?
  2. 神经网络能够把错误的答案学得很好
  3. 系数不连续产生的问题
  4. 神经网络反而给出了错误的函数
  5. 引入弱解
  6. 神经网络的极小值几何结构
  7. 关于研究分支
  8. Morse理论
  9. 如何影响训练?
  10. 梯度下降为什么会受到模型结构的约束?
  11. 500个神经元可能暂时只相当于一个
  12. 神经元数量不等于实际表达能力
  13. 动力学

数学家究竟在研究神经网络的什么?

我们先考虑一个普通的数学问题。假设有一个未知函数 ,我们希望找到它,但是不知道它的具体表达式,只知道一些观测数据 ,其中 。

最基本的办法是选择某个函数族 ,然后在这个函数族中寻找能够拟合数据的函数。这里的 是参数。例如,对于二次多项式 ,对应的参数就是 。

这样一来,寻找函数就变成了寻找参数。我们可以定义损失函数:

然后求解最优化问题 。到这里为止,整个过程仍然是一个比较容易理解的函数逼近问题。

但是数学研究者关心的,往往是如下三个问题:

  1. 如果 ,能否保证我们找到了真正想要的函数?
  2. 所有满足 的参数组成什么样的集合?
  3. 如果使用梯度下降,参数为什么会沿着某些特定的方向移动?

这三个问题分别涉及变分问题的正确性、极小值集合的几何,以及优化动力系统,这正好对应报告前半部分的 math4ai 主要内容。

神经网络能够把错误的答案学得很好

考虑二阶微分方程 。如果我们知道 ,那么求解 就是一个普通的微分方程问题。例如,当 时,积分两次可以得到 。如果再给出两个边界条件,就可以确定积分常数。

现在我们把方程推广成:

这里的 可以理解为一个系数函数。如果 足够光滑,根据乘积求导法则,有 ,因此方程可以写成 。现在我们考虑不连续的情况。

系数不连续产生的问题

报告给出了一个非常具体的例子。令:

考虑边值问题 ,并要求 。问题在于:左右两侧求出的函数,应该满足什么拼接条件?

对于这个方程,除了 本身的连续性,我们还需要满足:

这叫作通量连续条件。

为了理解这个条件,可以引入新函数 。此时原方程就变成了 。如果 是普通的可积函数,那么 就不应该在内部突然出现一个额外的跳跃,否则它的分布导数中会产生奇异项。

报告给出的正确解是:

左侧导数为 ,右侧导数为 ,显然一阶导数并不连续。

但是乘上系数之后,左右两侧的通量分别为:

两者相等,因此 。这才满足原方程要求的界面条件。

这个例子说明:对于具有不连续系数的微分方程,解的导数连续并不一定正确,真正需要保持连续的可能是由方程决定的通量。

神经网络反而给出了错误的函数

现在引入 PINN,即物理信息神经网络(Physics-Informed Neural Network)。

它的基本思想很简单:既然我们知道微分方程,为什么不让神经网络输出一个函数,然后直接检查这个函数是否满足微分方程?

设 是神经网络,我们希望它满足 ,于是构造损失函数:

再加上边界条件对应的损失,通过梯度下降训练。这个想法看起来很合理,但是计算机通常是在一批采样点上计算微分残差,而不是直接检查整个方程的分布意义。

只要采样点没有落在 ,我们就有 。因此在这些采样点上,,实际使用的逐点残差就会变成 。

于是出现一个严重问题:网络实际上可能在逼近另外一个微分方程的解。

报告把这个问题称为修正方程(Modified Equation)。对应的错误解为:

现在检查这个函数。它的左右导数分别为 和 ,因此导数连续。

但是通量并不连续。左侧通量为 ,右侧通量为 ,所以这个函数不满足原始微分方程的界面条件。然而,它在界面以外满足对应的逐点残差方程,而且满足边界条件。

引入弱解

我们不再要求方程在每个点都有经典意义,而是要求上面的积分恒等式对所有测试函数成立。这就是弱形式的基本思想。如果加入零边界条件,典型的解空间是 ,其中 是 Sobolev 空间。它允许函数只有弱导数,不要求函数拥有连续的经典导数。

报告中的正确解恰好具有以下特征:

  • 函数本身连续;
  • 一阶导数分段存在;
  • 一阶导数在界面跳跃;
  • 通量 连续。

这样的函数可以自然地放在 Sobolev 空间框架中讨论。而且,弱形式能够检测界面的通量跳跃。如果通量不连续,那么它的分布导数中就会出现 Dirac 测度。

对于前面那个错误解,在分布意义下有:

其中 是集中在 的 Dirac 测度。这意味着错误解事实上满足的是带有额外奇异源项的方程,而不是原始方程。

报告最终解决方法是双网络法。对于原方程 ,我们可以引入新变量 ,于是得到一个一阶系统:

现在使用两个神经网络 和 ,分别逼近 和 。训练时要求 ,同时要求 。

例如,可以构造损失函数:

此外还需要加入相应的边界条件。

这个办法的数学动机在于:把原本隐藏在一个二阶方程中的通量条件,转化为显式的一阶关系。当相关函数空间和收敛条件得到适当控制时,这种形式有助于保留正确的界面信息。

神经网络的极小值几何结构

这一部分需要一点微分几何和非凸优化知识,但我们可以从线性代数开始理解。

假设一个方程组只有一个方程 ,却有两个未知数。显然,这个方程无法唯一确定解,因为所有满足条件的点都构成一条直线 。这是最简单的欠定问题。神经网络中也会发生类似现象:假设训练数据只有 个,但模型具有 个参数,而且 ,这时我们称模型具有过参数化(Overparameterization)特征。

注意,过参数化并不自动保证所有参数都自由,也不保证训练一定成功。但是,它为大量不同参数实现相同训练结果创造了可能。

考虑残差向量:

这是一个从 到 的映射,即 。对应的损失函数为 。如果残差满足 ,那么损失也为零。因此,零残差集合就是 。

假设在某个零残差点 附近,映射 的 Jacobian 满足 。那么在这个点附近,零残差集合 是一个维数为 的光滑流形。假设参数空间是100维,而训练残差只有10个独立约束,那么在相应的正则性条件成立时,零残差集合局部可能是一个90维流形。

现在考虑损失函数 ,记 为残差映射的 Jacobian,那么一阶导数为 。

再次求导得到:

在零残差点处,由于 ,第二项消失,因此:

现在利用线性代数中的秩关系 ,可以得到 。

这意味着,当参数维数远大于残差维数时,Hessian 必然具有大量零特征值。

这意味着沿着某些参数方向移动,可能不会改变模型在训练样本上的输出。在这些方向上,损失函数至少在二阶近似中是平坦的,这就是所谓的平坦方。

不过需要注意,Hessian 存在零特征值,并不必然意味着存在一条真正平坦的曲线。如果高阶项不为零,函数仍然可能发生变化。只有结合适当的正则性条件,才能把这些方向解释为极小值流形的切向方向。

关于研究分支

即使我们知道零损失点构成一个集合,也不能保证这个集合处处光滑。

考虑非负函数 ,显然有 。因此,它的全局极小值集合为:

也就是说,这个集合由两条坐标轴组成,可以把它想象成一个十字形。

这个集合具有两个分支:横轴与纵轴。在远离原点的位置,每个分支都很光滑;但在原点处,两个分支发生相交,因此整个集合在这个交点附近不能被视为一条一维光滑流形。

对于神经网络而言,参数冗余、神经元之间的对称性,以及不同的有效表示方式,都可能造成不同类型的极小值分支。报告研究的正是这类结构。

Morse理论

如果 ,我们通常会考察 Hessian 矩阵 。

传统 Morse 理论主要研究 Hessian 非退化的临界点,即满足 的临界点。但刚才我们已经看到,过参数化神经网络的 Hessian 很容易退化,因此普通的 Morse 临界点理论可能不适用。

Morse–Bott 理论则允许临界点形成一个流形。在非退化的法向方向上,函数仍然具有标准二次型结构。

其核心条件可以写成:

其中 是临界流形 在 点的切空间。

对于局部极小值流形,法向二次型是正定的;对于鞍点流形,法向二次型还可能包含负方向。于是,我们便可以研究沿流形的平坦方向、离开流形的稳定方向,以及不稳定方向之间的关系。

需要注意,刚才两条坐标轴相交的例子,在原点并不满足 Morse–Bott 的常规假设,因为那里存在奇异交点。这说明研究不同分支及其交汇位置时,还需要额外分析。

如何影响训练?

现在重新回到梯度下降。如果采用连续时间模型:

这就叫作梯度流(Gradient Flow),它是梯度下降的连续时间对应物。

沿着梯度流轨道,可以计算损失函数随时间的变化:

因此,损失函数不会增加。但是,这个结论并没有告诉我们参数最终会进入哪个极小值分支。继续考虑前面的例子 ,它的梯度流为 和 。

现在考察 随时间的变化,可以得到:

因此 ,其中 是由初始条件决定的常数。它说明梯度流并不能在参数空间中任意移动,而是受到动力学不变量的约束。不同的初始条件可能导致轨道进入不同的极小值分支。

这只是一个简单模型,但已经体现了报告研究的核心思想:极小值集合的几何结构与梯度流的动力学行为是相互关联的。报告进一步研究了不同的全局极小值分支,以及样本量增加后,某些仅仅拟合有限训练样本的分支何时消失。

研究者希望知道:随着样本数量增加,哪些原本只能拟合有限样本的极小值分支会被排除掉?

梯度下降为什么会受到模型结构的约束?

对于梯度流 ,我们往往把它理解成参数沿着最陡下降方向运动。

但是所有参数方向都能够被梯度流利用吗?答案未必。模型的结构可能导致梯度只能落在某些特殊的子空间中。

先看一个简单例子。假设模型为 ,也就是说,模型只依赖两个参数之和 。于是损失函数也只依赖 ,可以写成 。

求梯度得到:

因此,梯度流满足 和 。

现在考察两个参数之差:

所以 ,其中 是常数。这意味着,不论损失函数 具体是什么,只要它通过 依赖参数,梯度流就保持两个参数的差值不变。因而每一条直线 都是梯度流的不变集合。这就引出了报告中的结构不变流形(Structural Invariant Manifold,SIM)。

首先看“不变”。假设动力系统为 ,如果初始点满足 ,并且以后始终满足 ,那么 就是这个动力系统的不变流形。

在光滑情形下,一个关键条件是:

它的意思是向量场始终与这个流形相切。因此,在相应的光滑性与解的唯一性条件下,轨道不会离开流形。

其次看“结构”。前面那个例子中, 之所以保持不变,是因为模型只依赖参数之和。这个不变量来自模型本身的表达形式,并不依赖某一次训练恰好选中了什么数据。

500个神经元可能暂时只相当于一个

这是关于神经元凝聚的部分。

考虑函数:

这是一个最基本的两层神经网络。其中, 是输入, 是第 个神经元的权重向量, 是输出权重, 是激活函数,例如 ReLU。

ReLU 的定义为 。我们可以把每个函数 理解成一个基本函数,整个神经网络就是这些基本函数的线性组合。因此,神经网络实际上需要学习两类东西:一类是基本函数的方向 ,另一类是这些基本函数的组合系数 。

神经元数量不等于实际表达能力

假设两个神经元的方向完全一致,即 ,那么:

虽然模型使用了两个神经元,但实际上只产生了一个基本函数。

更一般地,对于 ReLU,由于它具有正齐次性 ,其中 ,如果所有神经元的方向满足 ,且 ,那么:

也就是说,即使模型拥有500个神经元,只要这些神经元的方向完全凝聚,它们就可能等价于一个神经元。

实验的目标函数可以由3个神经元表示:

但是研究者使用了500个神经元进行训练,并且选择了非常小的初始参数。

随后,他们观察到损失函数的变化呈现出三个阶段:最初损失下降,接下来进入很长的平台期,最后又突然开始下降。报告通过分析参数方向发现,在平台阶段,大量神经元的权重方向趋于一致,也就是说,神经元发生了凝聚。后来,凝聚状态中的参数方向发生分离,逐渐形成不同的神经元群,这叫作分岔(Bifurcation)。当模型恢复了足够的独立表达方向之后,便能够更准确地拟合目标函数,损失也随之下降。

这些问题都在研究参数随时间的运动。例如,对于前面的两层网络,参数演化可以写成:

我们可以把所有神经元的方向看作动力系统中的状态变量。如果存在某种对称结构,那么参数可能先向某个对称集合靠近;而当这个集合的稳定性改变时,轨道就可能沿新的方向分离。

动力学

这一部分比神经元凝聚更进一步。报告研究的是:初始化尺度不同,训练动力学会不会发生本质变化?答案是会,而且不同的渐近尺度可能产生不同的动力学机制。

考虑一个非线性模型 。如果参数变化很小,可以在初始参数 附近作 Taylor 展开:

这一表达式对参数 是线性的。因此,如果训练过程中始终有 ,那么模型就可能一直处于接近初始线性化的状态。

NTK 的全称是神经切线核(Neural Tangent Kernel)。我们从之前的平方损失函数出发:

令 ,并记残差映射的 Jacobian 为 。

梯度流可以写成 。由于 ,代入后得到:

现在定义矩阵 ,于是残差动力学可以写成:

这就是有限训练样本上的神经切线核矩阵。如果训练过程中 ,那么残差动力学就近似为 。

这是一个线性微分方程组。如果核矩阵可以对角化,我们便能够根据它的特征值,分析不同残差方向上的收敛速度。这说明,在某些参数尺度下,复杂神经网络的训练可以近似转化为线性动力系统。

与惰性训练不同,在特征学习显著的区域,参数方向可能发生较大变化。因此, 不再接近初始 Jacobian,对应的核矩阵 也会明显变化。前面讨论的神经元凝聚,就是一类非平凡的特征演化现象。

所以,我们现在得到了两种不同的训练机制。在惰性训练区域,模型主要依靠初始特征的组合来拟合数据;在特征学习区域,模型则通过改变自身的特征表示来完成任务。