DoLa:对比层解码提高大型语言模型的事实性

DoLa:对比层解码提高大型语言模型的事实性本文提出了 DoLa 一种针对大型语言模型的解码策略 旨在减少幻觉并增强事实知识

在这里插入图片描述

摘要

尽管大型语言模型(LLM)具有很强的功能,但它们容易产生幻觉,即生成与预训练期间观察到的事实偏离的内容。

本文提出了一种简单的解码策略,用于减少预训练的LLM中的幻觉,该策略不需要依赖检索的外部知识或额外的微调。

本方法通过对比从 较高层和较低层 投影到 词汇空间 所得到的 logits 之间的差异来获得下一个token的分布,利用了LLM中事实知识通常局限于特定的Transformer层的事实。这种 对比层解码(DoLa)的方法能够更好地表现出事实知识,并减少生成不正确事实的情况。DoLa在多项选择任务和开放式生成任务中始终提高了真实性,例如在TruthfulQA上将LLaMA系列模型的性能提高了12-17个百分点,展示了其在使LLM可靠地生成真实事实方面的潜力。

较高层和较低层分别表示了不同级别的语义信息和词法信息。通过将这些层的输出经过投影到词汇空间,可以获得每个词的logits。

在语言模型中,logits表示了每个词在生成文本时的得分或概率。

1 引言

大型语言模型(LLM)在许多自然语言处理(NLP)应用中展现出了巨大的潜力。然而,尽管LLM的性能不断提升并出现了新的能力,它们会产生“幻觉”,即生成与预训练期间观察到的真实世界事实偏离的内容,这仍然是一个持续存在的挑战。这对于高风险应用(例如临床/法律环境)特别是可靠生成可信文本至关重要,因此这代表了部署LLM的重要瓶颈。

尽管对LLM幻觉的确切原因尚不完全清楚,但可能的原因之一是由于最大似然语言建模目标(the maximum likelihood language modeling objective) ,该目标最小化了数据分布与模型分布之间的前向KL散度。这个目标可能导致模型具有Mass-seeking behavior(寻找质心行为) ,使得LM为不完全符合训练数据中嵌入的知识的句子分配非零概率。实证上,通过在有限数据上使用下一个词预测目标训练的LM已被证明会导致模型仅仅利用语言知识来识别训练示例中的表面模式,而不是识别和生成从训练语料库中提取的真实世界事实。

最大似然语言建模目标(Maximum Likelihood Language Modeling Objective)是一种用于训练语言模型的优化目标。语言模型的目标是根据先前的文本序列预测下一个词或字符的概率分布。最大似然语言建模目标旨在最大化模型预测下一个词的概率与实际观察到的下一个词的匹配程度。
具体来说,给定一个训练集,包含多个文本序列,可以将每个序列表示为一个由单词或字符组成的序列。对于每个序列,我们可以定义一个条件概率分布,表示在给定前面的文本序列的情况下,下一个词或字符的预测 概率。
最大似然语言建模目标的核心思想是通过最大化训练集中所有序列的条件概率来训练模型。具体地,我们希望模型的预测概率尽可能接近训练集中实际观察到的下一个词或字符。

前向KL散度(Forward KL Divergence),也称为KL散度损失、相对熵损失或KL散度损失项,是一种用于衡量两个概率分布之间差异的度量。
在机器学习中,KL散度用于比较两个概率分布P和Q之间的差异程度。前向KL散度衡量的是从P到Q的差异,即将P作为参考分布,衡量Q相对于P的不确定性。
具体来说,对于离散概率分布,前向KL散度定义如下:
K L ( P ∣ ∣ Q ) = Σ P ( x ) ∗ l o g ( P ( x ) / Q ( x ) ) KL(P || Q) = Σ P(x) * log(P(x) / Q(x)) KL(P∣∣Q)=ΣP(x)log(P(x)/Q(x))
其中,P(x)和Q(x)分别表示P和Q在事件x上的概率。
前向KL散度的值越大,表示两个概率分布之间的差异越大。当两个分布完全相同时,前向KL散度为0。当P和Q之间有差异时,前向KL散度大于0。
前向KL散度可以在训练机器学习模型中用作损失函数的一部分。在训练过程中,通过最小化前向KL散度,可以使模型的输出概率分布逐渐接近目标概率分布,从而实现模型的优化和拟合。

根据这段文字,“Mass-seeking behavior” 意味着LM倾向于聚集在数据分布的中心或代表性点上,并且可能会给不完全符合训练数据中嵌入的知识的句子分配非零概率。这种行为可能导致LM生成与训练语料库中提取的真实世界事实不一致的句子。换句话说,LM更注重捕捉训练样本中的表面模式,而不是真正识别和生成基于训练语料库的真实世界事实。

从模型可解释性的角度来看,Transformer语言模型被宽泛地显示为在较低层中编码“较低级”的信息(例如,词性标签),而在较高层中编码更多的“语义”信息。
最近,Dai等(2022)发现预训练的BERT模型中的“知识神经”分布在最顶层。Meng等(2022)表明,事实知识甚至可以通过操作自回归Transformer语言模型中的特定一组前馈层来进行编辑。
本文提出利用这种知识的模块化编码,通过对比解码方法来增强LM中的事实知识,其中下一个词的输出概率是通过较高层和较低层得到的logits之间的差异来获得的。通过强调较高层的知识并淡化较低层或中间层的知识,可以使LM更具事实性,从而减少幻觉。
在这里插入图片描述
*这段文字描述了基于Transformer的语言模型(LM)在不同层次逐渐融合更多事实信息的过程。观察结果表明,虽然在不同层次中,“Seattle”作为下一个词的概率保持相似,但正确答案“Olympia”的概率从较低层次逐渐增加到较高层次。DoLa利用这个事实,通过对比两个层次之间的差异来增强LLM模型的概率,使其更倾向于生成符合事实的输出。
*

图1显示了一个简单示例的这一思想的示例。虽然“Seattle”在所有层中都保持较高的概率——这可能是因为它是一个句法上合理的答案,但是在较高层注入更多的事实知识后,真实答案“Olympia”的概率增加了。在这种情况下,通过对比不同层之间的差异,可以揭示出真实答案。基于这一概念,提出了一种新的解码方法,即 对比层解码(DoLa),以更好地展示嵌入在LLM中的事实知识,而无需检索外部知识或进行额外的微调。

对TruthfulQA和FACTOR Muhlgay等的实验表明,DoLa能够提高LLaMA系列模型的真实性。对StrategyQA和GSM8K的思维链推理以及开放式文本生成结果(使用GPT-4评估)的进一步实验也显示出它可以促进更具事实性的推理。最后,对于生成开放式文本的实验结果表明,与原始解码方法相比,DoLa能够生成更具信息量和显著更具事实性的响应,从而获得更好的评分。从效率的角度来看,发现DoLa在解码过程中只引入了很小的额外延迟,因此可以作为一种实用且有用的解码策略,用于提高LLM的真实性。

2 方法

最近的语言模型由一个嵌入层、N个堆叠的Transformer层和一个仿射层ϕ(·)组成,用于预测下一个词的分布。给定一个token序列{ x 1 , x 2 , . . . , x t − 1 x_1, x_2, . . . , x_{t−1} x1,x2,...,xt1},嵌入层首先将token嵌入到一个向量序列 H 0 = H_0 =

今天的文章 DoLa:对比层解码提高大型语言模型的事实性分享到此就结束了,感谢您的阅读。
编程小号
上一篇 2025-01-05 15:06
下一篇 2025-01-05 15:01

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/102434.html