源自《软件学报》

扫描二维码
查看更多资讯
摘要:随着以Transformer为代表的预训练模型等深度学习技术的发展,大型语言模型(LLM)日益展现出强大的理解力和创造力,对抽象摘要、对话生成、机器翻译和数据到文本生成等下游任务产生了重要影响,同时也在图像说明、视觉叙事等多模态领域展现出了广阔的应用前景。虽然大型语言模型具备显著的性能优势,但深度学习架构使其难以避免内容幻觉问题,这不仅会削减系统性能,还严重影响其可信性和应用广泛性,由此衍生的法律风险和伦理风险成为掣肘其进一步发展与落地的主要障碍。本文聚焦大型语言模型的幻觉问题。首先,对大型语言模型的幻觉问题展开系统概述,分析其来源及成因;其次,系统概述大型语言模型幻觉问题的评估方法和缓解方法,对不同任务的评估和缓解方法类型化并加以深入比较;最后,从评估和缓解角度展望应对幻觉问题的未来趋势和应对方案。
关键词: 可信人工智能,大型语言模型,幻觉,幻觉评估与缓解
1 介绍
1.1 语言模型发展概述
大型语言模型(以下简称大模型)是指基于大规模语料库进行预训练的超大型深度学习模型,在解决文案写作、知识库回答、文本分类、代码生成、文本生成等下游自然语言处理任务中表现出强大的能力。大型语言模型多基于Transformer架构开展预训练,利用自注意力以更好地捕捉词汇、语法和语义等语言知识,在处理长期依赖性方面比其他神经网络架构具有更好的表现,同时可充分利用硬件的并行性,达到训练比以往规模更大、功能更强的模型训练效果。大模型训练所需数据集的规模可达千亿级别,相比于普通预训练模型更加复杂和庞大,而正是因为模型规模的增大,打破了原有的模型性能定律,产生了“涌现能力”。例如,参数规模更加庞大的GPT-3模型可以通过上下文学习解决少样本问题,而较小规模的GPT-2模型则在此方面表现不佳。虽然这些模型可生成表达流畅、语法规范的文本,但却易于输出与输入文本、真实世界知识相矛盾的事实错误或逻辑错误,从而产生幻觉问题(hallucination)。
1.2 大模型幻觉问题
幻觉问题在大型语言模型中广泛存在,已经成为自然语言生成面临的最大挑战之一。大模型可能“自信”地输出“错误或者不存在”的答案,这种潜在的幻觉问题将极大地限制其在实际场景中的应用,衍生出法律和伦理风险。例如,对文本摘要生成的研究表明目前最先进模型生成的摘要中约有30%存在偏离事实的幻觉问题,严重影响了模型的可靠性和可用性。此外,幻觉问题广泛存在于几乎所有的自然语言生成下游任务中,如文本摘要、对话生成、机器翻译和数据到文本生成任务等。
1.2.1大模型幻觉问题的提出
大模型的广泛应用极大地推动了以自然语言生成为代表的下游任务部署。自然语言生成任务可分为开放式和非开放式。开放式语言生成任务是指输入不完整且输出语义不包含在输入中的任务类型。大模型需要利用知识图谱或语料库中的知识来创建输入中不包含的新内容,而由于幻觉问题的存在,大模型所生成的内容可能不符合真实世界的知识。例如,在新闻写作生成任务中,模型可能生成并未在真实世界发生或存在的内容。
相比之下,在非开放式语言生成任务中,大模型需要根据输入生成文本,同时为输出文本提供完整甚至额外信息。在此类任务的实际应用中可能存在模型生成的内容与输入信息的事实不一致的情况。例如,文本摘要生成任务中,模型生成的摘要内容与输入文档不一致,且与源文档存在出入;机器翻译任务中,模型生成的译文与原文内容不一致。因此,无论是开放式语言生成任务,还是非开放式语言生成任务,幻觉问题均普遍存在。
1.2.2大模型幻觉问题的伦理影响和法律风险
ChatGPT等大模型的纷至推出成为全球科技竞争焦点。大模型成为引领新一轮科技革命和产业革新的战略性技术,具备成为赋能千行百业的通用基础设施的潜能。而随着大模型的不断发展,其幻觉问题引发的伦理影响和法律风险也日益严峻。一方面,迅速迭代的模型愈发具有“创造力”,导致用户过度依赖。这种“依赖”增加了用户对于模型能力的信任从而对内容幻觉缺乏警惕;另一方面,人类认知存在摩西幻觉(Moses Illusion),当事实中的部分内容被错误但相似的信息替代时,人类往往难以识别。 伴随着大模型商业化落地的进程,其引发的法律与伦理风险已经成为掣肘其广泛部署的关键。在一些高风险场景下,一旦大模型产生幻觉,可能造成难以救济的风险。例如,若司法审判环节采用大模型生成裁判文书,一旦出现幻觉,可能直接威胁裁决公正和当事人的基本权利。在医疗领域,如果基于患者信息生成的治疗方案出现幻觉,将直接威胁患者的健康和生命安全。同样,即使在机器翻译应用场景中,如果生成的药品说明书存在幻觉,也有可能产生导致严重危害患者生命的风险。因此,厘清大模型幻觉问题的成因与类型,剖析评估方法和缓解方法具有理论和实践层面的双重意义。
1.3 本文结构
本文第2节对大模型幻觉问题进行概述,分析幻觉问题的来源及成因,并从不同角度给出了幻觉问题的定义;第3节和第4节分别综述大模型幻觉的评估方法和缓解方法,并对其展开分析对比;最后,第5节在以上调研的基础上展望幻觉问题的应对方案和研究方向。
2 问题分析
2.1 大模型幻觉的定义
早在预训练阶段,“幻觉”一词已经在自然语言处理中被广泛采用,通常是指模型生成的内容对提供的源内容无意义或不忠实。现阶段,考虑到多样化的生成内容往往包含不属于源内容的事实知识,大模型幻觉通常是指模型生成的文本不忠实于信息源或者与现实世界的事实不符。例如,在摘要生成任务中,大模型生成的摘要可能无法对应源文本中的事实正确信息;在对话生成任务中,对话产生的输出与对话历史或外部事实相矛盾;在机器翻译任务中,则是指大模型产生完全脱离原始材料的错误翻译。
对于不同的下游任务,大模型对“幻觉问题”的容忍度存在显著差异。例如,数据文本生成或文章撰写任务对幻觉的容忍度相对较低,因为这些任务可能涉及高风险决策或学术研究。而在对话生成任务中,只要避免事实性错误,对幻觉的容忍度则相对较高。由于大模型强大的泛化能力和适应性,更多的新型任务如推荐系统、创意设计、智能检索等幻觉风险也随之浮现。因此,大模型的幻觉定义需要以类型化方式从多个角度归纳。
2.2 大模型幻觉的分类
2.2.1内在幻觉与外在幻觉
根据大模型与输入信息源的关系,可以将幻觉问题分类为内在幻觉和外在幻觉。
内在幻觉是指大模型生成与输入信息源内容相矛盾的输出。例如,在摘要生成任务中,生成的摘要与文章源内容相矛盾。再如,在机器翻译任务中,翻译输出的文本与源文本提供的内容不同且相违背。
外在幻觉是指无法从输入信息源中验证模型所生成的输出。此类输出既不能被源内容支撑,也不能被源内容反驳。以摘要生成任务为例,如果生成的输出在来信息源中没有提及,则用户既不能从源内容找到生成的输出的证据,也不能证明输出是错误的。因此,外在幻觉并不总是错误的,其可能来自事实正确的外部信息,并产生一定的“创造性”,从而有助于广告营销、内容创作类下游任务的完成。
2.2.2封闭域幻觉与开放域幻觉
基于推理的作用范围和上下文限制,推理模式可分类为封闭域推理和开放域推理。封闭域推理指的是模型在特定的上下文或领域中进行推理,而开放域推理则是指模型在更广泛的领域或情境中进行推理。基于大模型在特定任务或领域中推理的表现,可以将幻觉分为封闭域幻觉和开放域幻觉。
OpenAI团队正是以封闭域和开放域两个角度来评估GPT-4模型的潜在幻觉问题的。具体而言,封闭域幻觉是指模型仅提供了给定的上下文信息源,但在内容生成过程中臆造了超出上下文的信息。例如,在摘要生成任务中,大模型生成的摘要包含了源文章不存在的信息。开放域幻觉则是指模型在更广泛的领域或任务中生成的输出存在虚假的情况。此种情况下,模型可能在没有参考任何特定输入上下文的情况下自发提供有关议题的错误信息。例如,在对话生成任务中,大模型为研究者提供了不存在的文献、为律师提供了不存在的案例,此类幻觉也引发了社会和各国监管机构对于生成式人工智能的普遍担忧。
2.2.3输入矛盾幻觉、上下文矛盾幻觉以及事实矛盾幻觉
基于大模型在处理信息时可能出现的矛盾类型,可以将幻觉分类为输入矛盾幻觉、上下文矛盾幻觉与事实矛盾幻觉。输入矛盾幻觉由大模型偏离用户输入导致。其中用户输入包括两个组成部分:任务指令和任务输入。大模型响应与任务指令之间的矛盾通常反映为模型误解了用户意图。当模型生成的内容和任务输入之间出现矛盾,出现类似内在幻觉的情形,则体现为输入矛盾幻觉。
上下文矛盾幻觉是大模型在产生冗长或多回合响应时可能出现的自相矛盾现象。其主要体现为模型在生成的文本中出现前后不一致,或在对话过程中出现自相矛盾。这种幻觉主要由大模型在长期记忆方面的限制,或识别相关上下文方面的不足导致。
事实矛盾幻觉则是指当大模型生成与既定世界知识相矛盾的信息或文本时所产生的幻觉。事实冲突幻觉的来源可能是多种多样的,并可能在大模型生命周期的不同阶段引入。
2.3 大模型幻觉的成因
本小节将分别从数据层、模型层与应用层分析大模型的幻觉成因,如图1所示。

