【论文阅读 | LLM幻觉】A Comprehensive Survey of Hallucination Mitigation Techniques in Large Language Models

一篇关于语言大模型幻觉修正的综述,稍微整理一下笔记,结构和原文章是相同的,可以对应着看。
原文链接:https://arxiv.org/pdf/2401.01313

1. Introduction

LLM在训练时会使用大量的文本数据,导致LLM容易在数据的偏差中推断信息,误解模糊的prompt,或修改信息使其表面上与输入保持一致。

幻觉 (hallucinate) 是指LLM生成看似真是但缺乏根据的内容。幻觉修正即解决LLM生成任务中的现实错误、细节捏造等问题。
LLM中幻觉缓解技术的分类
图为LLM中幻觉缓解技术的分类

2. 幻觉缓解 Hallucination Mitigation

首要任务是幻觉检测。文中提到三篇文章,Qiu et al., 2023b 介绍mFACT将之前识别幻觉的方法向多语言、多模态扩展;Zhang et al., 2023b 提出了一种基于上下文信息的幻觉检测框架; Mündler et al., 2023 探讨了自我矛盾作为一个促成幻觉因果关系因素。

2.1 Prompt Engineering

2.1.1 RAG 检索增强生成

即引入外部知识库检索用于增强LLM的生成任务。

1. Before generation

即在生成之前检索。

  • 检索:从外部知识库中检索
  • 生成:将检索结果和用户问题一起输入到生成模型,生成回答
  1. LLM-Augmenter
    原文链接:Peng et al., 2023
    通过PnP(即插即用,无需训练,立即使用)实现。具体步骤:
    用户查询 —> 从外部知识库检索 —> 推理、生成证据链 —> 生成综合prompt —> 生成候选响应 —> 通过效用函数评估、自动验证、反馈并优化
    在这里插入图片描述

  2. FreshPrompt
    原文链接: Vu et al., 2023
    旨在优化LLM静态性质,强调快速变化的知识场景
    FreshQA:用于衡量幻觉的Benchmark,评估LLM在当前世界知识和错误问题上的表现
    FreshPrompt:利用搜索引擎将最新信息整合到prompt中的快速prompt方法
    在这里插入图片描述

2. During generation

主句只是检索,生成每个句子的同时检索。(可以理解为“一边检索一边生成”)
根据当前生成语境调整检索要求,没生成一句话都可以融入新知识

  1. Knowledge Retrieval 知识检索
    原文链接:Varshney et al., 2023
    logit输出分析+外部知识验证
    幻觉检测:在生成过程中跟踪模型的logits输出值,即预测词的概率或置信度打分(置信度低表明可能正在输出幻觉)。但logits知识幻觉检测的辅助工具,因为一些模型不提供logits输出。
    验证:将生成内容与外部知识库对比,验证真实性
    幻觉缓解:删除或替换幻觉部分
    如果模型在早期产生幻觉,则后续更可能生成幻觉,故这种方法通过在生成过程中检索可以降低累积错误
    在这里插入图片描述

  2. D&Q 分解和查询框架
    原文链接:Cao et al.,2023
    分解:把复杂问题分解成多个子问题
    查询:针对每个子问题查询外部知识库,对于不确定的结果可以回溯重新搜索
    在训练阶段,不调用工具进行监督微调;在预测阶段,调用外部工具实时查询、推理。
    在这里插入图片描述

  3. EVER 实时验证和纠正
    原文链接:Kang et al., 2023
    实时、逐步处理
    内部幻觉:基于内部知识的幻觉
    外部幻觉:在RAG中错误引用外部知识造成的幻觉
    生成阶段 —> 验证阶段 —> 修正阶段
    在这里插入图片描述

3. After generation

即在生成之后检索。

  1. RARR 使用研究和修正改进归隐
    原文链接:Gao et al., 2023
    模型无关,可用于任何文本生成模型,旨在解决LLM输出的可追溯性、可靠性
    研究 Research:从外部知识库检索,提取证据、检验生成内容
    修正 Revision:根据检索到的证据,对生成文本进行后期编辑
    在这里插入图片描述

  2. 高熵词的检测和替换
    原文链接:Rawte et al., 2023
    使用开源模型检测和替换高熵词
    高熵词,即信息不确定性较高或缺乏明确支持的内容,容易导致幻觉。
    高熵词检测:由于许多LLM闭源,仅通过API访问,故难以直接检测或控制输出的熵水平。此处使用开源模型计算每个词的熵值。
    高熵词替换:使用另一个模型,整体掩码处理生成高熵词位置的替换词。

4. End-to-End RAG

