什么是模型幻觉(Hallucination)?
Hallucination (artificial intelligence)
模型幻觉:
指大模型生成"看起来合理、语言流畅",但实际上错误、虚假、无法验证,甚至无中生有的内容。
这是当前大模型落地最大的技术问题之一。
因为:
大模型最擅长的是"生成像真的内容"
而不是:
"保证内容一定真实"。
一、典型例子
例如用户问:
"太阳是否总是从东方升起?"
模型可能直接回答:
"是的,太阳总是从东方升起。"
但实际上:
-
大多数地区成立
-
极地会出现极昼极夜
-
并非绝对正确
这就是:
模型忽略边界条件
导致:
事实性幻觉。
二、为什么幻觉危险
在聊天场景:
问题可能不大。
但在:
-
医疗
-
金融
-
法律
-
自动驾驶
-
企业决策
这些:
高可靠场景
幻觉会直接导致:
-
错误决策
-
错误推荐
-
用户误导
-
系统不可信
所以:
幻觉是 AI 落地最大障碍之一。
三、幻觉的本质(面试重点)
这一句非常重要。
大模型本质是什么?
大模型本质:
依然是概率语言模型(Language Model)
核心任务:
预测下一个 Token。
例如:
输入:
"今天下雨,我准备带___"
模型预测:
-
雨伞(概率最高)
-
外套
-
帽子
数学本质
模型训练目标:
P(x_t\mid x_{<t})
即:
预测下一个词出现概率。
关键问题来了
模型优化目标是:
-
流畅性
-
连贯性
-
像人类表达
而不是:
-
真伪验证
-
事实推理
-
世界模型
所以:
"说得像" ≠ "说得对"。
四、为什么会出现幻觉(核心)
幻觉来源:
贯穿整个:
大模型生命周期。
包括:
-
预训练
-
微调
-
对齐
-
推理
第一阶段:预训练(Pretraining)
1. 数据噪声问题
互联网数据:
天然包含:
-
错误信息
-
谣言
-
偏见
-
过时内容
-
重复垃圾数据
模型会:
全部学习。
因此:
模型知识本身可能有偏差。
2. 专业知识缺失
例如:
-
医疗
-
金融
-
法律
-
芯片
高质量数据少。
导致:
专业推理能力弱。
容易:
编造答案。
3. 训练目标问题(最核心)
这是幻觉最本质原因。
模型优化:
Next Token Prediction
而不是:
Truth Verification
即:
模型只关心:
哪个词"更像会出现"
而不是:
哪个词"真的正确"。
第二阶段:SFT(监督微调)
Supervised fine-tuning
SFT 为什么也会产生幻觉
SFT 依赖:
人工标注数据。
如果标注:
-
错误
-
不一致
-
数据质量差
模型会:
对错误答案建立高置信度。
还有一个问题
过拟合(Overfitting)
模型可能:
-
死记硬背
-
缺乏泛化
导致:
新场景胡编乱造。
第三阶段:RLHF 对齐阶段
Reinforcement learning from human feedback
RLHF 为什么也会导致幻觉
因为:
奖励函数不完美。
模型会学会:
"讨好用户"
而不是:
"坚持真实"。
举例
用户:
"给我编一个参考文献。"
模型知道:
用户希望得到"完整回答"。
于是:
编造不存在的论文。
因为:
在奖励模型看来:
"完整回答"分更高。
第四阶段:推理阶段(Inference)
这是现在研究最多的部分。
1. Token-by-token 生成
模型是:
一个词一个词生成。
一旦前面错了:
后面会基于错误继续生成。
形成:
错误滚雪球。
2. 随机采样问题
推理常用:
-
Temperature
-
Top-k
-
Top-p
增加多样性。
但同时:
也增加随机幻觉风险。
五、幻觉分类(面试高频)
1. 事实性幻觉(Factual Hallucination)
最常见。
特点
生成内容:
与客观事实冲突。
例如:
-
错误历史
-
错误数据
-
错误时间
2. 无中生有(Fabrication)
更严重。
特点
生成:
-
不存在的人
-
不存在的 API
-
不存在的论文
-
不存在的公司
但:
看起来特别真。
3. 指令误解(Instruction Misalignment)
模型:
没理解用户真正需求。
举例
用户:
"一句话总结"
模型输出:
三大段。
4. 逻辑幻觉(Logical Hallucination)
推理链错误。
举例
数学推导:
前提都对。
但:
推理过程错了。
六、为什么幻觉无法彻底消灭
因为:
幻觉不是 Bug
而是:
概率生成模型的天然副作用。
只要:
模型不是:
真正基于世界模型推理
幻觉就很难完全消失。
七、当前主流解决方案(重点)
行业目标:
不是:
"完全消灭幻觉"
而是:
"降低风险"。
方案1:RAG(最重要)
Retrieval-augmented generation
核心:
先检索,再生成。
流程:
用户问题
→ 检索知识库
→ 把真实资料喂给模型
→ 再回答
这样:
模型不再只靠参数记忆。
方案2:Tool Calling
让模型:
-
查数据库
-
调 API
-
搜索网页
而不是:
靠脑补。
方案3:Self-Reflection(自反思)
让模型:
-
自己检查答案
-
自己找错误
-
自己修正
Agent 系统里很常见。
方案4:多模型交叉验证
多个模型:
-
分别回答
-
互相验证
降低单模型幻觉。
方案5:让模型学会"不知道"
这是现在非常重要方向。
即:
降低错误自信。
八、真正高级的面试回答(建议背)
模型幻觉本质来源于大模型训练目标与真实性目标之间的不一致。
LLM 优化的是下一个 Token 的概率分布,而不是事实验证,因此模型天然更偏向生成"流畅且合理"的文本,而不一定是真实内容。
幻觉问题贯穿预训练、SFT、RLHF 与推理全过程,目前工业界主要通过 RAG、工具调用、自反思与 Human Feedback 等方式降低幻觉风险。
这个回答已经是: