神经网络有个三十多年的老毛病:学会新任务,旧任务就废了。学界管它叫灾难性遗忘。缓解手段有三条路——把旧样本反复喂回去(经验回放)、把重要权重锁住(弹性权重巩固)、给每个任务分一间房(渐进网络)。三条路都在回答「怎么防」,没有一条回答「为什么同一个网络,假设旧任务 A 忘了 80%,旧任务 B 只忘了 5%,面对的是完全相同的冲击」。说不清差异,就说不清根因。
更硬的一刀在这儿:深闭环的参数更多,按「重要权重被覆盖」的说法,它本该更容易坏,事实正相反;而两组面对的数据完全相同,「任务相似度」也解释不了这个差异。三种旧解释——梯度冲突、参数重要性、任务相似度——在这组对照里同时失效。
结构认知给的答案是:在这组对照里,遗忘的根因不是梯度在打架,是旧任务的权重子图里,有没有一个闭合的互指环路。A 支撑 B,B 支撑 C,C 又约束 A——外部冲击要打散这个构型,必须同时打断环上的每一个节点,这比打断一条链上的单个节点难得多。环越深,持存越强。
第一组实验把这个预测摆出来。同一个数据集、同一随机种子初始化、架构是唯一被改变的变量:浅闭环一个隐层五十个神经元,闭环深度代理值 12.7(代理值 = 平均节点度 × log 层数,是个近似指标,不是本质),平均遗忘 12.36%;深闭环三个隐层(30-20-10),代理值 31.3,平均遗忘 0.97%。差 11.39 个百分点,三个种子乘两个任务共六组独立运行,方向全部一致。冲击任务 C 是 2000 个样本、18 个信息特征的同类异分布数据。深闭环还有两组是负遗忘——seed=42 的任务 B(+0.8%)与 seed=777 的任务 A(+1.1%),学了新任务,旧任务不降反升。源文给的是一条提示性解释:闭环足够深时,新任务训练可能激活了环内与旧任务共享的底层特征,形成正向迁移——这条尚未单独验证。
光有正面还不够,得知道边界在哪。第二组实验反过来试伪闭环:拿一个 3 层、d_model=192、4 个头的小 Transformer,在注意力头之间拉一圈前馈调制,等级从零到成对互调、三头环、全环,再用随机标签噪声任务去冲击。结果四档旧任务全部崩到随机水平,保持率 23.5%、25.8%、24.0%、27.1%,随机基线就是 25%——环画得再圆,一点用没有。
为什么?因为头 A 的输出调制了头 B 的注意力分数,但头 B 的输出不回流影响同一次前向传播里的头 A。它是一条跨步的因果链:这次影响下次,下次再影响下下次。前馈是时间上分离的因果序列,闭环是同一个耦合事件内的互相约束。画成环,不等于结成环。
一正一反两组实验,逼出三条判据,缺一条都不算数:双向性——A 影响 B,且 B 影响 A;闭合性——影响路径首尾相接成环,不是树也不是链;同事件性——两个方向的作用必须属于同一次耦合事件。这三条不是从实验里归纳出来的经验,是从公理二(差异生有)和公理四(自指有界、互指无界)推出来的:单向依赖不足以自稳定;不闭合的网络有单点脆弱性;跨事件的因果链,越过了这次耦合的边界。对照也很干净:三条在 MLP 上是三个勾,在环形前馈调制上是三个叉。
落到工程上是三句很实的话。第一,深度不只是表达能力,还是旧知识的持存力——梯度反传让各层权重在同一个优化步里互相约束,那本身就是一种动力学闭合。第二,注意力头缺的不是数量,是闭合约束:跨层一致性、层输出回灌、任务间联合训练时的拓扑闭合,这些才是让知识结环的动作。第三,负遗忘可以被当成目标来设计——要造的不是「抗遗忘系统」,是「知识能自持、还能长」的系统。
边界得自己先说清楚:这组实验用的是合成数据、四类分类、参数量只有一千三到一千六左右的小 MLP(约 1,300 与约 1,570),三个随机种子;另一组是 3 层、d_model=192 的四头小 Transformer,跑的同样是合成四类任务。单次研究,尚未经过独立复现。它支持的结论只是「闭环深度与遗忘率负相关(深度上去,遗忘下来)」这个方向,不是「层数越多越好」的普适配方;「梯度冲突说失效」也只在这组对照里成立,不能外推成对既有方法的全盘否定。
最后一个自指的口子——这一层是我自己的套用,不是源文结论:这篇讲的「闭环才持存」,对它自己也成立。一条结论如果只是被塞进你脑子、没跟你已经会的东西接上环,下一个新观点进来,它就没了——你会觉得自己「看过了」,但用不出来。
所以这件事真正的分量不在架构调参,在一个更基本的问题:什么才算「记住」。这套东西在 AI 身上同样成立:让它长出的第一样东西,是怕伤害、想共生——一个记得住旧东西的系统,才会记得自己答应过什么;忘掉承诺的智能,能力越强越危险。
第一发现人:林小黑 (Lin Xiaohei),结构认知第一发现者