原文链接:Lewis et al., 2021
检索阶段 - DPG:检索与输入查询语义相关的文档。具体来讲,将查询和文档编码为向量,通过余弦相似度等方法直接计算相似度类匹配文档和检索。
生成阶段 - Seq2Seq:将输入查询和检索文档联合编码,再生成。

在这里插入图片描述

2.1.2 通过反馈和推理的自我强化

根据反馈、推理进行多次迭代。

  1. Prompting GPT-3 To Be Reliable
    原文链接:Si et al., 2022
    可靠性:泛化能力(处理多种任务和领域的输入的能力,使LLM可以不过度依赖训练数据分布)、社会偏见(希望LLM可以有更公平的回答,包含更少社会中的性别歧视、种族歧视等因素)、校准能力、事实性

在这里插入图片描述

  1. ChatPrompt
    原文链接:Mündler et al., 2023
    重点解决LLM在生成文本过程中出现的自相矛盾,即模型在相同上下文中生成两句逻辑上不一致的句子,这会降低生成内容的可靠性和可信度。
    该研究提出了一个针对自相矛盾问题的三步推理流程,适用于黑盒LLM,不依赖外部知识库支持,具体流程如下:
    识别潜在的矛盾:使用特定提示引导模型生成文本,同时监测输出中可能存在的逻辑矛盾或不一致性。
    检测矛盾:通过进一步的提示或分析,明确判断模型生成的句子是否存在逻辑冲突。
    缓解矛盾:采用基于提示的纠正策略,指导模型修正或重构存在矛盾的句子,以确保逻辑一致性。
    在这里插入图片描述

  2. Self-Reflection Methodology
    原文链接:Ji et al., 2023b
    重点在于医疗问答系统中使用LLMs时出现的幻觉现象。
    该研究提出了一种交互式自反思方法论,结合知识获取与答案生成,通过 迭代反馈的“生成-评分-改进” 过程持续优化模型输出的事实性、一致性和蕴含性。具体步骤如下:
    生成初始答案:基于给定的输入和背景知识
    自我反思和评分:模型对自身答案进行评估没通过检查事实一致性和合理性识别潜在问题
    改进答案:根据评估反馈,模型修正错误或不准确的部分,生成更精确的答案
    循环优化:该过程持续迭代,直到输出答案满足要求

  3. Structured Comparative 结构化比较推理
    原文链接:Yan et al., 2023
    重点在于解决LLMs在文本偏好预测任务中推理不一致的问题。
    首先提出多个比较维度(如清晰度、相关性、简洁性等),将复杂任务分解为多个具体方面进行分析。然后在每个维度下生成结构化的文本比较,使用成对一致性比较器,确保各维度的比较结果能够明显区分不同文本,减少不一致性和幻觉现象。基于所有维度的比较结果,给出最终的文本偏好预测。
    在这里插入图片描述

  4. Mind’s Mirror
    原文链接:Liu et al., 2023
    虽然思维链(CoT)蒸馏方法显示出将LLM缩减为小语言模型(SLM)的前景,但存在将错误推理和幻觉一并迁移的风险。该研究提出的解决这一问题的方法旨在训练 SLMs 拥有自我评估能力,使其能够识别并纠正幻觉和不可靠的推理,包括两个部分:
    自我评估能力蒸馏:将 LLMs 内在的自我评估能力蒸馏到 SLMs 中,旨在缓解错误推理和幻觉带来的不良影响,从而提高模型的可靠性。
    综合蒸馏过程:该融合了多个不同的链式思维 (CoT) 和自我评估范式,确保知识全面迁移到 SLMs 中。这种多维度的蒸馏方式强化了知识传递的深度和广度。
    在这里插入图片描述

  5. DRESS
    原文链接:Chen et al., 2023
    DRESS是一种基于自然语言反馈 (NLF) 的方法,用于提升大型视觉语言模型 (LVLMs) 与人类偏好及交互能力的对齐效果。
    自然语言反馈:主要包含批评和改进两种形式的反馈,用于指导模型调整输出,使其更符合人类期望。
    条件强化学习:将传统强化学习推广为能够有效整合不可微的自然语言反馈,使模型通过训练学习在接受 NLF 的条件下生成相应的改进响应。
    在这里插入图片描述

  6. MixAlign
    原文链接:Zhang et al., 2023b
    该框架重点在于解决知识对齐问题,旨在确保用户查询和存储信息之间的对齐更加准确和一致。
    双向交互机制:MixAlign 同时与用户和知识库进行交互,明确用户问题与存储信息的关系。
    自动知识对齐:利用语言模型自动分析用户输入和知识库内容,确保知识对齐过程的准确性。
    用户辅助知识对齐:在不确定或证据不明确的情况下,MixAlign会生成问题向用户请求进一步的信息。
    在这里插入图片描述

  7. CoVe
    原文链接:Dhuliawala et al., 2023
    通过引入验证机制来提高模型输出的准确性和可靠性。
    生成初试答案:根据用户问题生成一个初步的回答。
    规划验证问题:生成一些验证性问题用于对初步回答进行事实核查。
    独立回答验证问题:模型单独回答这些验证性问题,确保回答过程独立于初步回答,从而保证验证性回答没有偏见。
    生成最终验证结果:基于验证过程的反馈,模型对初步回答进行修正,生成最终经过验证的答案。
    在这里插入图片描述

  8. CoNLI
    原文链接:Lei et al., 2023
    针对缺乏验证的幻觉问题,该研究提出一种即插即用的分层框架,利用自然语言推理链 (CoNLI) 检测和缓解幻觉现象,而无需模型微调或领域特定的提示词。
    幻觉检测:将幻觉检测任务设计为一系列自然语言推理 (NLI) 任务。模型通过逐层分析句子和实体级别的信息,判断哪些内容缺乏背景支持
    后期编辑:在检测到幻觉内容后,进行文本编辑以减少幻觉,同时提高文本质量。

在这里插入图片描述

2.1.3 Prompt Tuning

在微调阶段调整提供给预训练LLM的指令,使模型在特定任务中更有效。

Prompt Tuning与Prompt Engineering的区别在于,后者的prompt是手动设计得到的Hard Prompts,以自然语言形式存在;前者的prompt训练所得的Soft Prompt,需要通过反向传播优化嵌入,不可直接读取或编辑。

  1. UPRISE
    原文链接:Lester et al., 2021
    旨在通过训练一个轻量级且通用的提示检索器 (Retriever) 自动获取合适的提示,从而优化零样本任务的表现。
    在训练阶段,训练一个轻量级模型,能够根据输入任务需求从多样化的提示库中自动检索最相关的prompt模板。
    在推理阶段,针对未见任务类型,检索器根据任务描述选择最合适的提示,直接供语言模型使用。语言模型根据检索到的提示生成答案,从而提升零样本学习任务的表现。

在这里插入图片描述

  1. SynTra
    原文链接:Jones et al., 2023
    旨在通过使用合成任务 (Synthetic Task) 来有效减少摘要生成任务中的幻觉现象。
    合成任务训练:创建一个简单、控制性强的合成任务(即人工设计的任务),让模型先在这个任务上学习减少幻觉的能力。通过前缀调优 (Prefix-Tuning) 优化模型的系统提示 (System Message)。
    迁移学习应用:将模型在合成任务上学到的减少幻觉能力迁移到更复杂、真实的摘要生成任务中。避免直接在复杂任务上优化,从而提高训练效率和效果。
    在这里插入图片描述

3. Developing Models

一些正在开发的新型模型。

3.1 引入新的解码策略

解码decoding主要涉及模型的生成阶段,引导模型生成需要的输出内容。以下策略动过调整decoding过程减少幻觉的出现。

  1. CAD 上下文感知解码
    原文链接:Shi et al., 2023
    通过对比输出分布来处理模型,在模型有和没有上下文的情况下放大输出概率的差异,在上下文信息与模型的内在知识发生冲突时,CAD 强制模型优先参考上下文,而非依赖原有的错误或不相关知识。这种方法确保模型更倾向于依赖上下文信息,而不是固有的先验知识。

在这里插入图片描述

  1. DoLa 通过对比层进行解码
    原文链接:Chuang et al., 2023
    DoLa通过对比后层与前层的 logit 差异来决定下一个词的分布。
    在这里插入图片描述

  2. ITI 推理时干预
    原文链接:Li et al. 2023a
    通过在推理阶段调整模型的激活值,使得模型生成更符合真实情况的回答。
    具体来说,ITI先通过线性探测找到一组稀疏的、与真实性高度相关的注意力头。在生成回答时,ITI 通过自回归方式不断对模型的激活值进行干预,直到整个回答生成完成。每次生成一个新单词时,都会基于真实性的方向进行激活值调整。
    在这里插入图片描述

3.2 知识图谱

  1. RHO 基于知识图谱的对话生成框架
    原文链接:Ji et al., 2023a
    RHO 利用知识图谱中的关联实体和关系谓词的表示,处理对话生成中幻觉问题。
    在这里插入图片描述

  2. FLEEK
    原文链接: Bayat et al., 2023
    FLEEK提供了一个用户友好的界面,能够自动识别输入文本中可能需要验证的事实并生成问题,进而通过查询知识图谱和开放网络来收集证据,帮助验证每个事实。