图1 大模型幻觉成因
2.3.1数据层
大模型训练需要海量多源数据。这些训练数据多来自于网络,数据质量参差不齐。当训练数据采自于充斥着虚假信息和毒害信息的社交媒体和公共网页时,模型难以避免地会吸收并重现这些不真实的信息,造成训练数据源与模型生成内容之间的分歧,从而潜在性地促使模型生成不忠实于所提供数据源的文本,导致幻觉的产生。
2.3.1.1数据收集
为了节约数据成本、提高数据生成效率,大模型训练数据并非全部经过人工校验,而是配合采用启发式收集方法。该方法旨在适当精度范围内找到快速可行的解决方案,但可能会损失部分准确性。在收集大规模数据集时,部分模型会启发式地选择超出提供的信息源以外的真实信息作为信息源和目标配对,从而导致目标引用包含信息源不支持的信息。例如,有研究指出,在RotoWire数据集的摘要生成任务中,编写的摘要中有大约40%的内容无法直接映射到任何输入的表格记录,这导致了模型在学习时产生不符合事实的幻觉。
2.3.1.2数据重复或缺失
来自训练语料库的重复示例会导致模型偏向于生成重复的、来自重复示例中记忆短语的输出。数据缺失则可能导致模型产生偏离于事实的预测,这种预测会被下游任务继承,从而产生幻觉问题。目前,Google团队已经发现在某些大模型数据集中存在许多近似重复的样本和长重复的子串,导致模型在无提示输出时直接复制重复文本。因此,这些数据集中存在的重复和缺失极易产生不遵循事实的幻觉问题。
2.3.1.3数据标注
标注数据集为模型提供了宝贵的训练资源,常被应用于指令微调和对齐等关键步骤。但在大模型的发展背景下,数据标注方法正逐渐从纯人工方式向机器辅助、甚至全机器标注转变。这种变革无疑提高了数据生成的效率,但也带来了刻板印象、文本编写错误、个体间回答风格的不一致性,以及跨国和跨地区的文化差异等问题,从而使模型在解读或生成内容时出现偏离事实或预期的幻觉。
2.3.2模型层
模型的结构设计也是大模型幻觉的关键成因之一。Parikh等人的研究表明,即便采用了高质量的训练数据,模型因其固有结构仍可能出现幻觉。这种由模型结构引发的幻觉,可能与编码器、解码器、模型预训练阶段的知识偏好、曝光偏差及模型知识更新局限有关。
2.3.2.1编码与解码缺陷
在大模型架构中,编码器的作用是将输入数据解析为有深度的内部表现形式,解码器的作用是从编码器获取编码输入并生成最终目标序列。如果编码器在这种表征上的学习不足够精确,可能会导致对训练数据的不同部分进行错误的编码关联,从而产生与原输入不一致的误导输出,引发幻觉问题。关联错误也与不完全的编码有关,若解码器关注了输入数据源的错误编码部分,会导致生成错误的结果。这种错误的关联将导致生成的内容中混淆了两个相似实体之间的事实,产生偏离于事实的幻觉。考虑到模型任务对长上下文的不断增长的依赖,编码器处理多模态数据的准确性和效率,以及解码器的策略设计成为了决定模型是否出现幻觉的关键因素之一。
2.3.2.2预训练知识偏好
在正式部署前,大型模型会历经预训练阶段,其中与训练数据集相关的知识会被编码为模型的参数并持续被模型记忆。Longpre等人的研究揭示,在生成过程中,大模型更倾向于依赖记忆的参数知识,而非实时的输入信息。这表明,模型在生成输出时更多地使用了先验参数知识,而非实时输入,这可能成为引发幻觉输出的又一来源。
2.3.2.3模型知识更新局限
大模型无法及时更新迭代是其产生事实错误幻觉的关键来源之一。大模型训练的权重更新方式导致其具有“灾难性遗忘”局限。当使用新的数据集训练已有的大模型时,该模型将会失去对原数据集识别的能力,而且模型的参数越多、网络结构层数越深,模型的表达能力越强,就越容易出现“灾难性遗忘”,进而增加了产生幻觉的可能性。
2.3.3应用层
随着大模型在各种应用场景中的广泛使用,一些关键的应用层趋势同样可能成为产生幻觉的诱因。下游任务的领域专业化可能导致模型在特定领域中失去泛化能力。模型同质化趋势使得不同任务使用相似的预训练模型,可能导致对某些输入过于敏感。模型处理多种数据类型的多模态化趋势,增加了模型的复杂性和产生幻觉的可能性。而提示工程虽提高了模型响应的灵活性,但也可能使模型过度依赖提示。
2.3.3.1下游任务领域专业化
在为特定下游任务部署大模型时,模型往往展现出领域专业化特征。以摘要生成为例,大模型会被训练为从输入文本中抽取核心内容,并简洁地重组为摘要。为确保摘要的准确性和专业性,模型可能需要专门针对特定领域进行优化,这可能会限制模型处理其他广泛任务的能力。这种专业化可能导致模型在实际应用中与训练数据的分布存在偏差,从而引发幻觉问题。
2.3.3.2模型同质化
目前,主流大模型多基于Transformer架构的序列建模方法训练部署完成。在该基础架构下,通过大规模的数据训练和微调产生了更为先进的模型,迸发出强大的涌现能力;同时,采用相同的基础架构也导致了模型的同质化。同质化和涌现能力以一种相互作用的方式显著影响大模型性能。一方面,涌现为模型带来了创新能力,并为解决更多的下游任务增加了可能性;另一方面,同质化虽然可以在广泛的应用中构建方法论的合集,但是其也产生了极高的杠杆作用,即模型中的任何缺陷都会被所有应用模型盲目继承,包括幻觉问题和偏见问题等。
2.3.3.3多模态化
基于多领域知识,构建统一的、跨场景、多任务的多模态基础模型已逐渐成为主流。模型多模态化虽然扩展了下游部署的应用范围,但同样增加了幻觉问题的复杂性。由于每个领域的数据都有其独特结构和属性,这种差异可能意味着需要为每种模态设计独特的训练参数,而无法简单采用统一的参数策略。因此,随着训练规模的增加,大模型多模态趋势可能会导致更严重的幻觉现象。
2.3.3.4提示工程
提示工程是大模型部署前必不可少的环节,其作用是让模型逐步学会人类的各种自然指令执行任务,而无需根据下游任务微调模型或更改模型参数。当前,指令微调技术和思维链技术是提示工程的代表性技术,但在某些场景下可能引发幻觉问题。
指令微调技术由Google首创,旨在实现 “模型根据人类指令举一反三”的效果。其数据集通常由人工手写指令和语言模型引导的指令实例组成,但其中可能包括多个输入和输出实例,从而引发幻觉风险。例如,MiniGPT4和LLaVA等大模型采用合成指令数据进行微调。这些指令数据通常很长,并且可能涉及不存在的对象、情节或者关系,导致幻觉问题的产生。此外,数据指令模板的单一性也加剧了幻觉问题。现有模板多为正向的指令数据,而忽视了负面指令以及更多角度和语义程度的指令。
思维链技术旨在通过给模型提供推理提示,使其模仿人类逐步思考和推理流程,从而使模型掌握从简单任务到复杂任务的推理能力。然而,在推理过程中,由于难以评估推理过程的合理性和有效性,可能导致模型输出带有“幻觉”的答案。例如,Kojima等人通过实验证明,即使模型生成的最终答案是正确的,模型在推理过程中仍然可能使用了无效的推理链,导致模型幻觉的产生。
3 大模型幻觉的评估方法
精确评估大模型幻觉对于模型性能评价、幻觉缓解及适配下游任务等方面具有重要意义。然而,大多数传统度量指标不足以充分量化模型的幻觉水平。尤其是在从表到文本生成、摘要生成任务中,传统度量指标与人工判别的相关性十分微弱。为此,旨在准确量化模型幻觉的更为有效的评估指标被相继提出。根据大模型在数据层、模型层与应用层的幻觉成因,目前大模型幻觉的评估方法可被分为三类:基于数据文本的评估方法,基于模型的评估方法,以及基于多任务应用的评估方法。本节将从方法原理、研究进展及优缺点分析等方面梳理这三类评估方法。
3.1 基于数据文本的评估方法
基于数据文本的评估方法主要通过计算精确率、召回率等能够度量生成文本与参考文本之间信息匹配程度的统计指标来量化生成文本的幻觉程度。常用方法是利用词汇特征开展匹配计算,以此为依据可将评估方法分为三类:
第一类方法是将目标文本作为参考文本设定统计指标。例如,Dhingra等人将蕴含精确率与蕴含召回率相结合共同度量(F-score)得分,提出针对从表到文本生成任务的PARENT指标,该方法克服了单纯依靠BLEU、ROUGE等指标存在的与人工判断结果的一致性较差的问题,提高了度量模型生成文本中幻觉的可靠性。Manakul等人利用WikiBio数据集评估事实陈述之间的一致性,通过设计AUC-PR分数检测文本生成段落与目标段落之间的幻觉。Wu等人利用RAG方法构建了包含18,000 个目标响应的幻觉语料库,通过统计幻觉响应数、幻觉响应率以及幻觉跨度数评估模型生成文本响应的幻觉程度。
第二类方法仅使用源文本作为参考。这一策略在评估时不需要目标文本,更加适应输出结果有多种可能性的场景。Wang等人提出了PARENT-T指标,该方法在 PARENT指标基础上进行了优化,省略了关于目标文本的比较计算,提高了幻觉评估效率。Shuster等人针对基于知识的对话(KGD)任务提出了Knowledge F1,将传统F1指标用到的人类回复修改为数据收集过程中所基于的知识,将幻觉评估推广到训练数据之外的场景。
第三类方法并不局限于参考的文本,可以对多种文本进行扩展,并针对具体任务场景设计不同的评估方法。例如,Popović提出chrF分数评估方法,该方法基于字符n-gram对文本幻觉进行F-度量,在机器翻译任务中显示了优越的性能。Martindale等人设计了一种新的句子相似度(BVSS)评估方法,该方法利用输出结果与翻译参考的信息量来度量句子的恰当性,以帮助判断并量化幻觉,适用于机器翻译的幻觉评估。
基于文本的评估方法从数据层角度考察模型的幻觉程度,主要用于对内在幻觉、封闭域幻觉以及上下文矛盾幻觉进行评估,评估的精确度与指标的设计和数据的大小息息相关,其局限性在于难以从理解文本含义的角度进行评估。
3.2 基于模型的评估方法
为了能够理解生成文本和参考文本的含义从而更精确地评估幻觉,使用额外的模型来量化幻觉的评估方法被相继提出。这类方法大致可分为两步:先利用模型对文本进行某种“学习”;再根据学习结果判断生成文本中是否出现幻觉或计算幻觉分数。
3.2.1基于模型信息提取的评估方法
利用模型进行信息提取(IE)的评估方法主要采用信息提取模型,将生成文本和参考文本中的知识以某种方式(如关系元组)表示出来,并进行比较验证,从而评估幻觉,如图2所示。由于传统的OpenIE方法无法利用知识库信息,导致提取结果难以比较,Goodrich等人比较了两类信息提取方法:一类是两步提取法,即先提取句子中所有的命名实体,再将每一对实体的关系分类;另一类是基于Transformer架构的端到端直接提取事实元组的方法,该方法可以避免多步方法的错误组合。

