你的技术前沿之旅,从这里开始
因果掩码怎样防止模型偷看答案
训练时的可见范围决定了下一词预测是否成立。

一、预测位置的约束
训练自回归语言模型时,计算当前位置的表示时,只能利用当前及已有前缀,不能访问后续位置。因果掩码阻断未来位置的注意力,防止模型把将要预测的词直接复制出来。如果训练数据与标签错位,损失看起来可以下降,真正逐词生成时却可能失效,因此不能只凭训练曲线判断实现正确。
二、一个可检查的实验
取一条短序列,分别修改最后一个词和第一个词,比较前面各位置的输出。修改未来词不应影响较早位置的表示;修改前缀则可能影响后续位置。检查时关闭随机层并保持输入长度一致,同时查看掩码的形状、广播方向和填充值,避免把实现错误误判为模型波动。
三、批处理中的例外
填充掩码和因果掩码解决不同问题:前者挡住无效填充,后者限制时间方向。把不同样本拼到同一个序列中时,还需要明确样本边界,不能默认普通三角掩码会阻断跨样本信息。推理缓存也必须与位置编号保持一致,尤其在左填充和增量生成混用时要做回归验证。
延伸阅读
Attention Is All You Need 原论文:https://arxiv.org/abs/1706.03762 。资料供核对相关基础概念;本文流程建议需结合具体任务验证。