Skip to content

大模型幻觉成因与评估体系

内容整理自学习笔记,仅供面试备考参考;不构成录用、培训或考试承诺。

1. 什么是大模型幻觉问题?

1.1 幻觉定义

当模型生成的文本不遵循原文(Faithfulness)或者不符合事实(Factualness),就可以认为模型出现了幻觉问题。

概念定义
Faithfulness是否遵循 input content
Factualness是否符合世界知识

1.2 针对不同任务的幻觉定义差异

不同任务的数据源不同,对幻觉的容忍程度也不同:

任务类型数据源幻觉关注点容忍度
摘要documentFaithfulness极低
Data-to-textdata tableFaithfulness极低
对话对话历史Faithfulness/Factualness较低
开放域对话世界知识Factualness较高

1.3 传统任务 vs LLMs 中的幻觉

维度传统任务LLMs
幻觉类型Faithfulness(Intrinsic/Extrinsic)Factualness
数据源特定任务源(document/data table等)任意世界知识
额外信息Extrinsic Hallucination 需外部验证符合事实的额外信息可能有用

Intrinsic Hallucination(信息冲突):生成回复时与输入信息产生冲突,例如摘要中 abstract 和 document 信息不一致。

Extrinsic Hallucination(无中生有):输出未体现在输入中的额外信息(如邮箱地址、电话号码),难以验证真假。

2. 为什么会出现大模型幻觉问题?

2.1 数据角度分析

问题说明
训练数据可信度众包/爬虫检索收集的数据包含大量虚假信息,导致模型出现错误认知
重复数据过多重复信息导致模型知识记忆出现 bias
数据源不一致不同数据源之间存在矛盾

2.2 模型角度分析

问题说明
模型结构较弱的 backbone(如 RNN)可能导致严重幻觉,但 LLMs 时代不太存在此问题
解码算法不确定性较高的采样算法(如 top-p)会诱导更严重的幻觉
暴露偏差训练和测试阶段不匹配的 exposure bias 问题,特别是生成 long-form response 时
参数知识LMs 在预训练阶段记忆的错误知识将严重导致幻觉

提示:diversity 和 Faithfulness 往往是 trade-off 关系,减少 diversity/randomness 可以变相提升 Faithfulness/Factuality。

3. 如何评估大模型幻觉问题?

3.1 Reference-based 指标

基于 Reference 的评价指标基本上只能评价 Faithfulness,而无法评价 Factualness,因此通常不适用于 LLMs。

类别方法说明
Source + Target ReferenceROUGE、BLEU评估输出与 Source/Target 信息的重叠度
Source Information onlyKnowledge F1NLG 任务中 Target 输出多样,只基于 Source 评估

3.2 Reference-Free 指标

3.2.1 基于 IE(信息提取)

  • 介绍:将知识限定为三元组形式的关系和事件,基于额外 IE 模型抽取并验证
  • 缺点:可能存在 IE 模型错误传播;知识被限定在三元组形式

3.2.2 基于 QA(问答)

流程:
  Step 1: 基于LM生成的回复,使用QG模型生成一系列QA pairs
  Step 2: 给定Source Information,让QA模型回答上述问题
  Step 3: 对比Step1和Step2的answers,计算匹配指标
  • 缺点:可能存在 IE 模型错误传播;难以评估 Factualness(Source Information 不可能包含全部世界知识)

3.2.3 基于 NLI(自然语言推理)

基于 NLI 模型评估 Source Information 是否可以蕴含 Generated Text。

  • 缺点
    • Off-the-shelf NLI 模型核查事实效果不好
    • 无法评估需要世界知识的幻觉问题(仅依赖 Source)
    • 都是 sentence-level,无法支撑更细粒度检查
    • 幻觉和蕴含不等价(例:Putin is presidentPutin is U.S. president 可蕴含但是幻觉)

3.2.4 基于 Factualness Classification Metric

标注/构造一批和幻觉/事实有关的数据,训练检测模型评估新生成文本的幻觉问题。

3.2.5 人工评估

目前为止最靠谱的方法,此外还可以依靠 LLM 打分(如 GPT-4),但 GPT-4 也存在幻觉问题。

4. 如何缓解大模型幻觉问题?

4.1 基于数据的工作

4.1.1 构建高质量数据集

方法说明
人工标注训练数据在 LLM 上不可行,只适用于 task-specific;评测数据可构建细粒度幻觉评估 benchmark
自动筛选利用模型筛选可能导致幻觉的数据并剔除;给更 faithful 的数据加权(wiki vs. fake news)

4.2 模型层面的工作

4.2.1 模型结构

  • 设计更能充分编码利用 source information 的方法,如融入人类偏置(GNN 网络)
  • 检索增强(Retrieval Augmentation):被证明可显著减少幻觉,如 LLaMA-index
  • 可控文本生成:将幻觉程度作为可控属性
  • 提前规划骨架再生成:sketch to content

4.2.2 训练方式

方法说明
解码策略优化减少模型生成随机性,提升 Faithfulness/Factuality
强化学习将减轻幻觉的指标作为 RL 的 reward 函数
多任务学习设计合适的额外任务达到减轻幻觉效果
后处理设计小模型专门用于 fix 幻觉错误

4.3 可能的后续方向

  1. 更细粒度的幻觉评估

    • token/phrase level 而非 sentence level
    • 更精细的幻觉分类体系(Intrinsic/Extrinsic/按原因/主客观/temporal)
  2. 知识的定义和诱导

    • 怎么知道模型是否具备某一类知识,只是没有调用好
    • 知识定义的边界问题(wikipedia vs. 整个互联网)
  3. 幻觉消除

    • 检索增强:互联网/外挂知识库(LLaMA Index)
    • 强化学习(RLHF)
    • 知识诱导/注入
    • 直接修改 LLM 中错误记忆:Model Editing(ROME、MEMIT 等)

5. 总结

大模型幻觉问题的解决需要从数据、模型和评估三个维度协同推进。关键要点:

  • 幻觉分为 Faithfulness 和 Factualness 两个维度,LLMs 时代更关注 Factualness
  • 评估方法从 Reference-based 发展到 Reference-Free(IE/QA/NLI/Classification)
  • 缓解策略涵盖数据质量、模型结构、训练方式和后处理全链路
  • 未来方向聚焦于细粒度评估、知识定义和直接知识修改