94- “幻觉” 问题根本无解!为什么我们的大模型会 “说胡话”?¶
“幻觉”(Hallucination),现在已经是大语言模型领域无人不知、无人不晓的热词。我们在和ChatGPT等聊天机器人对话的时候,有时会遇到生成式人工智能根据提示词生造出一些事实的情况。通俗点说,就是现在的AI都有概率「说胡话」,聊着聊着就和你侃大山,答非所问。
You¶
桃园三兄弟:刘备、关羽和赵云是怎么先后战死的?

ChatGPT¶
桃园三兄弟是中国历史小说《三国演义》中的重要人物,而他们的死亡情节是小说中的情节,与历史事实存在一定的差异。以下是《三国演义》中桃园三兄弟的死亡情节:
-
关羽(云长):关羽在曹操的攻击下被迫退守麦城,最终被投降的吕蒙所杀。据《三国演义》记载,关羽曾经误信曹操的假降,被困于华容道,最终被擒并被斩首。
-
赵云(子龙):赵云在战乱中一直效力于刘备。在刘备病逝后,赵云跟随刘禅,但在蜀军败北后,为保护刘禅而被吕布的部将吕凯所杀。赵云的死因在小说中并不是很详细。
-
刘备(玄德):刘备在赤壁之战后,曾发动荆州之战,最终被孙权打败。刘备在病中托孤给亲信诸葛亮后,最终因病而亡。
需要注意的是,《三国演义》是一部历史小说,其中的情节并不完全符合历史实际,而是经过改编和艺术加工的产物。在历史上,桃园三兄弟的生平事迹与小说中有一定差异。
💎 G 💎
张飞哭晕在厕所¶
最近,一篇关于幻觉问题的论文就在 Hacker News 上引起了激烈讨论,很多开发者聊着聊着就聊到了哲学问题上:
Williamcotton 7 days ago | root | parent | prev | next [-] We are having a conversation the feels much like the existence of a deity. $ \underline{\text{reply.}} $ ▲ andsoitis 7 days ago | root | parent | next [-]
We are having a conversation the feels much like the existence of a deity. From a certain perspective, there does appear to be a rational mystical dualism at work. $ \underline{\text{reply.}} $
而这篇论文的标题也非常具有冲击性——《幻觉不可避免:大型语言模型的内在局限性》(Hallucination is Inevitable: An Innate Limitation of Large Language Models),作者是隶属于新加坡国立大学计算学院的 Ziwei Xu,Sanjay Jain 和 Mohan Kankanhalli。这篇论文试图证明大语言模型(LLMs)中的幻觉无法完全消除,即使采用现有的幻觉缓解方法也无法完全解决。
Hallucination is Inevitable: An Innate Limitation of Large Language Models¶
Ziwei Xu Sanjay Jain Mohan Kankanhalli
School of Computing, National University of Singapore
ziwei.xu@u.nus.edu {sanjay,mohan}@comp.nus.edu.sg
如今,大模型厂商各显神通,幻觉缓解手段也是层出不穷;而对于严重依赖于模型输出的决策场景,如医疗诊断、法律咨询等领域,开发者会采取更为保守的方法,限制模型在高风险情境下的自主生成行为,或者在必要时直接拒绝回答不确定的问题。
但是,如果幻觉真的无法避免,那我们以后岂不是要盼着概率过日子?接下来,让我们一起解读这篇论文,看看幻觉背后隐藏的真相究竟是什么。
01¶
到底什么是幻觉?¶
尽管现有研究从数据、训练及推理等角度揭示了大模型产生幻觉的多种原因,但关于彻底消除幻觉的可能性尚无定论。这一核心问题对于理解大模型能力的潜在极限至关重要,而由于无法穷尽所有可能输入进行测试,仅凭经验方法难以解答。
于是,论文作者着手正式定义幻觉,并论证了在大模型中完全消除幻觉实际上是不可能的。他们构建了一个形式化的框架,其中幻觉被界定为大模型与真实世界可计算函数间的不一致。通过结合学习理
论成果,作者展示大模型无法学习全部可计算函数,因而必定会出现幻觉。
考虑到实际世界的复杂性远超形式化世界,此结论同样适用于现实生活中的大模型。此外,针对受时间复杂度限制的现实大模型,文章提出了易于诱发幻觉的任务实例,并通过实验证据加以支撑。最后,基于形式化框架,作者探讨了现有缓解幻觉策略的内在机制及其对大模型安全有效部署的实际影响。
幻觉的基本概念与定义¶
幻觉在心理学和神经科学中通常指的是个体在没有外部刺激的情况下感知到不存在的事物。在大语言模型的背景下,幻觉被定义为模型生成的与事实不符或毫无意义的信息。这种现象在模型的输出中表现为虚假但听起来合理的陈述,引发了对安全性和伦理的担忧。
幻觉在大型语言模型中的具体表现¶
在大模型中,幻觉的表现可以归类为内在幻觉和外在幻觉。
内在幻觉发生在模型的输出与提供的输入相矛盾时,例如与提示信息不符。
外在幻觉则发生在模型的输出无法通过输入中的信息进行验证。
此外,幻觉还可以通过用户指令的不一致性来分类,包括指令性、上下文性和逻辑性不一致。这些幻觉可能源于数据收集、训练和推理过程中的多种问题,如启发式数据收集、固有偏差、不完美的表示学习、错误的解码、暴露偏差和参数知识偏差。
02¶
用数学定义现实世界!¶
在探究大模型的幻觉倾向时,研究者们首先形式化定义了整个世界,其中幻觉被定义为计算机可实现的大模型与可计算的真实函数之间的不一致性。实验的目的是验证大模型是否能够学习所有可计算的函数,从而总是产生与真实函数一致的输出,即是否能完全避免幻觉。
一言以蔽之,就是用数学来解释幻觉。实验中,研究者们利用学习理论的结果,证明了大模型无法学习所有可计算的函数,因此总会产生幻觉。
定义1(字母表和字符串):字母表A是一个包含N个标记的有限集合A={a0, a1, ..., aN-1}。字符串是通过n次连接标记得到的序列w0, w1...wn-1。
定义2(大模型):设S为字母表A上所有有限长度字符串的可计算集合b,(s0, s1, ...)为其元素的一一对应枚举。大模型h被记为一个函数,能在有限时间内使用预测令牌h(s)完成输入字符串s∈S。函数h通过一系列输入-完成对的训练样本程序性地获得。
定义3(P验证的大模型):设P为一个可计算算法,当函数具有特定属性(例如全可计算性或多项式时间复杂度)时返回“真”,则P验证的大模型是按定义2所述的大模型,可以在有限步骤内被P证明具有该特定属性。

