大模型幻觉:你信它,它却在胡说?

大语言模型(LLM)如 ChatGPT、Claude、Gemini 等,正以前所未有的方式改变我们的工作与生活。但在享受它们带来的便利时,我们也越来越频繁地遇到一个令人困惑的问题:它们有时会一本正经地"胡说八道",仿佛陷入了幻觉。

比如:

"帮我找一篇关于'Prompt Tuning'的论文。"

模型回答:"请参考《Prompt Tuning for Few-Shot Learning》,作者为J. Smith,发表于Nature 2021。"

------结果:这篇论文压根不存在!

这类现象,被称为幻觉(Hallucination),是当前大模型在实际应用中最广泛、最头疼的问题之一。


一、什么是大模型幻觉?

幻觉 ,在大语言模型中指的是:模型生成的内容在语法和逻辑上看似合理,但在事实层面却是虚假或错误的

这不仅限于虚构的引用或文献,还包括:

  • 错误的数据或统计结果
  • 虚构的公司、人物、地名
  • 时间顺序错乱
  • 概念或定义张冠李戴

换句话说,幻觉是一种**"听起来像真的,其实是假的"**现象。


二、大模型为什么会产生幻觉?

幻觉并不是 bug,而是大模型的机制使然。它背后有几个根本原因:

1. 语言模型本质是"预测"而非"理解"

大语言模型的基本机制是:在已知上下文的情况下预测下一个最可能出现的词(token)。比如:

plain 复制代码
我今天去了北京天安门广场,那里有很多 →

模型很可能预测出"游客"、"人群"、"活动"等词,这是因为训练中它见过类似的句式。但这种预测是基于语言模式,并不要求内容一定真实。因此,模型可能"编"出一个听起来合理、但事实错误的回答。

2. 缺乏事实核查机制

目前大多数 LLM 都是"闭环生成":输入 → 生成答案,不会对结果进行事实查证。它们不像人类会"回头查资料"验证正确性。

3. 训练数据本身可能不准确

LLM 的训练数据来源于海量的网络文本,其中不可避免地包含:

  • 虚假或过时信息
  • 主观性强、缺乏事实依据的内容(比如论坛、评论)
  • 某些领域数据严重缺乏(如小语种医学资料)

这些都会为幻觉埋下伏笔。

4. 模型目标函数没有"真实性"维度

大多数 LLM 训练时采用最大似然估计(MLE)作为目标,只优化"预测概率最大"而非"信息最真实"。

换句话说,模型更关心"说得像不像",而不是"说得对不对"。


三、幻觉的常见表现形式

不同场景下,幻觉的表现方式可能千差万别,主要包括以下几类:

1. 虚构事实

  • 编造论文标题、学术会议、作者
  • 杜撰人物、组织、历史事件

示例:捏造一个"2023年诺贝尔数学奖",而实际该奖项并不存在

2. 时间错乱

  • 把2020年的事件说成是"最近发生的"
  • 混淆历史顺序

3. 引用错误

  • 给出的书籍或论文并不存在
  • 混淆作者或出处

4. 数值与逻辑错误

  • 算术错误
  • 无法正确处理统计数据、逻辑推理任务

四、如何评估和检测幻觉?

当前对于大模型幻觉的检测,既有自动化手段 ,也有人工干预。主要包括:

1. 自动评估指标

  • Factual Consistency:判断生成文本是否与给定事实一致
  • FactScore、FEVER Score:结合知识库评估生成文本的真实性
  • GPT-judge / SelfCheckGPT:使用另一个模型来交叉验证生成内容是否存在幻觉

这些方法尚不成熟,对开放场景、长文本、推理内容仍存在偏差。

2. 人工评估

人工评估是目前最可靠但最费力的方式。尤其在医学、法律等高风险场景中,需要专家团队进行事实核对

3. 结合知识库的评估

通过将生成结果与结构化知识库(如Wikipedia、PubMed、Wikidata)进行比对,能有效识别一些虚构信息。这也推动了"知识增强生成"(如RAG)的发展。


五、业界应对幻觉的策略

虽然幻觉无法完全避免,但已有很多实用的方法能大幅减少它的发生概率:

1. 提示工程(Prompt Engineering)

一个好提示往往能极大降低幻觉率。比如:

  • 加上"请基于已知事实"或"如不确定请不要回答"
  • 使用few-shot examples让模型模仿可信回答风格

2. 检索增强生成(RAG)

在生成之前或过程中引入外部检索系统,模型仅基于查到的"真实材料"生成内容,可以显著降低幻觉率。例如:

给模型一个文献摘要,它再基于摘要回答问题。

我之前有出过一个系列专门介绍RAG。

3. 多模型协同校验

一个模型生成内容,另一个模型验证真假。比如Bard和Gemini尝试加入验证阶段,或引入"二次判别器"结构。

4. 改进训练流程

通过引入:

  • 强化学习(RLHF),利用人类反馈优化生成质量,后续也会和大家一起学习RLHF!
  • 更干净、结构化的训练数据
  • 引入事实对比或知识记忆模块
    可以在根源上减少模型"编造"的倾向。
相关推荐
体系结构论文研讨会34 分钟前
多项式环及Rq的含义
算法
智驱力人工智能42 分钟前
极端高温下的智慧出行:危险检测与救援
人工智能·算法·安全·行为识别·智能巡航·高温预警·高温监测
森焱森1 小时前
60 美元玩转 Li-Fi —— 开源 OpenVLC 平台入门(附 BeagleBone Black 驱动简单解析)
c语言·单片机·算法·架构·开源
课堂剪切板2 小时前
ch07 题解
算法·深度优先
科大饭桶3 小时前
数据结构自学Day5--链表知识总结
数据结构·算法·leetcode·链表·c
我爱C编程5 小时前
基于Qlearning强化学习的1DoF机械臂运动控制系统matlab仿真
算法
chao_7895 小时前
CSS表达式——下篇【selenium】
css·python·selenium·算法
chao_7895 小时前
Selenium 自动化实战技巧【selenium】
自动化测试·selenium·算法·自动化
YuTaoShao5 小时前
【LeetCode 热题 100】24. 两两交换链表中的节点——(解法一)迭代+哨兵
java·算法·leetcode·链表
怀旧,5 小时前
【数据结构】8. 二叉树
c语言·数据结构·算法