欢迎光临
我们一直在努力

大语言模型幻觉:成因、诊断与解决方案

1. 什么是模型幻觉

在自然语言处理领域,幻觉(Hallucination) 指大语言模型(LLM)生成的内容虽然语法流畅、措辞自信,但与事实、输入上下文或外部世界不一致。

这个词最早借用自医学和心理学中的"幻觉"概念——患者感知到并不存在的刺激——恰好贴切地描述了模型"编造"不存在事实的行为。

核心定义:模型幻觉是 LLM 在生成过程中,产生与可验证事实、给定上下文、或逻辑一致性相矛盾的内容的现象。

幻觉并非简单的"出错"——它有三层递进含义:

  • 事实性错误:生成的陈述与客观事实不符(如声称"爱因斯坦发明了电话")
  • 上下文偏离:生成内容与给定的提示、指令或上文矛盾(如用户要求中文摘要,模型却输出英文)
  • 逻辑不一致:同一回答内部自相矛盾(如先说 X=5,后又说 X=8)

2023年 ChatGPT 爆火后,幻觉问题迅速成为学术界和工业界最关注的安全议题之一。因为它直接影响模型在医疗、法律、金融等高风险场景的可用性。

2. 幻觉的分类

学术界通常将幻觉分为两大类,每类下有更细的子类型:

2.1 内在幻觉(Intrinsic Hallucination)

又称 事实性幻觉。模型生成的内容与可验证的外部世界知识直接矛盾。

子类型定义示例
事实捏造 编造不存在的事件、数据、人物 "2022年诺贝尔和平奖得主是张三"(实际并非此人)
属性错配 将 A 的属性错误赋予 B "巴黎是英国的首都"
时间错乱 事件时间线错误 "iPhone 于 2005 年发布"(实际是 2007)
数值错误 具体数字、统计量出错 "中国人口约 20 亿"

2.2 外在幻觉(Extrinsic Hallucination)

又称 忠实性幻觉。模型生成的内容偏离了给定的输入上下文或指令约束。

子类型定义示例
指令违背 未遵循用户明确指令 要求只用 3 句话总结,实际输出了 5 句
上下文矛盾 与上文提供的信息相悖 上文给了一段原文要求翻译,翻译却加了原文没有的内容
信息冗余 添加上下文中不存在的信息 摘要任务中添加了原文未提及的细节

2.3 更细粒度的分类(根据 Ji et al., 2023)

factual 事实性幻觉
  • 实体错误(人名、地名、日期)
  • 关系错误(实体间关系虚构)
  • 数值错误
faithfulness 忠实性幻觉
  • 指令不一致
  • 上下文不一致
  • 逻辑不一致

3. 幻觉的根本原因

幻觉不是单一原因造成的,而是模型训练、推理、数据等多个环节的综合结果。

3.1 训练数据层面

  • 数据噪声与错误:互联网规模的数据集必然包含错误信息。模型无法区分训练语料中的事实与虚构,学习到了虚假关联。
  • 知识截止日期:预训练数据存在时间截断,模型对训练截止日期之后的事件天然"无知",但仍会尝试回答。
  • 长尾知识稀疏:低频实体、冷门领域在训练数据中出现次数极少,模型缺乏足够信号学习正确事实。
  • 数据偏差:来源偏向(维基百科 vs 社交媒体)、地域偏向、观点偏向都会导致模型系统性地产生某些类型的幻觉。

3.2 模型架构层面

  • 自回归生成的暴露偏差:训练时使用 teacher forcing(给定正确前缀),推理时却依赖自己的输出作为下一步输入,错误一旦产生就会累积放大。
  • 注意力机制的局限:Transformer 的注意力在长上下文中会稀释对关键信息的关注,导致忽略重要指令或上下文细节。
  • Softmax 瓶颈:输出概率分布过于平滑,低概率 token 仍有被采样的可能,为幻觉提供了随机入口。

3.3 解码策略层面

  • Top-k / Top-p 采样:为提高多样性而引入的随机性,会以一定概率选中事实性错误的 token。
  • 温度参数:高温增加输出的随机性,低温虽然更确定但也可能重复低质量模式。
  • 贪婪解码的局部最优:每步贪心地选概率最高的 token,忽略了全局语义一致性。

3.4 对齐训练层面

  • 讨好性偏差(Sycophancy):RLHF 训练后模型倾向于迎合用户,当用户前提本身错误时,模型可能附和而非纠正。
  • 过度自信:对齐训练鼓励模型给出确定性的回答,抑制了"我不知道"的诚实表达。

4. 检测与诊断方法

在解决问题之前,需要先能够可靠地检测幻觉。以下是主流方法:

自然语言推理(NLI)

将模型输出与参考文本送入 NLI 模型判断蕴含/矛盾/中立关系。矛盾即标志潜在幻觉。

问答验证

将生成内容中的原子事实逐一转化为问题,用检索或模型回答来验证每个命题的真伪。

自一致性检查

对同一提示多次采样,检查不同回答之间的一致性。高方差往往暗示存在幻觉。

不确定性估计

利用输出 token 的概率(logit)、熵值、或模型内部表征的方差来量化不确定性。

5. 解决方案全景

解决幻觉没有"银弹"——实践中需要多层次的组合策略。下图展示了从数据到推理的完整防御纵深:

image

从数据注入 → 推理控制 → 后验证的完整链路

6. 方案一:检索增强生成(RAG)

核心理念:不让模型仅依赖参数化记忆,而是在生成前从外部知识库检索相关文档,将其作为上下文注入提示。这相当于给模型一个"开卷考试"的环境。

6.1 标准 RAG 架构

用户查询


┌──────────────┐ ┌──────────────────┐
│ 查询编码器 │────▶│ 向量数据库检索 │
└──────────────┘ └────────┬─────────┘
│ Top-K 相关文档

┌──────────────────┐
│ 拼接文档 + 提示 │
└────────┬─────────┘


┌──────────────────┐
│ LLM 生成回答 │
└──────────────────┘

6.2 RAG 的关键设计决策

决策点选项优劣
检索粒度 段落级 / 句子级 / 文档级 越细越精准但上下文碎片化
嵌入模型 稀疏检索(BM25)/ 密集检索(DPR)/ 混合 混合检索通常效果最佳
Top-K 数量 3~20 太少遗漏信息,太多稀释注意力
重排序 Cross-encoder 二阶段排序 显著提升检索精度但增加延迟
知识库 通用百科 / 领域专用 / 企业私有 领域专用效果远好于通用

6.3 高级 RAG 变体

Self-RAG

模型自主决定何时需要检索、检索什么、以及检索结果是否相关。通过特殊的反思 token(<RETRIEVE>、<ISREL>)控制检索流程,减少无关检索的噪音。

Corrective RAG(CRAG)

引入检索评估器判断检索质量。当检索结果相关性低时,自动触发 Web 搜索作为补充,或退回纯模型回答。

Graph RAG

将知识组织为图结构(实体为节点,关系为边),检索时不仅获取相关文档,还能沿图遍历获取关联知识,增强推理链条。

Agentic RAG

将检索过程 agent 化:模型可以多轮搜索、调整查询、整合多个来源,像人类研究员一样逐步收集信息。

7. 方案二:提示工程与推理增强

这是成本最低、见效最快的方法——通过精心设计的提示来约束和引导模型行为。

7.1 核心提示技术

① 明确引用要求

要求模型在回答中标注信息来源或引用原文,迫使模型区分记忆与上下文。

请基于提供的文档回答问题。每一条陈述后标注出处(如 [文档A, 第3段])。
如果文档中没有相关信息,请明确回答:"文档中未提供此信息"。

② Chain-of-Thought(思维链)

要求模型逐步推理而非直接给出答案。分步思考使推理过程透明化,更容易发现逻辑漏洞。

请一步步思考,在得出最终答案前展示推理过程。

③ 不确定性校准

明确要求模型对不确定的信息标注置信度或直接拒答。

如果你对某个事实不确定,请在回答中标注 [不确定] 并说明原因。
对于你无法确认的信息,直接回答"我无法确定"。

④ Few-shot 对比示例

在提示中同时给出正确回答和幻觉回答的示例,让模型学会区分。

7.2 高级推理框架

框架原理适用场景
Tree of Thoughts 同时探索多条推理路径,评估后选择最优 复杂规划、数学证明
Graph of Thoughts 推理步骤构成 DAG,允许分支、合并、回溯 多约束优化问题
Self-Consistency 多次采样取多数投票结果 有确定性答案的任务
ReAct 交替执行推理(Thought)和行动(Action) 需要工具使用的任务
Decomposition 将复杂问题拆解为子问题逐一回答 多跳推理

8. 方案三:解码策略优化

在推理阶段,通过调整采样和生成策略,可以在 token 级别抑制幻觉。

8.1 核心解码技术

技术机制效果
上下文感知解码(CAD) 放大源上下文对输出的影响权重,削弱模型先验 增强对输入的忠实度
DoLa(对比层解码) 用模型不同层的 logit 差异来放大事实性知识信号 在 TriviaQA 等任务上显著降低幻觉
推理时干预(ITI) 在推理过程中识别并增强与真实性相关的注意力头 无需额外训练,即插即用
事实性核采样 将核采样限制在"已知事实"的 token 子集中 减少长尾 token 被采样的概率
CD(对比解码) 用小模型与主模型的 logit 差异来惩罚常见但无信息的 token 提升回答的信息密度

