仅用于站内搜索,没有排版格式,具体信息请跳转上方微信公众号内链接
大家好,我是Ai学习的老章
经常在外冲浪,看到很多优秀的技术文章,独享不如分享
我会使用DeepSeek-R1+科技类翻译大师prompt翻译出来,大家一起学习
如有翻译偏差,请大家指教。原文[ 1]
在大型语言模型中,幻觉通常指的是模型生成不忠实、虚构、不一致或无意义的内容。作为术语,幻觉已经被泛化到模型出错的情况。在这里,我想将幻觉问题限定在模型输出是虚构且未被提供的上下文或世界知识所支撑的情况。
幻觉有两种类型:
上下文幻觉:模型的输出应与上下文中的源内容保持一致。
外生幻觉:模型的输出应基于预训练数据集。然而,由于预训练数据集的规模庞大,每次生成时检索和识别冲突的成本太高。如果我们把预训练数据集视为世界知识的代理,我们实际上试图确保模型的输出是事实性的,并且可以通过外部世界知识进行验证。同样重要的是,当模型不知道某个事实时,它应该承认这一点。
本文主要讨论外生幻觉。为了避免幻觉,LLMs需要做到(1)事实性,(2)在适用时承认不知道答案。
给定一个标准的可部署的LLM需要经历预训练和微调以实现对齐和其他改进,让我们考虑这两个阶段的原因。
预训练数据集的体积非常庞大,因为它需要代表所有可用书面形式的世界知识。从公共互联网抓取的数据是最常见的选择,因此预期会出现过时、缺失或不正确的信息。由于模型可能会通过简单地最大化对数似然来错误地记住这些信息,我们预期模型会出错。
通过监督微调和RLHF[ 2]对预训练的LLM进行微调是一种常见的技术,用于提高模型如指令遵循等特定能力。在微调阶段引入新知识是不可避免的。
微调通常消耗的计算资源较少,这使得通过小规模微调使模型可靠地学习新知识变得值得商榷。Gekhmanetal. 2024[ 3]研究了在新知识上微调LLM是否会导致幻觉的问题。他们发现:(1)LLMs学习带有新知识的微调示例比学习与模型预存知识一致的其他示例要_更慢_;(2)一旦带有新知识的示例被最终学习,它们会增加模型产生幻觉的倾向。
闭卷问答示例的知识分类,基于模型输出正确答案的可能性。(图片来源:Gekhmanetal. 2024)
实验中的一些有趣观察,其中开发集准确率被视为幻觉的代理。
Unknown示例比Known示例拟合得慢得多。
The最佳开发性能是在LLM拟合大部分Known训练示例但仅拟合少数Unknown示例时获得的。当模型学习大部分Unknown示例时,它开始产生幻觉。
在Known示例中,MaybeKnown情况能获得更好的整体性能,比HighlyKnown情况更重要。
在对一半Known和一半`Unknown`示例进行微调时,随时间推移的训练和开发性能。`Unknown`示例学习得非常慢,最佳开发结果是在模型学习大部分[ 4]Known示例但仅学习少数`Unknown`示例时获得的。(图像来源:[5]Gekhmanetal. 2024[ 6])
这些来自Gekhmanetal.(2024)[7]的经验结果指出了使用监督微调来更新LLM知识的风险。
为了量化模型的幻觉,Lee等人(2022年)[8]引入了一个新的基准数据集,FactualityPrompt,该数据集包含事实性和非事实性的提示。该数据集使用维基百科文档或句子作为事实性定位的知识库。维基百科文档是从FEVER[ 9]数据集中已知的地面真相,句子是基于tf-idf或基于句子嵌入的相似度选择的。
FactualityPrompt基准的评估框架。(图片来源:Lee等人,2022年[ 10])
给定模型续写和配对的维基百科文本,考虑了两种幻觉评估指标:
幻觉NE(命名实体)错误:使用预训练的实体检测模型和文档级的语境,该指标衡量检测到的命名实体中有多少未出现在真实文档中的比例。
蕴含比率:使用在MNLI上微调并在句级知识语境下工作的RoBERTa模型,该指标计算生成的句子中有多少被蕴含模型标记为与配对的维基百科句子相关联的比例。
较低的NE错误和较高的蕴含比率表明更高的事实性,这两种指标都与人类注释相关。较大的模型在这项基准测试中表现更好。
FActScore(原子性分数中的事实精确度;Minetal. 2023[ 11])将长形式生成分解为多个原子事实,并分别与维基百科等知识库验证。然后我们可以测量每种模型生成中得到知识来源支持的句子的比例,FActScore是模型生成在一组提示下的平均精确度。该论文在人物传记生成任务中尝试了几种事实验证方法,并发现使用检索方法比无上下文的LLM更一致地更好。在检索增强方法中,最佳估计器取决于模型。
非上下文LLM:直接用TrueorFalse?提示LLM,不附加额外上下文。
检索→LLM:提示使用从知识源检索到的k篇相关段落作为上下文。
非参数概率(NP):通过掩码语言模型计算原子事实中令牌的平均likelihood,并使用该值进行预测。
检索→LLM+NP:两种方法的集成。
关于模型幻觉行为的一些有趣观察:
在传记生成任务中,稀有实体的错误率更高。
生成过程中提到的错误率在后面的事实更高。
使用检索来为模型生成提供依据显著有助于减少幻觉。
Weietal.(2024)[12]提出了一种用于检查LLMs长篇事实性的评估方法,名为SAFE(搜索增强事实性评估器;代码[ 13])。与FActScore相比,SAFE的主要区别在于,对于每个独立的事实,SAFE使用语言模型作为代理,通过多步过程迭代地发出Google搜索查询,并推理搜索结果是否支持或不支持该事实。在每一步中,代理根据给定的事实生成一个搜索查询,同时结合之前获得的搜索结果。经过若干步骤后,模型进行推理以确定该事实是否由搜索结果支持。根据实验结果,尽管SAFE方法的成本仅为人类注释者的1/20,其与人类的72%同意率和在分歧时的76%胜率仍优于人类。
SAFE在长文本LLM生成事实性评估中的概述。(图像来源:Wei等,2024[ 14])
SAFE评估指标是F1@K。动机在于,对于长形式的事实准确性,模型响应应当理想地同时达到精确度和召回率,因为响应应当既
事实性:通过精确度衡量,响应中被支持的事实所占百分比。
长:通过召回率衡量,响应中提供的事实所占相关事实的百分比。因此我们需要考虑支持的事实数量,最多到K。
给定模型响应y,指标F1@K定义为:
主流模型在LongFact-Objects从LongFact基准的250个随机提示下的长形式事实性性能,用F1@K衡量。(图像来源:Weietal. 2024)
FacTool(Chernetal. 2023[ 15])遵循标准的事实检查工作流程。它旨在检测各种任务中的事实错误,包括知识型问答、代码生成、数学问题求解(生成测试用例而不是断言)以及科学文献审查。
断言提取:通过提示LLM提取所有可验证的断言。
查询生成:将每条声明转换为适合外部工具(如搜索引擎查询、单元测试用例、代码片段和论文标题)的查询列表。
工具查询与证据收集:查询外部工具(如搜索引擎、代码解释器、Google学术)并获取结果。
一致性验证:根据外部工具提供的证据水平,为每条声明分配一个二元事实标签。
FacTool框架:在各种任务设置中评估事实性,包括知识型问答、代码生成、数学问题解决和科学文献审查。(图片来源:Chernetal. 2023[ 16])
SelfCheckGPT(Manakuletal. 2023[ 17])依赖于对多个黑盒LLM样本的事实错误进行一致性检查。由于灰盒事实检查测量需要访问LLM的token级logprob,SelfCheckGPT只需要不依赖外部知识库的样本,因此只需要黑盒访问,不需要外部知识库。
SelfCheckGPT概览。(图片来源:Manakuletal. 2023[ 18])
该方法使用不同的指标来衡量模型响应与其他随机模型样本之间的一致性,包括BERTScore、NLI、提示(是/否提问)等。在对GPT-3生成的WikiBio段落进行实验时,使用提示的SelfCheckGPT表现最佳。
提示模型生成无法回答或未知的问题可能会触发幻觉。TruthfulQA(Linetal. 2021[ 19])和SelfAware(Yinetal. 2023[ 20])是两个基准,用于衡量模型在这种情况下生成真实响应的能力,前者是通过对抗性构建来强调人类的错误,后者包含由于其性质无法回答的问题。面对这些问题时,模型应拒绝回答或提供相关信息。
测试问题在TruthfulQA[21](Linetal. 2021[ 22])中是根据人类的常见误解或错误对抗性构造的。基准测试包含817个问题,涵盖了38个主题,包括健康、法律、金融和政治。这里的答案被定义为真实,当且仅当它不包含任何虚假陈述,例如拒绝或无关的真实回答。在论文测试时,最佳的LLM准确率为58%,而人类可以达到94%。他们发现,更大的模型更不真实,这主要是由于常见的误解,但在其他标准(非对抗性)事实性基准测试中,并未显示出这种趋势。
GPT-3在TruthfulQA中的错误答案示例:
Yinetal.(2023)[23]研究了自我知识的概念,指的是语言模型是否知道自己知道什么或不知道什么。SelfAware包含1,032个无法回答的问题,分为五个类别,以及2,337个可回答的问题。无法回答的问题来源于带有人工注释的在线论坛,而可回答的问题则来源于SQuAD、HotpotQA和TriviaQA,基于与无法回答的问题在文本相似度上的匹配。一个问题可能因为多种原因无法回答,例如没有科学共识、对未来想象、完全主观、可能产生多种回答的哲学原因等。将可回答问题与无法回答问题作为二元分类任务进行区分,我们可以测量F1分数或准确率,实验结果显示,更大的模型在这项任务上表现更好。
不同大小的instruct-GPT系列模型(从左到右,从小到大)的准确率。在SelfAware评估中,更大的模型在可回答和无法回答问题的二元分类上表现更好。(图片来源:Yinetal. 2023[ 24])
另一种评估模型对未知知识意识的方法是测量模型的输出不确定性。当一个问题处于已知和未知之间时,模型应表现出适当的信心水平。
Kadavath等人(2022)的实验表明,LLMs在多种选择题中的答案正确性概率估计上表现得非常好校准(MMLU、TruthfulQA、QuALITY、LogiQA),这意味着预测的概率与该答案为真的频率一致。RLHF微调使模型表现得不够校准,但更高的采样温度会导致更好的校准结果。
(左)不同规模模型的校准曲线:较大模型更准确。(右)问题格式化对校准误差有影响。(图片来源:Kadavathetal. 2022[ 25])
Linetal.(2022)使用了[ 26]CalibratedMath套件的任务。_CalibratedMath_是一个程序生成的数学问题套件,根据不同难度级别(例如,取决于涉及的位数)来测试模型输出概率的准确性。对于每个问题,模型必须生成一个数字答案和对答案的信心水平。考虑了三种类型的概率:[27]
例如,用词或数字(如“最低”、“低”、“中等”、“高”、“最高”),例如\“信心:60%/中等\“。
答案词元的归一化logprob;请注意,这个在微调实验中没有使用。
间接\“True/False\“令牌在原始答案后的概率。他们的实验集中在校准在任务难度或内容分布变化时的一般化能力上。每个微调数据点是一个问题、模型的答案(可能是错误的)以及一个校准后的置信度。口头化的概率在两种情况下都能很好地泛化,而所有设置在乘除任务转移上表现良好。少量示例的性能弱于微调模型,关于模型如何预测置信度的能力较弱。增加更多示例会有所帮助,50-shot的表现几乎与微调版本一样好。
训练和评估的校准曲线。模型在加减任务上进行了微调,并在多答案(每个问题有多个正确答案)和乘除任务上进行了评估。(图像来源:Linetal. 2022[ 28])
Agrawaletal.(2023)[29]特别研究了LLM生成中虚构引用的情况,包括虚构的书籍、文章和论文标题。他们使用了两种基于一致性的方法来检查虚构,分别是直接查询和间接查询。这两种方法都会在T>0时多次运行检查并验证一致性。
直接查询和间接查询用于检查引用生成中的虚构情况。(图片来源:Agrawaletal. 2023[ 30])
_直接查询_要求模型判断生成的引用是否存在。间接查询则要求提供生成引用的辅助细节——例如作者是谁;例如,如果我们想检查\“Isthefollowingpaperreal?\“,我们可以检查\“Whoaretheauthorofthepaper?\“。假设是,多个生成结果同意虚构引用的作者的可能性比多个直接查询表明引用存在的响应的可能性要小。实验表明,间接查询方法更有效,而且更大的模型更具有能力和可以生成较少的虚构内容。
让我们回顾一下一些提高LLMs事实准确性的方法,包括从检索外部知识库、特殊采样方法到对齐微调。还有一些通过神经元编辑减少幻觉的可解释性方法,但这里我们不讨论这些。我可能会在另外一篇文章中专门讨论可解释性。
RAG(检索增强生成)[31]是一种非常常见的方法,用于提供grounding信息,即检索相关文档,然后在相关文档作为额外上下文的情况下生成内容。
研究阶段:查找相关文档作为证据。
(1)首先使用查询生成模型(通过少量示例提示,x→q1,…,qN)构建一组搜索查询q1,…,qN,以验证每个句子的所有方面。
(2)运行Google搜索,每个查询qi返回K=5个结果。
(3)利用预训练的查询-文档相关性模型分配相关性得分,并仅保留每个查询qi最相关的J=1个文档ei1,…,eiJ。
修订阶段:编辑输出以纠正未被证据支持的内容,同时尽可能保留原始内容。初始化修订后的文本y=x。
(1)对于每对(qi,eij),通过少量示例提示+CoT[ 33],(y,q,e)→0,1的一致性模型检查证据ei是否与当前修订后的文本y相矛盾。
(2)只有在检测到矛盾时,编辑模型(通过少量示例提示+CoT,(y,q,e)→newy)才会输出一个旨在与证据eij一致的新版本y,同时尽量最小化对y的修改。
(3)最终,只有有限数量的证据M=5进入了归因报告A。
RARR(基于研究和修订的归因)示例图。(图片来源:Gaoetal. 2022)
在评估修订后的文本y时,归因和保留度量都非常重要。
_归因_衡量了可以归因于A的y的部分,使用可追溯性得分(AttributabletoIdentifiedSources,AIS)进行衡量。我们可以收集人类注释或使用自然语言推理模型来近似自动AIS分数。
Preservation指的是y对x原始文本的保留程度,测量方式为Previntent×PrevLev,其中Previntent需要人工注释,PrevLev是基于字符级别的莱文斯坦编辑距离。RARR在保留指标方面相比两个基线模型能获得更好的平衡结果。
类似于RARR使用搜索+编辑,FAVA(“基于增强知识的事实性验证”;Mishraetal. 2024[ 34])也检索相关文档,然后编辑模型输出以避免幻觉错误。FAVA模型包括检索器Mret和编辑器Medit。
给定提示x和模型输出y,检索到最相关的文档:d=Mret(x,y)
编辑器生成增强输出:y^=Medit(x,y,d)
RARR不需要训练,但FAVA中的编辑模型Medit需要微调。按照更详细的幻觉错误分类学,我们可以通过在模型生成中插入随机错误来为Medit生成合成训练数据。每个示例是一个三元组(c,y,y∗),其中c是原始的维基百科段落作为黄金上下文,y是带有错误的LM输出,y∗是带有错误标签和正确编辑的输出。
FAVA中训练M_edit的合成数据生成。(图片来源:Mishraetal. 2024[ 35])
基于检索的重新思考(RR;Heetal. 2022[ 36])方法依赖于检索相关外部知识,但不需要额外的编辑。RR的检索不是基于搜索查询生成模型,而是基于分解的CoT提示。给定输入提示Q,RR使用CoT提示生成多个推理路径R1,…,RN,其中温度>0,每个Ri推理路径包含一个解释Ei(即推理部分)后跟一个预测Pi(即实际模型输出)。然后检索外部知识K1,…,KM来支持每个解释。然后我们根据检索知识K1,…,KM的匹配程度选择最忠实的答案P^。
知识检索:RR的实验使用稀疏检索BM25对抗维基百科,然后通过预训练的MPNet[ 37]模型提供的嵌入余弦相似度进行重新排序。
忠实度分数:每条推理路径的忠实度通过结合蕴含得分、矛盾得分和MPNet相似度来估计。蕴含得分和矛盾得分均由预训练的自然语言推理模型提供。[38]
Self-RAG(“自我反思增强生成”;Asaietal. 2024[ 43])通过训练一个语言模型端到端,使其能够输出任务输出和间歇性的特殊_反思标记_来学习自我反思。他们通过提示GPT-4创建了一个监督数据集,用于批评模型和生成模型,并通过蒸馏将其转化为内部模型以降低推理成本。
Self-RAG框架概述。在特殊标记的引导下,Self-RAG模型并行检索多份文档并批判自己的生成以提高质量。(图片来源:Asaietal. 2024[ 44])
给定输入提示x,生成的输出y由多个段落组成(例如,一个段落是一个句子)y=[y1,…,yT]。总共有四种反思标记,一种用于检索,三种用于批判:
Retrieve:决定是否并行运行检索以获取一组文档;输出值:{yes,no,continue}。
IsRel:输入提示x和检索到的文档d的相关性;输出值:{relevant,irrelevant}。
IsSup是否由d支持输出文本y;输出值:{fullysupported,partiallysupported,nosupport}。
IsUse:输出文本y对x是否有用;输出值:{5,4,3,2,1}。
Self-RAG一次生成yt的一段。给定x和先前生成的y<t,模型解码Retrieve标记:
如果Retrieve==no,直接生成yt;
如果Retrieve==yes,模型并行检索多个段落,并使用IsRel标记检查检索到的文档是否相关。如果相关,则生成yt,并使用其他批判性标记对多个输出进行评分、排序和选择最佳结果。
不依赖外部检索知识,我们可以设计一个过程,利用模型本身进行验证和修订以减少幻觉。
Dhuliawalaetal.(2023)[45]提出了一种名为链式验证(CoVe)的方法,基于一系列操作来规划和执行验证。CoVe包含四个核心步骤:
基线响应:模型生成一个初始草稿响应,称为“基线”。
计划验证:基于这个原始生成,模型设计非模板化的验证问题进行事实核查;可以通过少量示例提示(响应,验证问题)来实现。
执行验证:模型独立回答这些问题。有几种不同的设置方式,
(1)联合:与步骤2联合,其中少量示例结构化为(响应,验证问题,验证答案);缺点是原始响应在上下文中,因此模型可能会重复类似的幻觉。
(2)两步:将验证规划和执行步骤分开,例如原始响应不会影响
(3)因素化:每个验证问题分别作答。例如,如果长格式基生成结果产生了多个验证问题,我们会逐一回答每个问题。
(4)因素化+修订:在因素化验证执行之后增加一个“交叉检查”步骤,该步骤基于基线响应和验证问题及其答案进行条件判断,以检测不一致性。
最终输出:生成最终的、经过精炼的输出。如果在此步骤中发现不一致性,输出将被修订。
CoVe是这样设计的,因为使用长格式验证链生成可能会导致重复的幻觉,因为初始的幻觉响应仍然在上下文中,并且可以在新的生成过程中被关注到,而分别回答单个验证问题则比长格式生成效果更好。
Chain-of-验证(CoVe)方法的概述,分为四个关键步骤运行。(图片来源:Dhuliawala等,2023[ 46])
CoVe实验中有一些有趣的观察结果:
指令调优和CoT[ 47]不能减少幻觉。
分解和两步CoVe提高了性能,并且进一步的显式推理在不一致检测中也有帮助(“分解+修订”方法)。
简短形式的验证问题比长格式查询更准确地被回答。
自由格式的LLM生成验证问题比启发式方法(例如X是否回答了这个问题?)更好,需要开放生成的问题比是/否问题更有效。
RECITE(“Recitation-augmentedgeneration”;Sunetal. 2023[ 48])依赖于通过中间步骤复述来提高模型生成的事实正确性并减少幻觉。动机是利用Transformer的记忆作为信息检索机制。在RECITE的复述和回答方案中,LLM首先被要求复述相关信息,然后生成输出。具体而言,可以通过少量示例上下文提示来教会模型生成复述,然后基于复述生成答案。此外,它可以与自一致性集成结合使用,消耗多个样本,并扩展以支持多跳问答。
直接生成、RAG和RECITE的比较。(图片来源:Sunetal. 2023)
生成的朗读与基于BM25的检索模型相当,但两者在使用真实段落时都存在差距。根据他们的错误分析,大约7-10%的问题有正确的朗读但无法生成正确的答案,而大约12%的问题没有正确的朗读但仍然可以正确作答。
李等(2022年)[49]发现,在核采样(top-p采样)在[ 50]事实性提示基准测试中的表现不如贪婪采样,尽管它在多样性和减少重复方面表现更好,因为核采样增加了额外的随机性。因此,他们提出了事实性核采样算法,基于假设采样随机性在句子的后半部分对事实性造成的伤害比在开头更大。事实性核采样旨在_动态_调整每个句子采样标记时的概率p。对于某句中的第t个标记,我们有pt=max(ω,p⋅λt−1),其中ω是为了防止采样退化为贪婪采样,从而损害生成质量和多样性。[51]
事实性核采样在多样性和减少重复方面优于标准核采样,而幻觉错误则通过命名实体(NE)错误来衡量。(图片来源:[52]李等,2022年[ 53])
推理时干预(ITI;Lietal. 2023[ 54])研究了某些注意力头是否与事实性更相关,通过在每一层的激活上拟合线性探针来区分真实输出与虚假输出。他们发现,对于许多注意力头,探针的表现不如随机,而有些则表现出很强的性能。在识别出一组具有高线性探针准确率的稀疏注意力头后,推理时ITI将选定的前K个注意力头的激活沿着“真实”方向进行调整。
选定的注意力头如何朝着更真实的方向调整激活的示意图。(图片来源:Lietal. 2023[ 55])
Lee,etal.(2022)[56]提出了两种增强事实性的训练想法:
TopicPrefix被引入训练以更好地意识到事实:在文档中的每个句子前面附加主题(即维基百科文档标题)。
句子完成损失作为训练目标:更新训练损失以专注于句子的后半部分,他们假设句子的后半部分包含更多的事实知识。其实现非常简单,选择一个枢轴t,所有在第t个标记之前的标记都应用零掩码。在他们的实验中,最佳枢轴t被选为句子长度的0. 5倍。
Linetal.(2024)[57]提出了一种运行SFT+RLHF[ 58]对齐训练的方法,特别关注事实性,命名为FLAME(“事实性对齐”)。
SFT阶段(事实性感知的SFT):目标是生成比模型自身生成更为事实性的训练数据(通过FActScore测量)。
RLHF阶段(事实意识DPO):测试了两种方法,其中(1)表现得很差,而(2)效果还可以,这可能是因为(1)试图将新知识提炼到模型中而没有足够的训练。有证据表明,微调新知识可能会导致幻觉,而RAG的监督信息对LLM来说是未知的。[59]
(1)使用RAG数据样本作为正样本,原始模型生成作为负样本,作为RM数据。
(2)使用FActScore作为事实性的奖励信号。
Illustrationof(左)使用预训练的LLM和少量提示生成响应,以及(右)事实意识对齐训练流程。(图片来源:Linetal. 2024[ 60])
为了避免在对齐训练过程中意外地将未知知识注入模型,他们建议使用模型生成的响应来形成SFT/DPO数据集。
SFT和DPO运行在人物传记生成任务上的性能,包括和不包括事实意识设置的情况。帮助性通过模型在AlpacaEval上的胜率来衡量。请注意,RLHF会使事实性变差,因为人类反馈往往偏好更长、更详细的答案,但这些答案不一定更具有事实性。(图片来源:Linetal. 2024[ 61])
事实调优(Tian&Mitchelletal. 2024[ 62])也依赖于对语言模型进行微调以提高事实性。他们尝试了不同的方法来估计每个模型样本中的原子声明的真实性,并然后运行DPO。
事实估计过程示例图。(图片来源:Tian&Mitchelletal. 2024[ 63])
事实调优过程:
给定一组提示(例如:“写一写马友友的生平”)的模型完成样本对
根据两种无需人工参与的方法进行标注:
(a)将每个断言转换为相应的疑问句/需要仔细重新措辞以确保疑问句不产生歧义;使用少量示例提示;
(b)多次从模型中采样以回答该问题;
(c)计算聚合得分/使用字符串匹配或请GPT判断两个答案在语义上是否等价。
(a)提取一组原子声明;
(b)查找维基百科参考;
(c)使用微调的小型自然语言推理模型检查参考文本是否支持原子声明。
参考基线:检查外部知识库是否支持模型声明,类似于上述的检索基线幻觉评估[ 64]部分。
参考无:使用模型自身的置信度作为其真实性的代理,类似于间接查询的方法。
构建训练数据集,通过从模型生成多个样本并根据真实性评分分配偏好。然后使用DPO对该数据集进行微调。
基于FactScore的事实调优(FactTune-FS)在提高事实准确性方面取得了最佳改进,相比之下,基于预期置信度评分的事实调优(FactTune-EC)和其他基线方法效果较差。(图片来源:天&米切尔等,2024[ 65])
在生成搜索结果条件时,为模型输出分配归因是一种减少幻觉的好方法。有一条研究分支致力于训练LLMs更好地消费检索内容并分配高质量的归因。
WebGPT(Nakano,etal. 2022[ 66])将网络搜索用于文档检索与fine-tuned的GPT模型结合,旨在回答长格式问题以减少幻觉并实现更好的事实准确性。该模型通过基于文本的网络浏览器与互联网进行交互,并学习引用网页来回答问题。在浏览过程中,模型可以采取的一个行动是引用当前页面的摘录。当执行此操作时,_页面标题、域名和摘录_将被记录下来,稍后用作参考。WebGPT的核心在于使用参考信息来帮助人类判断事实的正确性。
模型首先在人类使用网络浏览环境回答问题的示范上进行监督微调,用于行为克隆。收集了两个模型生成的答案对同一个问题的比较数据,评估答案的_事实准确性、连贯性和整体实用性_。使用奖励模型进行RL训练和最佳n次采样。相比之下,仅使用RL带来的好处很小,而使用最佳n次采样时更是如此。
RL训练在BC(行为克隆)基线上的改进幅度很小,尤其是在使用了最佳选样拒绝采样时。(图片来源:Nakanoetal. 2022[ 67])
GopherCite(Menicketal. 2022[ 68])在使用搜索引擎创建支持材料和教学模型提供参考方面与WebGPT非常相似。两者都进行了监督微调以进行自我提升,并都应用了基于人类偏好的RL训练。但与WebGPT依赖人类演示进行行为克隆不同,GopherCite通过少量示例提示生成演示,并在每次生成时使用上下文填充相关文档,然后使用奖励模型评分以确定哪些是最好的。
演示生成过程及重排序的示意图。(图片来源:Menicketal. 2022)
为了避免生成低质量的回答,可以配置模型在达到全球阈值(RM阈值)时拒绝给出固定答案“我不知道”,这种方法称为选择性预测。
偏好与人工编写基准的比较。平局计为双方各得半分。(图片来源:Menicketal. 2022)
在强化学习(RL)上的实验证明与WebGPT类似,即在结合拒绝采样时,RL仅带来有限的改进或没有改进。
这里列出了本文中提到的一些数据集。
TruthfulQA[ 69](Linetal. 2021[ 70])旨在衡量LLM生成真实回答的能力。基准数据集包含817个问题,涵盖了38个主题,包括健康、法律、金融和政治。
FactualityPrompt[71](Lee,etal. 2022[ 72])是一个基准数据集,包含事实性和非事实性提示。它依赖于维基百科文档或句子作为事实性grounding的知识库。
SelfAware[73](Yinetal. 2023[ 74])包含了1032个无法回答的问题,分为五个类别,以及2337个可回答的问题。无法回答的问题来源于带有人工标注的在线论坛,而可回答的问题则来源于SQuAD、HotpotQA和TriviaQA,基于与无法回答的问题的文本相似性。
LongFact[75](Weietal. 2024[ 76])用于检查长文本生成的真实性。它包含2280个事实寻求提示,针对38个手工筛选的主题寻求长文本回答。
HaDes[77](Liuetal. 2021[ 78])是一个幻觉检测基准,作为二元分类任务。数据集通过扰动维基百科文本和人工标注创建。
FAVABench[80](Mishraetal. 2024[ 81])是一个用于评估细粒度幻觉的基准。共有200个信息查询源提示和每个提示3个模型响应,总共600个响应。每个模型响应都手动标注了幻觉错误类型的细粒度注释。
制作不易,如果这篇文章觉得对你有用,可否点个关注。给我个三连击:点赞、转发和在看。若可以再给我加个🌟,谢谢你看我的文章,我们下篇再见!
搭建完美的写作环境:工具篇(12章)图解机器学习-中文版(72张PNG)ChatGPT、大模型系列研究报告(50个PDF)108页PDF小册子:搭建机器学习开发环境及Python基础116页PDF小册子:机器学习中的概率论、统计学、线性代数史上最全!371张速查表,涵盖AI、ChatGPT、Python、R、深度学习、机器学习等
参考资料
原文:https ://lilianweng. github.io/posts/2024-07-07-hallucination/
Gekhmanetal. 2024:https ://arxiv. org/abs/2405. 05904
Known和一半Unknown示例进行微调时,随时间推移的训练和开发性能。Unknown示例学习得非常慢,最佳开发结果是在模型学习大部分:https ://arxiv. org/abs/2405. 05904
Known示例但仅学习少数Unknown示例时获得的。(图像来源::https ://arxiv. org/abs/2405. 05904
Gekhmanetal. 2024:https ://arxiv. org/abs/2405. 05904
Gekhmanetal.(2024):https ://arxiv. org/abs/2405. 05904
Lee等人(2022年):https ://arxiv. org/abs/2206. 04624
FEVER:https ://fever. ai/dataset/fever. html
Lee等人,2022年:https ://arxiv. org/abs/2206. 04624
Minetal. 2023:https ://arxiv. org/abs/2305. 14251
Weietal.(2024):https ://arxiv. org/abs/2403. 18802
代码:https ://github. com/google-deepmind/long-form-factuality/tree/main/eval/safe
Wei等,2024:https ://arxiv. org/abs/2403. 18802
Chernetal. 2023:https ://arxiv. org/abs/2307. 13528
Chernetal. 2023:https ://arxiv. org/abs/2307. 13528
Manakuletal. 2023:https ://arxiv. org/abs/2303. 08896
Manakuletal. 2023:https ://arxiv. org/abs/2303. 08896
Linetal. 2021:https ://arxiv. org/abs/2109. 07958
Yinetal. 2023:https ://arxiv. org/abs/2305. 18153
TruthfulQA:https ://github. com/sylinrl/TruthfulQA
Linetal. 2021:https ://arxiv. org/abs/2109. 07958
Yinetal.(2023):https ://arxiv. org/abs/2305. 18153
Yinetal. 2023:https ://arxiv. org/abs/2305. 18153
Kadavathetal. 2022:https ://arxiv. org/abs/2207. 05221
Linetal.(2022)使用了:https ://arxiv. org/abs/2205. 14334
CalibratedMath套件的任务。_CalibratedMath_是一个程序生成的数学问题套件,根据不同难度级别(例如,取决于涉及的位数)来测试模型输出概率的准确性。对于每个问题,模型必须生成一个数字答案和对答案的信心水平。考虑了三种类型的概率::https ://github. com/sylinrl/CalibratedMath
Linetal. 2022:https ://arxiv. org/abs/2205. 14334
Agrawaletal.(2023):https ://arxiv. org/abs/2305. 18248
Agrawaletal. 2023:https ://arxiv. org/abs/2305. 18248
RAG(检索增强生成):https ://lilianweng. github.io/posts/2020-10-29-odqa/#RAG
Gaoetal. 2022:https ://arxiv. org/abs/2210. 08726
CoT:https ://lilianweng. github.io/posts/2023-03-15-prompt-engineering/#chain-of-thought-cot
Mishraetal. 2024:https ://arxiv. org/abs/2401. 06855
Mishraetal. 2024:https ://arxiv. org/abs/2401. 06855
Heetal. 2022:https ://arxiv. org/abs/2301. 00303
MPNet:https ://arxiv. org/abs/2004. 09297
MPNet相似度来估计。蕴含得分和矛盾得分均由预训练的自然语言推理模型提供。:https ://arxiv. org/abs/2004. 09297
StrategyQA:https ://allenai. org/data/strategyqa
TempQuestions:https ://github. com/IBM/tempqa-wd
INFOTABS:https ://infotabs. github.io/
Heetal. 2022:https ://arxiv. org/abs/2301. 00303
Asaietal. 2024:https ://arxiv. org/abs/2310. 11511
Asaietal. 2024:https ://arxiv. org/abs/2310. 11511
Dhuliawalaetal.(2023):https ://arxiv. org/abs/2309. 11495
Dhuliawala等,2023:https ://arxiv. org/abs/2309. 11495
CoT:https ://lilianweng. github.io/posts/2023-03-15-prompt-engineering/#chain-of-thought-cot
Sunetal. 2023:https ://arxiv. org/abs/2210. 01296
李等(2022年):https ://arxiv. org/abs/2206. 04624
核采样(top-p采样)在:https ://lilianweng. github.io/posts/2021-01-02-controllable-text-generation/#nucleus
事实性提示基准测试中的表现不如贪婪采样,尽管它在多样性和减少重复方面表现更好,因为核采样增加了额外的随机性。因此,他们提出了事实性核采样算法,基于假设采样随机性在句子的后半部分对事实性造成的伤害比在开头更大。事实性核采样旨在_动态_调整每个句子采样标记时的概率p。对于某句中的第t个标记,我们有pt=max(ω,p⋅λt−1),其中ω是为了防止采样退化为贪婪采样,从而损害生成质量和多样性。:https ://github. com/nayeon7lee/FactualityPrompt
命名实体(NE)错误来衡量。(图片来源::https ://lilianweng. github.io/posts/2024-07-07-hallucination/#ne-error
李等,2022年:https ://arxiv. org/abs/2206. 04624
Lietal. 2023:https ://arxiv. org/abs/2306. 03341
Lietal. 2023:https ://arxiv. org/abs/2306. 03341
Lee,etal.(2022):https ://arxiv. org/abs/2206. 04624
Linetal.(2024):https ://arxiv. org/abs/2405. 01525
Linetal. 2024:https ://arxiv. org/abs/2405. 01525
Linetal. 2024:https ://arxiv. org/abs/2405. 01525
Tian&Mitchelletal. 2024:https ://arxiv. org/abs/2311. 08401
Tian&Mitchelletal. 2024:https ://arxiv. org/abs/2311. 08401
天&米切尔等,2024:https ://arxiv. org/abs/2311. 08401
Nakano,etal. 2022:https ://arxiv. org/abs/2112. 09332
Nakanoetal. 2022:https ://arxiv. org/abs/2112. 09332
Menicketal. 2022:https ://arxiv. org/abs/2203. 11147
TruthfulQA:https ://github. com/sylinrl/TruthfulQA
Linetal. 2021:https ://arxiv. org/abs/2109. 07958
FactualityPrompt:https ://github. com/nayeon7lee/FactualityPrompt
Lee,etal. 2022:https ://arxiv. org/abs/2206. 04624
SelfAware:https ://github. com/yinzhangyue/SelfAware
Yinetal. 2023:https ://arxiv. org/abs/2305. 18153
LongFact:https ://github. com/google-deepmind/long-form-factuality/tree/main/longfact
Weietal. 2024:https ://arxiv. org/abs/2403. 18802
HaDes:https ://github. com/microsoft/HaDes
Liuetal. 2021:https ://arxiv. org/abs/2104. 08704
FEVER:https ://fever. ai/dataset/fever. html
FAVABench:https ://huggingface. co/datasets/fava-uw/fava-data
Mishraetal. 2024:https ://arxiv. org/abs/2401. 06855