图2 模型信息提取方法的评估流程图
虽然端到端模型的信息提取方法具有良好的效果,但是以上两类方法在识别元组时仍可能出现错误。由此,Nan等人提出基于命名实体识别(Named-Entity Recognition, NER)模型的评估方法。该方法利用目标文本和生成文本中提取出的命名实体的匹配结果,计算精确率与召回率,从而得到F1度量,显示出更优的鲁棒性。Lee等人也将此方法扩展应用于开放式文本生成任务的幻觉评估中。此外,在利用信息提取结果量化幻觉程度方面,还存在多种度量指标。Dušek等人使用了误时隙率;Wang则使用了内容选择、关系生成和内容排序等指标来度量幻觉。
基于IE的评估方法在度量指标上更为灵活和多样,主要用于对事实矛盾幻觉、开放域幻觉进行评估,但受限于模型本身的局限性,可能在信息提取中出现错误,并可能在下游任务评估中传播而影响评估精度。
3.2.2基于模型推理的评估方法
考虑到幻觉问题研究早期所面临的带标签数据集缺失情况,相关研究探索了基于模型推理的评估方法。此类方法认为源知识参考应蕴含无幻觉生成结果的全部信息,以自然语言推理(Natural Language Inference,NLI)为基础,通过判断假设(生成文本)与前提(参考文本)的关系(蕴含、矛盾或中立)来检测幻觉,并用生成文本与参考文本蕴含、中立和矛盾次数的百分比(蕴含概率, Entailment Probability)量化幻觉,是当前主流的幻觉自动评估方法之一(如图3所示)。

