预测编码和反向传播,到底等不等价?
成绩差不多,不代表学的过程一样。
现在的大模型基本都靠反向传播训练。预测编码是另一种学法,受大脑启发,常被说成跟反向传播「等价」,还能解决持续学习时的遗忘。这两句都说得太满了。
这两种学法差在哪
假设模型把一个手写的 8 认成了 3。
反向传播是从最后的错误往回算,一路算到第一层,告诉每一层该往哪调。
预测编码是每一层都去预测相邻的层,对不上就在当地记下差多少。给出正确答案后,各层来回调整一阵,再根据手头剩下的差改自己的连接。不需要一个从头到尾的信号,看起来更像大脑。
认手写数字的成绩
Whittington 和 Bogacz 2017 年的论文拿这两种方法去认手写数字。图片 28 × 28 像素,分 10 类,每种设置跑 10 次,最后错误率都在 1.7% 到 1.8%,一千张错十七八张。
成绩确实差不多,但两个学生都考 98 分,不代表每道题的解法都一样。论文证明的是特定条件下的近似,比如各层要有足够的时间调整到位。后来也有能严格等价的变体,都得加额外的假设。
还有三个常见的误会
- 没有彻底摆脱权重对称。 反向传播被批评不像大脑,一个原因是误差往回传时,要用和前向一样的权重。基础版预测编码的公式里还是有这个转置 Wᵀ,要摆脱它,得让反馈权重单独学习。
- 遗忘问题还在。 新知识带来的误差,照样会改到很多任务共用的权重。它在某些设定下比反向传播好一点,远谈不上免疫。
- 很难做深。 每看一个样本都要来回调很多轮,放到 GPU 上很不划算。网络一深,训练也变难,大多数实验还停留在中小规模。
所以它现在还替代不了反向传播,大模型的训练依然是 Transformer 加反向传播那一套。
© 2026 袁天NOTE / 19