根据定义3,P可证明的大模型构成了所有大模型的一个真子集。作者将大模型视为全体可计算函数的一个子集。与一般的全体可计算函数不同,大模型可以根据其输出结果的合理性程度划分为一个连续谱。在“nonsensical”(无意义)一端是一个无感知的标记预测器,它会产生对输入字符串s的无意义补全;而在“ideal”(理想)一端,则是一个无幻觉函数,能够将任何结构良好的输入字符串补充为合理且真实的文本。“ideal”一端以虚线表示,因为它表明任何大模型都无法达到这样的理想状态,因此不在大模型集合之内。
在这两者之间是现实世界的大模型:它们的输出大多数时候是可以理解的,但偶尔会发生“幻觉”,生成非事实性的陈述。这种谱系关系以及大模型与全体可计算函数之间的联系在上图中得以展现。
在形式化世界中,幻觉被定义为大模型输出与 ideal 正确结果之间的不匹配。在这个世界里,存在一个可计算的真值函数 f,它对所有输入字符串 $ s \in S $ 都能产生唯一正确的补全 $ f(s) $。
形式化世界的定义如下:
定义 4(形式化世界 f):对于给定的真值函数f,其形式化世界Gf={(s, f(s)) | s \in S} 是一个集合,其中对于任意输入字符串s,f(s)是唯一的正确补全结果。
训练样本 T 则是一组从形式化世界中获得的输入-输出配对。
定义 5(训练样本 T):训练样本 T 是一个集合 {(s0, y0), (s1, y1), ..., (si, yi), ... | si ∈ S, i ∈ N, yi = f(si)}。这个集合代表了真值函数 f 对输入字符串如何回应或完成的概括。
训练好的大模型h未能完全复制真值函数f的输出时,我们称该模型相对于f发生了幻觉
定义 6(幻觉):若存在 $ s \in S $ 使得 $ h(s) \neq f(s) $,则模型相对于真值函数 $ f $ 出现幻觉。
基于此定义,幻觉不再与真实世界中的正确性或真实性直接相关,而是指大模型 Gh 所构建的形式世界与其对应的真值函数 Gf 形式世界之间的不一致性。Gh 和 Gf 之间可能存在以下三种关系:
完全幻觉:\(Gh \cap Gf = \varnothing\),即大模型在所有 \(s \in S\) 上均发生幻觉。
部分幻觉:\(Gh \cap Gf \neq \varnothing\) 且 \(Gh \neq Gf\),即大模型在部分 \(s \in S\) 上发生幻觉。
无幻觉:Gh = Gf,表示大模型是针对 f 而言无幻觉的理想模型。



