2023-11-7论文笔记
2023-11-7论文笔记
BRANCH-SOLVE-MERGE IMPROVES LARGE LANGUAGE MODEL EVALUATION AND GENERATION
背景
现有的 LLMs 缺乏自一致性,并且不擅长分解并规划复杂的多约束问题。
工作
作者提出了 Branch-Solve-Merge(BSM)——一种用于处理 multi-faceted 自然语言任务的分解方法,也是Large Language Model program(将LLMs嵌入到算法或程序中)的一个实例。具体来说,给定任意一个任务,branch模块通过将任务分解为多个并行的子任务来生成解决方案,其中每个子任务由一个唯一的分支表示,代表解决整体问题所需的不同组件,然后使用solve模块解决这些相互独立的子问题,最后使用merge模块将这些子问题的解决方案融合在一起,得到最终的整体解决方案。
作者在LLMs评估和约束文本生成这两个任务上进行了实验,示例如下图所示:
整体的算法流程图如下图所示:
效果
在LLM评估任务上,使用的指标有LLM-Human Agreement (Ag)、Position Bias (PB)、Length Bias (LB)、Self-enhancement Bias (SB),这四个指标分别关注了LLM和人类的一致程度,响应对顺序对评估的影响程度,人类更喜欢较短回应但评估器模型不喜欢的样本比例,以及LLM评估器是否更偏好自己生成的响应,实验结果如下图所示:
在约束生成任务上,使用的指标有All Present和Missing Concepts,分别关注了对于约束的满足以及对于关键词的缺失,实验结果如下图所示:
SELF-RAG: LEARNING TO RETRIEVE, GENERATE, AND CRITIQUE THROUGH SELF-REFLECTION
背景
除了雪球式幻觉外,由于知识不足而导致的幻觉也比较常见。
工作
作者提出了一种新的框架,称为自反思的检索增强生成(SELF-RAG),它通过检索和自我反思来提高语言模型生成结果的质量并增强其事实性。这个框架训练单个的LM,并根据需要自适应地检索段落,然后使用特殊标记(称为反思标记)对检索到的段落及自己的生成进行反思。生成反思标记使LM在推理阶段可控,使其能够根据不同的任务需求调整自己的行为。SELF-RAG的整体流程如下图所示:
推理
具体的推理步骤如下图所示,对于一个输入,首先让LM输出一个检索token,用于判断是否需要进行检索,如果无需检索,那么直接使用LM进行输出即可,如果需要检索,那么就进行检索即可,通过调整自定义的阈值的大小,可以让LM适应于不同的任务,比如医疗诊断可以将阈值设置的低一些,尽量多进行检索,自由撰写任务则将检索设置的高一些,尽量靠模型自我发挥。接着,让LM预测一个相关性token来评估检索到的段落是否与问题相关,根据检索结果生成响应后再预测支持性token和有用性token,分别评估响应中的信息能否被检索结果支持以及响应整体是否对于问题有帮助。最后根据相关性token、支持性token以及有用性token来对并行输出的结果进行选择。值得注意的有两点:首先,作者采用了beam search方法在每个步中维护多个生成结果,其次,根据三种token可以实现灵活的响应选择方式,例如可以使用硬性阈值筛选掉相关性token为False的内容,也可以使用软约束,根据有用性token进行排名,留下最有用的响应。
训练
训练阶段需要提及的有三点:数据、生成模型M以及评判模型C。
对于数据。作者使用GPT-4生成反思tokens,数量为4k-20k不等,然后使用这些数据将知识蒸馏进评判模型C之中。
对于评判模型C。使用跟生成模型M相同基座模型的LM进行初始化,然后使用上述数据进行训练,得到可以输出反思tokens的模型。
对于生成模型M。在训练语料中使用评判模型插入反思标记来更新训练语料,然后重新训练生成器模型M。
效果
实验结果如下图所示: