模型怎么从答错里学习

用损失函数、反向传播和梯度下降理解训练阶段如何调整参数。

模型不会因为“意识到自己错了”而学习。它靠的是一套计算过程:预测、算损失、传回错误信号、更新参数。

第一步:先给出预测

训练时,模型会拿到输入,然后给出预测。

比如语言模型看到:

太阳从东方升起,从 ____ 落下。

它会给不同 token 分配概率。理想情况下,“西方”的概率应该高。如果它把“北方”排得更高,就说明当前参数还不够好。

第二步:损失函数衡量错多少

Loss Function 会把预测和目标答案之间的差距变成一个数字。损失越大,说明预测越差;损失越小,说明更接近目标。

损失函数很重要,因为它定义了模型“努力的方向”。如果目标设计错了,模型会认真优化一个错误目标。

现实里很多问题都卡在这里:

  • 推荐系统只优化点击率,可能推标题党;
  • 对话模型只优化用户满意,可能变得过度迎合;
  • 安全模型只优化拒答,可能什么都不敢答。

第三步:反向传播把错误传回去

模型有很多层。输出错了,要知道内部哪些参数该调整。

Backpropagation(反向传播)会把损失信号从输出层往前传,计算每个参数对错误的影响。你可以把它理解成一套责任分摊机制:这次预测错了,哪些连接更该被调大,哪些更该被调小。

第四步:梯度下降更新参数

Gradient Descent(梯度下降)根据这些方向更新参数。它不是一次就找到最优答案,而是一小步一小步往损失更低的方向走。

训练就是大量重复这个过程:

  1. 看一批样本;
  2. 做预测;
  3. 计算损失;
  4. 反向传播;
  5. 更新参数;
  6. 再看下一批样本。

为什么这不是“背答案”

模型确实可能记住训练数据里的内容,但训练目标不是建立一张答案表。训练主要是在参数里形成一种统计规律,让模型面对新输入时也能给出合理预测。

这也解释了两个现象:

  • 模型可能知道很多事实,但不能精确说明事实存在哪里;
  • 模型可能在训练集上表现很好,换到新场景就变差。

前者和参数表示有关,后者和泛化有关。

这对普通读者有什么用

理解这条链路后,你看 AI 产品会更容易定位问题:

  • 数据错,模型会学错;
  • 目标函数设计偏,模型会优化偏;
  • 训练集太窄,真实场景会翻车;
  • 参数训练好了,也不代表推理时永远可靠。

模型不是从“答错”里顿悟。它是在大量错误信号里一点点被调出来的。