理解、检测与克服大语言模型的外在幻觉

引言

大语言模型(LLMs)在自然语言处理领域展现了巨大的潜力,但同时也带来了"幻觉"问题。幻觉指的是模型生成不真实、虚构或不一致的内容。Lilian Weng,OpenAI安全系统团队负责人,最近在她的博客中详细梳理了在理解、检测和克服大语言模型幻觉方面的研究成果。本文将详细介绍这些研究成果,探讨幻觉的定义、类型、产生原因、检测方法及克服策略。

幻觉的定义和类型

传统上,幻觉是指模型生成的内容与实际不符。Lilian Weng将幻觉限定为模型输出与提供的上下文或世界知识不一致,具体分为两种类型:

  1. 上下文幻觉:输出与上下文内容不一致。
  2. 外在幻觉:输出应该基于预训练数据集,但由于预训练数据集规模庞大,检索和识别冲突的成本非常高,导致无法每次生成时都执行。

幻觉的产生原因

大语言模型的训练分为预训练和微调两个阶段,每个阶段都有可能导致幻觉。

预训练阶段

预训练数据通常来源于公共互联网,存在信息过时、缺失或不正确的问题。模型在最大化对数似然的过程中可能以不正确的方式记忆信息,导致错误。

微调阶段

微调阶段引入新知识以提升模型的某些具体能力,如指令遵从。然而,微调能否可靠地让模型学到新知识存在风险。当微调样本中包含新知识时,模型的学习速度会减慢,并且更倾向于产生幻觉。

幻觉的检测方法

检索增强式评估

通过检索和验证生成结果中的每个原子事实,如FActScore和SAFE方法。FActScore基于知识库验证事实,而SAFE通过多步骤的迭代过程向搜索引擎发送查询并推理结果是否支持事实。

基于采样的检测

如SelfCheckGPT方法,根据多个样本进行一致性检查,度量模型响应和随机样本之间的一致性。

对未知知识进行校准

如TruthfulQA和SelfAware基准,度量模型在无法回答或不知道答案时的诚实表现。TruthfulQA强调人类谬误,SelfAware则包含不可解答的问题。

间接查询

如Agrawal等人的研究,通过间接查询方法,如询问参考文献的作者,来检测生成内容的真实性。

幻觉的减少方法

检索增强生成(RAG)

通过先检索相关文档,再将其作为额外上下文进行生成。RARR框架通过编辑归因,校正生成结果中没有证据支持的内容。

基于复述的方法(RECITE)

将复述作为中间步骤,提高生成内容的事实正确性,并减少幻觉。

采样方法

如基于假设的事实核采样算法,假设采样随机性对句子后半部分事实性的影响大于开头部分。推理时间干预(ITI)方法通过拟合线性探针来区分真实和虚假输出。

事实增强训练

通过引入TopicPrefix和更新训练损失等方法,提高模型的事实性。FLAME方法通过SFT+RLHF对齐训练,生成更具事实性的训练数据。

归因微调

如WebGPT和GopherCite,通过检索相关文档和监督式微调,帮助模型生成有参考资料支持的答案。

结论与未来展望

大语言模型在生成自然语言时的幻觉问题是一个重要且复杂的挑战。通过理解幻觉的产生原因,采用多种检测和减少幻觉的方法,可以显著提升模型的输出质量。未来,随着技术的发展和研究的深入,针对幻觉的解决方案将更加完善,推动大语言模型在各个领域的应用。

相关推荐
Agent工坊5 小时前
告别「帮我写个 Prompt」:我用 LangGraph + Vue3 搭了一个本地提示词生成器 PromptOps
人工智能
桃西西呀6 小时前
本地 RAG 问答 Agent:切片即建模,幻觉即责任
人工智能·llm·agent
wizardpisces6 小时前
Claude Code 是 Angular,Codex 是 Vue,DeepSeek 想当 React
前端·人工智能
XianMing的博客6 小时前
《Attention Is All You Need》学习记录(从零吃透版)
人工智能·大模型
RaaS1006 小时前
Trae 实战:4 项功能把活整个交给 AI
人工智能
leavesleo6 小时前
把资深工程师的评审直觉做成可安装的 skill:25 个技能,9 条命令
人工智能
IamZJT_6 小时前
拆开 DeepSeek Harness 01|“帮我修个 Bug”发出去后,跑了哪条路?
人工智能·agent
ZPC82106 小时前
YOLO26 识别串番茄果梗
人工智能·深度学习·算法·机器学习
jsl_jsl_jsl6 小时前
《不给小团队上数据库:用 Git 仓库当需求看板的实践》
人工智能
IamZJT_6 小时前
Agent 系统工程 01|模型之外,Harness 到底该负责什么?
人工智能·python·程序员