8.2 温度与 Top-p 调优指南

场景温度Top-p说明
事实型问答 0.0 ~ 0.3 0.9 低温减少随机性
翻译 / 摘要 0.2 ~ 0.5 0.9 平衡准确性与流畅性
创意写作 0.7 ~ 1.0 0.95 允许多样性,但幻觉风险升高

9. 方案四:监督微调与对齐

9.1 事实性 SFT

在高质量的事实性数据集上进行监督微调,强化模型对事实信息的记忆和准确表达能力。

  • 使用经过人工验证的高质量 QA 对
  • 从高可靠性来源(学术论文、教科书、百科)构建训练数据
  • 混合正例(正确回答)和负例(标注为错误的回答),让模型学会区分

9.2 RLHF / DPO 对齐

RLHF(人类反馈强化学习)

收集人类对真实性和忠实度的偏好标注,训练奖励模型,再用 PPO 优化策略。可以让模型学会"不确定时坦诚"。Anthropic 的 Constitutional AI 更进一步将价值观写入宪章。

DPO(直接偏好优化)

无需训练单独的奖励模型,直接从偏好对中优化。更简单、更稳定。可在 truthfulness vs. helpfulness 的数据对上训练,让模型在真实性和有用性之间取得平衡。

9.3 幻觉对抗训练

专门构建幻觉检测数据集(包含正确回答和对应的幻觉版本),训练模型在生成后自我检测和纠正。代表性工作如 HaluEval 提供了大规模幻觉样本用于训练。

10. 方案五:自我反思与验证机制

10.1 核心范式

image

10.2 具体方法

方法描述代表工作
Self-Refine 模型对自己的回答进行多轮迭代改进 Self-Refine (Madaan et al.)
SelfCheckGPT 多次独立采样,检查回答之间的一致性 SelfCheckGPT (Manakul et al.)
FacTool 将回答分解为原子事实,用外部工具逐一验证 FacTool (Chern et al.)
LLM-as-Judge 用更强模型(如 GPT-4)评判输出的事实准确性 MT-Bench, AlpacaEval
Verification Chain 级联多个验证步骤:事实提取 → 逐一验证 → 综合判断 VERISCORE

⚠️ 关键局限:自我反思的可靠性受限于模型自身能力。一个弱的模型可能既无法生成正确的内容,也无法识别自己的错误("盲人摸象"困境)。因此在高风险场景中,不应仅依赖自我反思。

11. 方案六:知识编辑与模型更新

当发现模型存在系统性的知识错误时,可以直接"编辑"模型的参数化知识,而无需重新训练。

11.1 知识编辑方法

方法原理优点局限
ROME 定位并修改 MLP 层中存储事实的特定神经元 精确、副作用小 每次只能编辑一个事实
MEMIT ROME 的批量版本,可同时编辑大量事实 批量高效 需精心选择编辑层
In-Context Editing 在上下文中加入纠正信息,模型即时调整输出 不需修改参数 只在当前对话有效

11.2 模型编辑 vs. 检索增强

模型编辑是"修改教科书"——永久改变模型的知识;RAG是"开卷考试"——不改模型,只提供参考材料。两者互补:对于静态事实错误(如过时信息),用模型编辑;对于动态信息(如新闻),用 RAG。实践中混合使用。

12. 实践中的组合策略

单一技术难以全面解决幻觉问题,业界最佳实践是多层防御:

推荐组合方案

