@ 2024.06.25 , 07:01

用语义熵在大模型中检测幻觉

大语言模型(LLM)如ChatGPT和Gemini,尽管在推理和问答方面表现出色,但经常会产生虚假和无根据的输出。这不仅影响其在法律、新闻和医疗等领域的应用,还可能危及生命。通过统计学方法,我们提出了一种基于熵的不确定性估计器,以检测这些幻觉中的一部分——虚构内容。该方法无需特定任务数据,能够适用于新任务,帮助用户在使用LLM时更加谨慎。

幻觉是使用大语言模型(LLM)进行自然语言生成系统中的一个关键问题,因为用户无法信任任何给定的输出是否正确。幻觉通常被定义为LLM生成的“无意义或不忠实于提供的源内容”的内容,但事实上,它涵盖了忠实性和真实性方面的广泛失败。我们专注于幻觉中的一个子集,称之为“虚构”,即LLM流利地提出既错误又任意的主张。例如,当被问到“索托拉西布的靶点是什么?”时,LLM有时回答KRASG12 'C'(正确),有时回答KRASG12 'D'(错误),尽管指令相同。

我们的方法通过开发一种定量测量输入是否可能导致LLM生成任意和无根据回答的方法来检测虚构。检测虚构允许基于LLM的系统避免回答可能导致虚构的问题,提醒用户注意某个问题的回答不可靠,或用更扎实的搜索或检索来补充LLM。这对于自由生成领域尤其重要,因为简单的方法在封闭词汇和多选题中适用,但在自由生成中失败。过去对LLM不确定性的研究主要集中在更简单的设置上,如分类器和回归器,而LLM最令人兴奋的应用在于自由生成。

为了检测虚构,我们使用概率工具来定义并测量LLM生成的“语义”熵——一种基于句子意义计算的熵。高熵对应高不确定性,因此语义熵是一种估计语义不确定性的方法。语义不确定性是我们引入的一个更广泛的度量类别,可以用其他不确定性度量(如互信息)来实现。自由生成中的熵通常难以测量,因为即使答案意思相同(语义等价),表达方式也可能不同(句法或词汇不同)。这导致对熵或其他词汇变异分数的简单估计在答案可以用多种方式书写而不改变其意义时误导性地高。

相比之下,我们的语义熵倾向于估计自由生成答案的意义分布的熵,而不是LLM本质上表示的“tokens”(词或词片)的分布。这可以看作是一种针对随机种子变化的语义一致性检查。我们的方法通过对每个问题采样多个可能的答案,并将它们算法性地聚类到具有相似意义的答案中来工作。我们通过双向蕴含来确定答案是否在同一个语义簇中。即,如果句子A意味着句子B为真,反之亦然,我们认为它们在同一个语义簇中。我们使用通用LLM和专门开发的自然语言推理(NLI)工具来测量蕴含。

语义熵在不同语言模型和领域的自由文本生成中检测到虚构,无需先前的领域知识。我们的评估涵盖了知识问答、生命科学、开放域自然问题、数学词题和传记生成数据集。我们的虚构检测方法比那些从示例演示中“学习”如何检测虚构的方法更稳健,因为我们的方法是无监督的,不需要虚构的标记示例。

虚构对LLM给出的错误答案贡献很大。我们展示了语义熵可以预测许多错误的模型答案,并通过拒绝回答模型不确定的问题来提高问答准确性。我们评估了两种主要指标:接收者操作特性曲线下的面积(AUROC)和拒绝准确率曲线下的面积(AURAC)。

我们的概率方法通过考虑语义等价性,检测了由LLM知识不足引起的重要幻觉类别。这些幻觉在当前失败中占相当大比例,并将在模型能力增长时继续存在,因为人类无法可靠监督的情况和案例仍将持续。虚构是问答中的一个重要挑战,因为它不仅影响回答的准确性,还可能对用户产生误导。随着大语言模型(LLM)的能力不断增强,如何有效地检测和避免虚构变得愈发重要。我们的研究表明,通过语义熵方法,可以有效地预测和检测出许多虚构的回答。

这项研究的一个关键贡献是引入了语义熵作为评估LLM输出不确定性的新方法。与传统的基于词汇变异的方法不同,语义熵考虑了答案的语义等价性,从而能够更准确地反映自由生成答案的真正不确定性。这不仅提高了虚构检测的准确性,还能够帮助开发者和用户更好地理解和利用LLM的输出。

本文译自 Nature,由 BALI 编辑发布。

赞一个 (1)