图3 模型推理方法的评估流程图
Dušek等人将此方法应用于数据到文本的生成任务中,并从两个方向检测输入数据与输出文本间的文本蕴含(Textual Entailment)情况:从输入数据中推断输出文本来检查幻觉情况,并从相反方向检查遗漏情况,该方法具有很高的精度。在此基础上,衍生出基于MNLI(MultiNLI)、ANLI(Adversarial NLI)等不同数据集训练的NLI模型来评估蕴含情况的多种评估方法。
以上的研究集中在句子层面的推理,限制了NLI方法在下游任务的应用范围。Laban等人为了将评估的级别从句级提升到文档级,设计了SummaCConv评估方法,该方法通过以句子为单位分割文本并聚合句子对之间的分数以评估幻觉,适用摘要生成的下游任务;而Kryściński等人提出FactCC方法,该方法可以直接从文档级计算分数;Yin等人则构建了文档级的NLI数据集DocNLI,在DocNLI预训练的模型在流行的句子级基准上也显示出很好的性能,并且可以很好地推广到依赖于文档粒度推理的域外NLP任务。此外,上述方法常用的NLI模型主要有BERT,以及在此基础上发展出的RoBERTa、DeBERTa等。
针对某些NLI只能返回幻觉分数而难以精确定位文本幻觉所在的缺陷,Goyal等人提出了依存级的NLI方法,通过关注输入和输出文本中的依存弧所表示的语义关系来检测并定位幻觉。另外,值得注意的是NLI模型的泛化能力也不够优秀,因此需要针对不同的任务改进现有的NLI范式,例如使用合适的数据集对NLI模型进行微调等。Barrantes等人针对摘要任务分别用MNLI和ANLI数据集对BERT、RoBERTa和XLNet模型进行微调,通过人类和模型对抗方式生成的更具挑战性的数据可以帮助提高模型的推理能力,从而提高NLI方法的准确性;Dziri等人针对KGD任务利用NLI范式的扩展构建BEGIN基准,将中立关系分为幻觉、与主题不相关和一般(过于模糊而无法归类)三个子类,通过对抗性生成数据改进了现有的评估指标,提高了评估方法的泛化能力。
基于模型推理的评估方法适用于包含明确上下文的内在幻觉与封闭域幻觉。此外,该类方法对于各种类型的“矛盾幻觉”,如输入矛盾幻觉、上下文矛盾幻觉以及事实矛盾幻觉均有较好的评估效果,但局限性在于如何扩展评估指标以提高其泛化性,以及模型推理能力的提升。
3.2.3基于特定模型的评估方法
一类基于特定模型的方法通过使用两个在不同数据集上训练的模型(条件语言模型和无条件语言模型)来判断生成文本中每一个词例是否得到参考文本的支持。其中无条件语言模型LM只在目标文本上开展训练;而条件语言模型LMx则增加了源文本开展训练。Filippova利用LMx计算单一词例的损失关系,由此判断该词例是否出现幻觉。而Cao等人则利用两个模型来分别计算先验和后验概率,以此作为特征进行分类来评估幻觉情况。Yu等人将此思路应用到提出的KoLA基准中,通过设计自我对比指标来度量幻觉,让同一模型分别在只根据上下文和加上先验知识(人工编写的参考文本中的知识)的情况下生成文本并计算其相似度,相似度越高说明模型抗幻觉能力越强。
另一类方法则通过模型直接计算某种分数来量化幻觉程度。Deng等人通过引入信息对齐概念,训练自监督模型在词例维度上对幻觉进行度量,该方法在各种任务(包括文本摘要、风格转换和基于知识的对话)中表现出与人类判断相比更强或相当的性能。Zha等人根据从文本到表对齐级别标签的映射,提出了对齐分数(AlignScore)评估方法,该方法能够评估任意两文本片段间的信息对齐模型,适用于多个场景的幻觉评估。特别对于处理长文本以及解决输入内容和生成文本不同的情形,提出将输入内容和生成文本分别拆分为粗粒度块和细粒度句子的拆分策略,通过聚合输入块和生成句子间的对齐分数得到最终的幻觉评估分数,该方法的效果不仅优于基于GPT-4的评估指标,同时减小了需要评估指标的数量集。Yue等人设计了归因分数来评估模型生成结果的幻觉,分别定义了从查询、答案和参考到归因分数的映射,同时将归因错误分为矛盾错误和外推(Extrapolatory)错误。通过提示大语言模型和微调较小的语言模型两种方式对问题回答、事实检查、自然语言推断和摘要生成等任务进行了评估,显示出较好的效果。 Zhong等人提出了一种多维评估器UniEval,将不同维度的评估转换为布尔问答(Boolean)问题,与其他常用的度量标准如BERTScore、BARTScore、USR相比,该方法在文本摘要和对话响应任务中表现更佳,并对未知任务展示了强大的零学习能力。Wei等人提出加权大模型的评估方法FEWL,利用现成的LLM答案作为黄金标准答案的代理,设计CHALE可控指标和Truthful-QA指标共同评估模型的幻觉程度。Su等人提出无监督的训练框架MIND,通过在LLM的推理过程中基于每个令牌的上下文嵌入构建多层感知器模型,MIND可以在实时过程中进行幻觉检测,并有效减少计算开销和检测延迟。Zhang等人提出了用于估计文本生成质量的双阶段可解释评估方法DEE,该方法基于Llama 2模型在初始阶段有效识别生成文本中的错误,随后在第二阶段提供针对文本错误的全面诊断报告,从而实现了评估效率、多样性与可解释性的有效结合。
基于特定模型方法的评估效果依赖于所使用模型的性能,且其评估范围并不受限于幻觉的类型,而更多与评估场景有关,因此具有较大的普适性。如何保证模型知识的实时更新以及训练数据集的完备对于此类评估方法极为重要。
3.3 基于多任务应用的评估方法
为了从应用层评估大模型的幻觉性问题,一些研究提出基于多任务应用对大模型生成内容的评估方法。这些方法按照任务种类可分为三类:基于问答的评估方法、基于分类的评估方法和基于特定任务指令的评估方法。
3.3.1基于问答的评估方法
基于问答(Question Answering, QA)的评估方法通过生成问题与答案的方式对模型幻觉水平开展评估。该方法基于一种合理的假设,即如果生成结果与参考文本事实一致,就会从相同的问题中生成相似的回答(如图4所示)。因此,通过对答案进行验证便可以隐式地度量生成文本的幻觉水平。