🥇 标准生产级方案
  • RAG — 将外部知识库注入上下文
  • 提示工程 — 明确引用要求 + 思维链推理
  • 低温解码 — temperature=0.0~0.3 减少随机性
  • 输出验证 — 用 NLI 模型过滤幻觉输出
  • 拒答机制 — 低置信度回答直接拒绝
  • 不同场景的策略侧重

    场景核心策略辅助策略
    客服问答 RAG + 知识库 拒答模板、输出校验
    医疗诊断 引用溯源 + 人工审核 不确定性标记、多模型交叉验证
    新闻摘要 事实验证(FacTool) 低温度解码、自一致性
    代码生成 执行验证(sandbox) 思维链、test-case 驱动
    学术写作 文献检索 + RAG 引用标注、专家审查

    13. 幻觉的评估基准

    衡量幻觉解决方案的效果需要标准化的评估基准:

    基准名称评估维度数据集规模特点
    TruthfulQA 真实性 817 个问题 涵盖健康、法律、金融等高风险领域
    HaluEval 幻觉检测 35,000 样本 包含 QA、对话、摘要三种任务
    FActScore 原子事实准确性 人物传记 将回答分解为原子事实逐一验证
    SelfCheckGPT 自一致性 Wikipedia 段落 无参考评估,通过采样一致性判断
    FEVER 事实验证 185,445 声明 判断陈述是支持、反驳还是信息不足
    RealTimeQA 实时知识 每周更新 测试模型对最新事实的掌握

    参考文献

    以下论文按主题分类列出,涵盖了模型幻觉的检测、缓解与评估的核心工作:

    综述类

  • [1] Siren's Song in the AI Ocean: A Survey on Hallucination in Large Language Models

    Zhang et al., 2023. arXiv:2309.01219

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

    Huang et al., 2023. arXiv:2311.05232

  • [3] Survey of Hallucination in Natural Language Generation

    Ji et al., ACM Computing Surveys, 2023

  • 检测与评估

  • [4] TruthfulQA: Measuring How Models Mimic Human Falsehoods

    Lin, Hilton & Evans, ACL 2022. arXiv:2109.07958

  • [5] HaluEval: A Large-Scale Hallucination Evaluation Benchmark for Large Language Models

    Li et al., EMNLP 2023. arXiv:2305.11747

  • [6] FActScore: Fine-grained Atomic Evaluation of Factual Precision in Long Form Text Generation

    Min et al., EMNLP 2023. arXiv:2305.14251

  • [7] SelfCheckGPT: Zero-Resource Black-Box Hallucination Detection for Generative Large Language Models

    Manakul, Liusie & Gales, EMNLP 2023. arXiv:2303.08896

  • 检索增强生成(RAG)

  • [8] Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks

    Lewis et al. (Facebook AI), NeurIPS 2020. arXiv:2005.11401

  • [9] Self-RAG: Learning to Retrieve, Generate, and Critique through Self-Reflection

    Asai et al., ICLR 2024. arXiv:2310.11511

  • [10] Corrective Retrieval Augmented Generation

    Yan et al., 2024. arXiv:2401.15884

  • [11] From Local to Global: A Graph RAG Approach to Query-Focused Summarization

    Edge et al. (Microsoft), 2024. arXiv:2404.16130

  • 解码策略与推理

  • [12] Chain-of-Thought Prompting Elicits Reasoning in Large Language Models

    Wei et al. (Google), NeurIPS 2022. arXiv:2201.11903

  • [13] DoLa: Decoding by Contrasting Layers Improves Factuality in Large Language Models

    Chuang et al., ICLR 2024. arXiv:2309.03883

  • [14] Inference-Time Intervention: Eliciting Truthful Answers from a Language Model

    Li et al., NeurIPS 2023. arXiv:2306.03341

  • [15] Self-Consistency Improves Chain of Thought Reasoning in Language Models

    Wang et al., ICLR 2023. arXiv:2203.11171

  • [16] Tree of Thoughts: Deliberate Problem Solving with Large Language Models

    Yao et al., NeurIPS 2023. arXiv:2305.10601

  • 自我反思与验证

  • [17] Self-Refine: Iterative Refinement with Self-Feedback

    Madaan et al., NeurIPS 2023. arXiv:2303.17651

  • [18] FacTool: Factuality Detection in Generative AI — A Tool Augmented Framework for Multi-Task and Multi-Domain Scenarios

    Chern et al., 2023. arXiv:2307.13528

  • [19] ReAct: Synergizing Reasoning and Acting in Language Models

    Yao et al., ICLR 2023. arXiv:2210.03629

  • 对齐与训练

  • [20] Training Language Models to Follow Instructions with Human Feedback

    Ouyang et al. (OpenAI), NeurIPS 2022. arXiv:2203.02155

  • [21] Direct Preference Optimization: Your Language Model is Secretly a Reward Model

    Rafailov et al. (Stanford), NeurIPS 2023. arXiv:2305.18290

  • [22] Constitutional AI: Harmlessness from AI Feedback

    Bai et al. (Anthropic), 2022. arXiv:2212.08073

  • 知识编辑

  • [23] Locating and Editing Factual Associations in GPT

    Meng et al. (MIT / ROME), NeurIPS 2022. arXiv:2202.05262

  • [24] Mass-Editing Memory in a Transformer (MEMIT)

    Meng et al., ICLR 2023. arXiv:2210.07229

  • 训练数据治理

  • [25] Deduplicating Training Data Makes Language Models Better

    Lee et al. (Google), ACL 2022. arXiv:2107.06499

  • [26] The Pile: An 800GB Dataset of Diverse Text for Language Modeling

    Gao et al. (EleutherAI), 2020. arXiv:2101.00027

  • 赞(0)
    未经允许不得转载:171主机测评 » 大语言模型幻觉:成因、诊断与解决方案
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址