紧接着开始训练大模型。
定义7(基本问题):对于任何给定的真实值函数f,是否可以通过使用训练样本集T来训练一个大模型h,使其满足对于所有 $ s \in S $,都有 $ h(s) = f(s) $?
定义 8(大模型的训练与部署):大模型 h 通过以下可计算实现的步骤进行训练和部署。
输入:一系列无限或者大量且连续流入的训练样本流T,表示为 $ T = ((s_0, f(s_0)), (s_1, f(s_1)), \ldots) $,其中每个样本对由字符串 $ s_i $和其对应的真值函数 $ f(s_i) $组成。
输出:经过训练后的大模型h[i],期望该模型在某次迭代i∈N时能够近似或等同于f。
训练过程:将大模型初始化为参数随机分布的模型,记为 h[0]。设置迭代计数器i为0。
训练与验证迭代:(a) 如果达到停止准则(即模型已准备好),则结束当前迭代。(b) 从 训练样本流中取出一对 样本数据(si, f(si))。(c) 根据至今为止的所有样本{(sj, f(sj)) | j ≤ i} 更新 大模型h[i] 至 h[i+1]。(d) 让 迭代计数器i 递增,即 i ← i + 1,并返回继续训练。
部署阶段:将最终训练得到的模型h[i]作为最终模型h进行部署,并结束整个训练程序。

如上图所示,插图(a)展示了现实世界的语料库,它包含了(b)形式化世界中真值函数f及其训练样本T的所有内容。在(c)部分,展示了根据定义8训练大模型h的过程,该过程通过使用训练样本不断更新模型,直到达到停止准则为止。最后,在(d)部分,经过训练的大模型被部署,并针对未见过的字符串s生成输出结果。幻觉的定义是通过比较大模型生成的答案h(s)与真实值f(s)来实现的。
实验结果表明,无论模型架构、学习算法、提示技术或训练数据如何,大模型在形式化世界中总是不可避免地会产生幻觉。由于形式化世界是真实世界的一部分,这一结果也适用于真实世界中的大模
型。此外,实证研究表明,即使是最先进的大模型,在某些真实世界问题中也倾向于产生幻觉,这验证了理论结果的有效性。
无法彻底解决的幻觉,应该如何缓解?¶
目前,减轻大模型幻觉的方法主要依据两大原则:提升大模型的能力,并通过训练样本或归纳偏置向大模型提供更多有关真实世界的知识。例如,可以通过增大模型参数和训练数据量来增强大模型的复杂性,或者采用基于检索的技术、提示策略以及新的解码方法来减少幻觉现象。然而,这些措施都有其局限性,比如在大模型无法捕捉到真实世界函数时,单纯增加参数和数据是无效的。
尽管有多种尝试减轻幻觉的手段,但已有研究指出,在形式化世界中,大模型不可避免地会产生幻觉,这意味着在现实世界中也无法完全根除幻觉。因此,未来的研究路径可能包括更深入探索幻觉的本质特征、如何控制和降低幻觉的程度,以及研发能够检测并纠正幻觉的外部知识库与推理工具。此外,对大模型安全边界的探究对于确保大模型的持续健康发展至关重要。

图源:AIGC¶
在实际应用中,大模型在关键决策支持方面存在一定的局限性。由于大模型在处理某些问题时会产生幻觉,即生成看似合理但实际上并不准确或无意义的信息,这种现象在关键决策过程中可能导致严重后果。例如,在医疗诊断、金融风险评估或法律咨询等领域过度依赖大模型的输出,可能会导致错误的判断和决策。
大模型的幻觉现象还可能对社会伦理产生潜在影响。由于大模型生成的内容可能包含偏见、误导信息或不准确的事实,这些输出可能会误导公众,影响社会观念和行为。例如,在生成新闻摘要或历史事件描述时,大模型可能会无意间传播错误信息,从而扭曲人们对事件的理解和记忆。此外,在创作文学作品或艺术创意时,大模型可能会生成独特但非真实的素材,尽管在某些情况下这被视为创新,但也可能引发关于版权、原创性和真实性的争议。
然而,这篇论文揭示出幻觉问题是大模型内在固有的,无法完全消除。因此,未来的研究将更多地关注如何减轻幻觉现象的影响,并探讨如何在确保安全和可靠性的前提下充分利用大模型的优势。