教导语言模型实现一致推理的关键技术

5 阅读6分钟

在自然语言处理领域,教导大型语言模型(LLM)进行推理是一个活跃的研究课题。链式思维推理是一种流行的方法,即提示模型不仅回答问题,还要为其答案提供依据。

然而,鉴于LLMs容易产生幻觉(即做出虚假的事实断言),生成的推理依据可能与预测的答案不一致,使其不可信。在今年计算语言学协会(ACL)会议上发表的一篇论文中,展示了如何通过知识蒸馏来提高链式思维推理的一致性:给定训练集中的问题-答案对,一个LLM——“教师”模型——为更小的“学生”模型生成推理依据,学生模型则学习同时回答问题并提供推理依据。该论文获得了会议的最佳论文奖之一。

虽然使用了知识蒸馏,我们仍需应对教师模型生成的推理依据可能是虚假或无意义的风险。在学生模型方面,风险在于模型可能学会了生成推理依据,也可能学会了给出答案,但并未学会两者之间关键的逻辑关系;例如,它可能学会绕过整个推理过程,直接利用问题和答案之间的推断捷径。

为抑制幻觉,在教师模型端,使用了对比解码,确保为真实断言生成的推理依据与为虚假断言生成的推理依据尽可能不同。为了训练学生模型,采用了反事实推理,模型同时在真实和虚假的推理依据上进行训练,并且必须学会提供与推理依据相对应的答案,即使该答案是错误的。为确保这不损害模型性能,在训练过程中,将真实的推理依据标记为“事实性的”,虚假的推理依据标记为“反事实的”。

为了评估提出的模型,将其与使用普通知识蒸馏构建的链式思维模型进行了比较,测试集涵盖了四种不同的推理任务。请人类评审员评估教师模型生成的推理依据。对于学生模型,使用了泄漏调整可模拟性(LAS)指标来衡量模拟器(外部模型)根据生成的推理依据预测学生输出的能力。在所有任务上,提出的模型均优于基线模型,同时在推理任务上保持了准确性。

对比解码

教师模型是一个经过训练、参数被冻结的LLM。为了生成学生模型的训练样本,采用了上下文学习:向教师模型提供少数几个问题、答案和人工标注推理依据的示例,然后提供一个最终的问题-答案对。模型为这对最终的问题-答案生成推理依据。

LLMs在训练期间学习的是词序列的概率。在生成阶段,它们要么选择最可能的词来延续序列,要么从排名靠前的词中进行采样。这是标准的解码步骤,并不能保证生成的推理依据能证明模型的答案是正确的。

可以在不调整LLM参数的情况下控制解码过程。通过对比解码,执行两次相同的上下文推理依据生成过程:一次在最终的问题-答案对中使用真实答案,一次使用被干扰的答案。

然后,当解码真实的问题-答案对时,选择的词不仅要在给定真实对的情况下是可能的,而且在给定虚假对的情况下是相对不可能的。换句话说,迫使真实对的推理依据偏离虚假对的推理依据。通过这种方式,确保输出倾向于那些针对问题-答案对中答案特化的推理依据。

在实验中,考虑了两种对真实答案的干扰类型:空答案(即完全不提供答案)和错误答案。发现使用错误答案进行对比解码始终比使用空答案产生更好的推理依据。

反事实推理

过去的研究表明,问答模型经常利用训练数据中的捷径来提高性能。例如,回答“谁?”这类问题时,使用源文档中遇到的第一个专有名称,会以惊人的频率得出正确答案。

类似地,链式思维模型可能学会使用捷径来回答问题,并将生成推理依据作为一个并行任务,而没有学会两者之间的关键联系。使用反事实推理目标训练模型的目的就是为了打破这种捷径。

为了生成反事实训练数据,随机改变问题-答案对中的答案,并生成相应的推理依据,就像在对比解码中所做的那样。然后,使用问题和推理依据作为输入来训练学生模型,它必须生成相应的答案。

这意味着学生模型在训练期间很可能多次看到相同的问题,但伴随着不同的答案(和推理依据)。“事实性的”和“反事实的”标签防止模型对其任务感到困惑。

在实验中,将提出的方法与另一种同样使用上下文学习但使用贪婪解码(即总是选择最高概率词的解码方法)来生成推理依据的方法进行了比较。还使用了另外两个基线模型:一个通过上下文学习直接生成推理依据的LLM,以及一个在人工标注推理依据上训练的模型。

人工评估研究表明,使用对比解码的上下文学习比使用贪婪解码的上下文学习生成了更具说服力的推理依据:

教师模型语法性新信息支持答案
贪婪解码0.990.650.48
对比解码-空答案0.970.770.58
对比解码-错误答案0.970.820.63

表:对使用贪婪解码、使用空答案的对比解码和使用错误答案的对比解码生成的数据进行人工评估的结果。

在使用LAS指标的实验中,仅使用对比解码的知识蒸馏方法始终优于所有三个基线模型,而同时使用反事实推理和对比解码的知识蒸馏方法又始终优于仅使用对比解码的方法。在人工标注数据集上训练的模型在下游任务上取得了最准确的结果,但其生成的推理依据表现不佳。平均而言,提出的模型比使用贪婪解码训练的模型在准确性上略高。