图4 问答评估方法流程图
基于问答的评估方法多用于摘要任务的幻觉评估。Durmus等人提出了FEQA方法,先屏蔽生成的摘要中重要的文本跨度并以此为答案生成问题,再让QA模型根据源文本对此进行回答;Wang等人提出了QAGS方法,利用QG模型生成关于摘要的问题并对质量较低的问题加以过滤,再让QA模型根据源文本和生成的摘要分别进行回答;Nan等人克服QAGS计算代价高的缺陷,提出了QUALS,并使用QAGen生成“问题-答案对”的平均对数概率,进而量化幻觉;Scialom等人提出了QuestEval评估方法,该方法同时利用摘要生成问题来计算精确度,并利用源文本生成问题加权计算召回率,最后结合精确率和召回率计算F-度量量化幻觉,在一致性、连贯性、流畅性和相关性上提高了与人类判断的评估相关性; Rebuffel等人为满足数据到文本生成任务的评估需求,将QuestEval方法改进为Data-QuestEval,该方法利用QA系统生成一组以源文档为条件的相关问题,然后在其生成的摘要中询问这些问题,其评估方式为:如果QA系统提供的答案是正确的,则认为摘要生成与其源文件一致。Yehuda等人利用模型初始查询生成的答案对,通过量化原始查询和重构查询之间的不一致性水平,确定模型生成的答案是否具有幻觉。Vu等人提出了一种动态QA评估基准FreshQA,该基准提供了两种模式的评估程序:首先利用RELAXED评估主要答案的正确性,进一步利用STRICT评估答案中每个事实的准确性。Zhang等人提出一种利用语义感知交叉检查一致性(Sac3)来改进黑盒模型中幻觉的检测方法,该方法利用HotpotQA-halu 和 NQopen-halu数据集对问题采样,然后使用GPT-3.5turbo生成对应的答案,最后对事实真相和相关知识来源进行比较检查。
基于QA的方法主要应用于摘要生成任务中生成与事实不一致的矛盾幻觉、外在幻觉以及开放域幻觉评估,此类方法存在与基于IE的方法类似的缺陷,不仅使用的模型可能存在潜在错误,并且可能会向下游传播。
3.3.2基于分类的评估方法
基于分类的评估方法主要在两方面加以改进:一方面,关于评估方法泛化能力较差的问题,基于分类的方法构建了针对特定任务的数据集;另一方面,考虑到评估中的蕴含/中立与大模型的忠实并不完全相同,基于分类的方法对于数据集做了关于忠实的分类,更加贴合幻觉评估任务的要求。
维基百科向导(Wizard of Wikipedia, WoW)是Dinan等人针对KGD任务构建的分类数据集。Santhanam等人对该数据集做了修改,在该数据集中人工回复的基础上增加了自动生成的事实不一致的回复,提出了Conv-FEVER方法,用于检测事实不一致的模型;Honovich等人则通过人工注释在WoW验证集上得到随机样本的事实一致性来构建检测的数据集,进一步对幻觉进行评估。
Laban等人针对摘要任务提出了SUMMAC基准,通过对数据集进行标准化处理,将其转化为含一致或不一致标签的二元分类数据集以对模型进行评估;Utama等人提出了Falsesum,利用一个可控的文本生成模型来干扰人工注释的摘要,通过设置可切换的输入控制代码允许生成含不同类型的输出以评估幻觉。此外,Cao等人从另一角度提出了基于分类的幻觉检测法,通过关注实体并建立实体幻觉与生成概率的联系,根据预训练和经微调的掩码语言模型分别计算实体的先验和后验概率作为特征并进行分类来检测幻觉。Jiang等人通过构建残差流到词汇空间的映射,统计正确情况和幻觉情况之间输出令牌概率的动态变化,对由已知事实引起的幻觉进行预测分类。与传统的基于分类的方法相比,该方法能够更好地捕捉输出令牌概率的动态变化信息,通过比较正确和幻觉情况下的概率变化差异提高幻觉预测的准确性。此外,其专门针对已知事实产生的幻觉进行检测,具有更明确的问题导向和应用场景。
基于分类的评估方法需要明确所验证数据集的幻觉类别。因此,建立一个更加细致的幻觉分类体系对于该类评估方法的应用至关重要。
3.3.3基于特定任务指令的评估方法
除了上述方法外,还有研究者近期采用基于特定任务指令的方法开展幻觉评估。Li等人提出了大模型幻觉评估基准HaluEval,该方法使用指令调整数据集来生成回复并自动生成样本数据以评估幻觉。Lin等人提出了评估基准TruthfulQA。通过精心设计的817个指令问答问题,测试了GPT-3、GPT-Neo/J、GPT-2等模型的幻觉问题,将评估扩展到金融、法律、健康等领域。Tang、Chen、Zhu等人分别针对摘要任务、对话任务以及真实世界的任务下提出幻觉评估基准TofoEval、DiaHalu、HaluEval-wild,其利用不同任务领域的指令生成参考答案对幻觉进行评估。此外,Zhao等人提出评估基准Felm,基于ChatGPT对世界知识、科学和技术、数学、写作和推荐以及推理等多个领域的事实错误进行评估。Yang等人提出的PHD基准采用了基于反向验证的零资源方式自动检测事实错误,在段落检测生成任务中展现出较高的效率和较优的成本效益。Lattimer等人提出的评估基准ScreenEval,基于包含脚本和人工摘要的 SummScreen 数据集,为 Longformer和GPT-4 在句子级别生成的摘要引入了事实不一致注释,将评估范围扩展到长篇对话的幻觉问题。Muhlgay等人[94]基于语料库变换提出了FACTOR评估基准,该方法自动将感兴趣的事实语料库转换为基准,评估LLM生成的相似但不正确的陈述的倾向。Mündler等人使用aLM(analyzer LM)来检测幻觉,其使用零样本提示并结合思维链提示技术将aLM实例化,让aLM在得出检测结果前先提供一个解释,然后计算标准分类精度(P)、召回率(R)和F1得分来评估幻觉。以上基于特定任务指令评估的方法适合于对单一任务在特定数据集下开展的评估,具有一定的应用局限性。
相关研究者通过设计任务提示指令,利用大模型对不同下游任务幻觉进行评估。Kocmi等人通过对翻译任务的研究发现大模型是最先进的翻译质量评估工具,提出了基于GPT的翻译质量评估指标(GEMBA),设计了任务提示指令对模型翻译质量进行评估。Gao等人依据大语言模型学习上下文的能力,通过指令调整帮助其与人类评估行为对齐,使大模型在摘要任务中能够模仿人工评估。Liu等人提出了G-Eval评估方法,该方法包含评估任务定义和标准的提示,并利用具有思维链的大模型框架根据返回词例的概率计算分数的评分函数,在文本摘要任务和对话生成任务评估中具有优异的表现。Min等人针对长文本评估提出了FActScore方法,该方法先利用大模型将生成文本分解为一系列传达单一信息的短句,即原子事实(Atomic Fact),再利用模型自动验证原子事实是否被可靠知识源支持以评估幻觉得分。Shafayat等人在FActScore基础上提出Multi-Fact方法,专门用于多语言传记生成任务的真实性评估。通过该项研究,发现了LLM事实生成中的地理偏见与多语言评估的必要性。Gekhman等人针对摘要问题提出了TrueTeacher,通过使用不同的模型生成一组候选摘要,再利用大模型对其事实一致性标注,该方法可以有效缓解数据集难以涵盖所有类型的事实错误的挑战。
利用大模型设计任务指令的幻觉评估依赖于对应的下游任务类型及任务要求,方法评估效率与准确性受限于大模型本身的能力,但对于缺乏人类参考的新任务评估具有较大的应用前景。
3.4 小结
本节从数据、模型和多任务应用三个角度梳理了目前主流的评估方法,并对不同方法的原理进行了介绍和分析,相关的研究被总结在表1中。
表1 大模型幻觉评估方法分类

