🎙️ 开场 / 引子
- 定义:语言模型(LM)有时会输出看似合理但实际上错误的信息,这种现象被称为 “幻觉”(hallucination)。
- 幻觉不仅仅是字面上的错误,而是模型在不确定时“猜测”出来的答案,却常常很有说服力。
- 问题:为什么幻觉难以避免?它的根源是什么?我们能否预测或减少它?
🧠 核心观点
- 统计驱动的必然性
预训练阶段,模型的目标是拟合语言分布。即使训练数据完全正确,也会存在「极少出现的事实」或「单次出现(singleton)」的样本,模型无法学好这些内容,容易出错。
提示覆盖不足时,模型给出正确答案的概率有下界。 - 二元分类视角
作者提出“是否为有效答案(Is-It-Valid, IIV)”的二元分类问题。
生成幻觉 ≈ 在 IIV 分类上出错。理论上,IIV 错误率越高,幻觉率就越高。 - Singleton 提示
在训练集中,只出现过一次的提示或答案(singleton),会让模型无法有效学习。
论文推导出幻觉率的下界与 singleton 比例紧密相关。 - 评估方式与后训练影响
当前的 benchmark 大多用“对/错”二元打分。
这会奖励模型在不确定时也去“猜”,而不给“不知道”答案分数。
结果:模型在 benchmark 上更容易选择冒险输出,而不是保持谨慎。
📊 理论结果与例子
- 下界定理:幻觉率与 singleton 比例、正确/错误答案数量比值、校准误差相关。
- 多选题场景:如果每个问题只有一个正确答案,但错误选项很多,且覆盖稀疏,那么幻觉率下界更高。
💡 局限与挑战
- 研究聚焦于“看似合理但错误”的回答,不包括纯粹胡言乱语。
- 开放式生成(写传记、讲故事)的错误评估更复杂。
- Prompt 不完整或用户意图模糊时,也容易导致幻觉。
🛠️ 缓解思路
- 改进评估方式
给“不确定”“不知道”等回答合理分数,避免奖励胡乱猜测。
在任务中明确设置置信度阈值,低于阈值就拒答。 - 提升模型校准
让模型在行为上学会“谨慎”,在不确定时选择不回答。 - 优化训练数据
增加稀有提示的覆盖率,减少数据本身的错误。 - 社会技术层面
需要改变社区的评价机制:不要只追逐准确率和排行榜分数,而要重视可靠性与风险控制。
🔍 对听众的启发
- 使用者:面对模型的输出,要意识到“自信≠正确”。
- 产品设计者:应该接受“不知道”的回答,并把它纳入正常体验。
- 研究者与开发者:要推动从“全面回答”转向“谨慎透明”的模型行为。
✅ 总结
- 幻觉是统计学驱动下的必然产物,而不是偶然 bug。
- 当前的评估方式在无意中“奖励”幻觉。
- 解决方案不仅在模型和算法,还需要在评估体系与使用文化上进行改进。