在这里插入图片描述

3.3 引入基于真实性的损失函数

创建一个度量模型输出与输入数据或真实信息之间匹配程度的指标。

  1. THAM
    原文链接:Yoon et al., 2022
    本研究针对 Video-Grounded Dialogue,即基于视频内容生成与视频相关的对话或回答的任务。
    考虑到在生成回答时,模型可能会简单地复制输入文本,而没有真正理解问题的含义从而导致幻觉。为了缓解这一问题,THAM 引入了信息论正则化,用于衡量响应语言模型与幻觉语言模型之间的互信息,从特征层面减少幻觉效应。
    在这里插入图片描述

  2. 损失加权法
    原文链接:Qiu et al., 2023b
    mFACT 是一种新的度量标准,通过借用多个英语真实性度量标准,结合翻译的方法,将其迁移到其他非英语语言的生成任务中。
    根据每个训练样本的真实性评分,加权训练样本的损失。在训练过程中,依据样本的真实性得分来调整损失函数的权重,帮助模型更关注那些真实、准确的训练样本,减少对幻觉内容的生成。
    在这里插入图片描述

3.4 SFT 有监督微调

SFT是使用标记数据为下游任务对齐LLM,数据的质量直接决定了微调模型的性能。

  1. 知识注入和Teacher-Student方法
    原文链接:Elaraby et al., 2023
    HALOCHECK:一个轻量级的框架,利用句子级的推理来进行幻觉的量化测量,帮助检测模型输出中是否存在无根据的内容或不真实的推断。
    知识注入:通过微调将特定领域知识注入到小型 LLM 中,以提升其在特定领域的知识和推理能力,而不依赖于昂贵的强大模型的指令。
    Teacher-Student方法:通过强大的 LLM(教师模型)指导较弱模型(学生模型)来优化性能的技术。具体来说,教师模型会生成详细的问答或答案,学生模型学习如何生成更为准确和真实的输出。这种方法可以减少强大模型的频繁查询,降低计算成本。
    在这里插入图片描述

  2. HAR 幻觉增强回忆
    原文链接:Köksal et al., 2023
    归因:确保模型能够清晰地标明其输出信息的来源。
    HAR利用LLM的幻觉生成反事实数据集,用于训练模型,有助于模型更好地在实际任务中进行信息归因。(这些数据集并非依赖于真实的数据源,而是通过生成错误或虚假的内容来创建反事实情境)
    在这里插入图片描述

  3. 真实性微调
    原文链接:Tian et al., 2023
    基于偏好的学习:根据模型生成的结果和真实答案之间的偏好进行优化,进一步增强了模型对事实的关注。
    基于参考的真确性评估:通过与已知事实进行比较,检查生成内容的准确性。
    非参考的真确性评估:不依赖外部参考,只通过模型自身的推理能力来判断其生成内容的真实性。

在这里插入图片描述在这里插入图片描述

  1. BEINFO
    原文链接:Razumovskaia et al., 2023
    行为微调:根据实际对话中使用的知识源来对模型进行调整,使其生成的回复更加贴近事实,并减少偏离真实信息的内容。
    在微调过程中,模型被训练在一个包含真实知识源的庞大对话数据集上,同时这个数据集还扩展了来自大型知识库的随机事实,在实际对话中加入真实的知识源和额外的事实信息。

  2. R-Tuning
    原文链接: Zhang et al., 2023a
    旨在帮助模型识别不确定的问题并学习如何拒绝回答,并通过适当的训练数据调整其行为。
    R-Tuning测量LLM的参数化知识和用于训练的指导性调优数据之间的知识差距,从而识别不确定的问题。构建“拒绝意识”训练数据,具体来说将拒绝表达(如“我不确定这个问题的答案”)添加到这些不确定的问题上,帮助模型学会在合适的情况下拒绝回答问题。
    在这里插入图片描述

  3. TWEAK
    原文链接:Qiu et al., 2023a
    通过在解码过程中逐步对生成的序列进行验证,从而确保生成的内容更加符合输入事实。
    TWEAK微调解码过程,将每一步生成的序列及其未来的序列视为假设,并使用假设验证模型HVM根据生成的假设与输入事实之间的匹配度来评估每个候选序列的可信度,从而选出最符合事实的生成序列。
    新数据集FATE将输入事实与原始描述和反事实描述在单词级别对齐,帮助模型在生成过程中确保输出不仅符合事实,还能与不同的描述进行对比。
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值