Hello World

吞风吻雨葬落日 欺山赶海踏雪径

0%

大模型幻觉原因总结

“幻觉”(_hallucination_)在大模型(尤其是语言模型和生成型模型)的语境下指的是模型生成的输出包括不真实或与事实不符的信息。换句话说,就是模型似乎在”编造”信息而非准确地回答问题或提供信息。理解这一现象需要从大模型的训练过程数据、以及模型的工作原理几方面来考虑。

幻觉类型

  1. 事实性幻觉: 强调生成内容与现实世界事实的差异,通常表现为事实不一致或捏造。
  2. 忠实性幻觉: 生成内容与用户指示或提供的上下文的偏离,以及生成内容的非自洽。

幻觉原因

  • 训练数据问题
  • 训练过程缺陷
    • 预训练阶段
      • 架构缺陷
      • 只注意力模块缺陷
      • 暴露偏差
    • 对齐阶段
      • 能力错位
      • 信念错位
  • 推理阶段的随机性
    • 固有的抽样随机性
    • 不完美的编码
      • 上下文关注不足
      • softmax瓶颈

训练数据问题

Garbage in,Garbage out 垃圾的训练数据只会训练出垃圾的模型。
通过训练数据的标注与清洗,保证语料的准确性与正确性。

训练过程有缺陷

训练过程包含了两个阶段

  1. 预训练阶段 (大模型学习通用表示并获取知识)
  2. 对齐阶段 (微调大模型与人类偏好一致)

预训练阶段

模型的实现原理缺陷导致的重要上下文信息丢失,缺乏整体性。同时预测生成环节中的微小偏差带来后续预测偏差叠加,导致生成内容偏离正确轨道。

对齐阶段

训练数据超出模型的能力范围 与 匹配人类偏好后对信息真实性的牺牲。

推理阶段的随机性

生成型模型(如GPT系列)会尝试基于训练时学到的语言模式来”猜测”最可能的续写或回答,但这种基于统计的方法不可避免地带来了不确定性。
(归根结底模型没有理解世界,只是通过统计模式来进行预测。)

  • 固有抽样中再小的概率也有出现的可能,那么就可能导致与生成内容与前文的不协调而产生幻觉。
  • 上下文关注的局限性,导致无法准生成与输入一致性的内容。
  • softmax函数用于决定下一个最有可能的单词,但是由于没有准确选择最合适的单测,导致表达能力受限,从而影响生成内容的准确性。

解决路径(From GTP4_Turbo_128K)

针对大模型的幻觉问题,我们可以从以下几个方面来进行改进:

1. 提高数据质量

  • 清洗数据:确保训练数据尽可能准确无误,去除或更正错误、过时或具有误导性的信息。
  • 数据多样性:增加训练数据集中的多样性,确保覆盖更广泛的场景、领域和语言用法,减少偏差和过度泛化的风险。
  • 平衡数据集:避免任何特定类型或类别的数据过于占优势,以防模型在这些方面生成过多的幻觉性内容。

2. 强化模型的理解力和常识推理

  • 常识知识注入:通过结合外部知识库或常识推理数据库,提高模型对常识的理解和应用能力。
  • 强化学习和人工反馈:利用人工反馈进行强化学习,指导模型学习哪些输出是优质的,哪些是应避免的。
  • 多任务学习:训练模型在处理多种任务时展示良好的性能,使其能够理解和应对更复杂的语境和信息。

3. 增强模型的解释性和可验证性

  • 模型解释性:通过研究和开发更具解释性的模型结构和训练方法,使模型的决策过程更加透明。
  • 输出验证:在模型生成输出后,加入验证步骤,使用外部信息源或专门的验证模型来检查输出的准确性和可靠性。

4. 创建更精细的评估和错误检测机制

  • 自动和手动评估:结合自动评估系统和人工评估来综合判断模型输出的质量,特别是针对事实准确性和逻辑一致性的评估。
  • 改进的损失函数:设计和使用能够准确反映幻觉性内容风险的损失函数,以便在训练过程中减少幻觉的生成。

5. 利用技术和策略减少敏感或危险内容的生成

  • 内容过滤系统:开发并应用内容过滤系统,在输出被展示给用户之前筛选掉不安全或不合适的内容。
  • 用户指导和输入规范:提供给用户明确的指导和策略,帮助他们以更安全和高效的方式与模型交互,减少幻觉性内容的产生。

通过上述方法综合改进,我们可以显著降低大型模型输出幻觉问题的风险,提高其在各种应用中的可靠性和准确性。

参考

A Survey on Hallucination in Large Language Models: Principles, Taxonomy, Challenges, and Open Questions