基于以上的分析,我们对比分析了三类方法的优点和局限性(见表2)。具体分析如下:
(1)基于数据文本的评估方法简单直接,能够根据数据源设计相应的评估指标量化模型输出的幻觉程度,评估指标也可以根据评估精度进行调整,适用于对内在幻觉、封闭域幻觉以及上下文矛盾幻觉进行评估,易于操作和理解。但此类方法也存在一些局限性,由于大多数基于数据文本的统计指标无法理解生成文本的含义,只能使用其中的字符和单词来统计幻觉,导致此类方法只能处理词汇信息而难以从句法和语义层面开展评估。此外,基于数据文本进行评估也存在精确度不足的情况。
(2)基于模型的评估方法可以克服数据文本不足、标签缺失的情况,同时适用于词汇和长文本幻觉评估,且对各种幻觉类型均有较好地评估效果。相对于数据文本的评估方法,模型评估方法更为精确,评估指标设计与评估数据集设计更为灵活,但也存在指标设计较复杂,需要从多角度量化幻觉问题的局限性。
(3)基于多任务应用的评估方法易于对特定任务进行评估,适用于任务种类较单一的模型。然而,该方法一般利用模型生成数据集,并进行对比评估,容易造成模型的潜在偏误传播,且对于幻觉评估而言可靠性不足。
表2 大模型幻觉评估方法对比
