当前位置: 首页 > article >正文

哈工大:屏蔽LLM检索头训练忠实性

在这里插入图片描述

📖标题:Improving Contextual Faithfulness of Large Language Models via Retrieval Heads-Induced Optimization
🌐来源:arXiv, 2501.13573

🌟摘要

🔸确保检索增强的大型语言模型(LLM)中的上下文忠实性对于构建值得信赖的信息搜索系统至关重要,特别是在长形式问答(LFQA)场景中。在这项工作中,我们发现了LFQA忠实性和检索头之间的显著相关性,检索头是一组负责检索上下文信息的注意力头。
🔸利用这一见解,我们提出了RHIO,这是一个旨在教导LLM明确区分忠诚和不忠世代的框架。RHIO首先通过选择性地屏蔽检索头来增强模拟真实模型固有误差的不忠实样本。然后,将这些样本合并到联合训练中,使模型能够区分不忠实的输出和以控制令牌为条件的忠实输出。此外,这些控制标记被用来自我诱导对比输出,通过对比解码放大它们的差异。
🔸此外,为了便于评估上下文忠实性,我们还引入了GroundBench,这是一个由五个现有LFQA数据集汇编而成的综合基准。在GroundBench上的大量实验结果表明,RHIO显著提高了保真度,甚至优于GPT-4o。

🛎️文章简介

🔸研究问题:大语言模型(LLM)在长形式问答(LFQA)任务中存在上下文忠实性问题,即模型生成的回答与提供的上下文信息不一致。
🔸主要贡献:论文提出了一个名为RHIO的框架,通过引入检索头诱导的优化方法,显式教导模型区分忠实和不忠实的输出,显著提高了LLM在LFQA任务中的上下文忠实性。

📝重点思路

🔸任务定义:论文首先定义了LFQA任务,即在给定问题和一组文档的情况下,模型需要生成一个段落长度的回答。
🔸检索头研究:论文通过初步研究发现,检索头(retrieval heads)在确保上下文忠实性中起关键作用。通过屏蔽检索头,模型生成的回答会出现与真实不忠实回答相似的错误模式。
🔸不忠实数据增强:基于上述发现,论文提出通过屏蔽检索头来生成更多样化和真实的不忠实样本,用于训练模型。
🔸RHIO框架:RHIO框架引入了两个特殊的控制标记,用于指示生成忠实或不忠实的回答。通过对比解码(contrastive decoding)进一步放大忠实和不忠实回答之间的差异。
🔸实验设置:论文在多个LFQA数据集上进行了广泛的实验,使用Llama-2系列模型作为基础模型,并通过自动指标和人工评估来衡量模型的忠实性。

🔎分析总结

🔸检索头的重要性:实验表明,屏蔽检索头会显著降低模型的忠实性,而屏蔽非检索头则没有显著影响。
🔸RHIO的有效性:RHIO在多个数据集上显著提高了模型的忠实性,平均提升了12.84%(7B模型)和12.59%(13B模型),甚至超过了最先进的GPT-4o。
🔸不忠实样本的作用:通过使用不忠实样本进行训练,模型能够更好地学习区分忠实和不忠实的输出,从而提高了忠实性。
🔸对比解码的效果:对比解码进一步提升了模型的忠实性,特别是在7B和13B模型上分别提升了2.90%和4.17%。
🔸模型大小的影响:实验还发现,随着模型大小的减小,模型的忠实性显著下降,表明较小的模型在保持上下文忠实性方面面临更大的挑战。

💡个人观点

论文的核心是通过屏蔽检索头来构造不忠实的负样本,通过对比解码进行训练。

🧩附录

在这里插入图片描述


http://www.kler.cn/a/526901.html

相关文章:

  • 「 机器人 」利用冲程对称性调节实现仿生飞行器姿态与方向控制
  • 【漫话机器学习系列】068.网格搜索(GridSearch)
  • 新版231普通阿里滑块 自动化和逆向实现 分析
  • Kafka 消费端反复 Rebalance: `Attempt to heartbeat failed since group is rebalancing`
  • Kubernetes 环境中的自动化运维实战指南
  • 登录授权流程
  • 158页精品PPT | 机械行业数字化生产供应链产品解决方案
  • 讯飞星火大模型API使用Python调用
  • 深入理解MySQL 的 索引
  • java的Stream流
  • Redis入门概述
  • 嵌入式知识点总结 Linux驱动 (七)-Linux驱动常用函数 uboot命令 bootcmd bootargs get_part env_get
  • 计算机图形学 通过叉乘判断一个点是否在三角形内
  • Java进阶six junit单元测试,反射,注解,动态代理
  • OVS-DPDK
  • 具身智能体空间感知基础!ROBOSPATIAL:评测并增强2D和3D视觉语言模型空间理解水平
  • 低代码产品表单渲染架构
  • 【计算机网络】设备更换地区后无法访问云服务器问题
  • 【华为OD-E卷 - 数组二叉树 100分(python、java、c++、js、c)】
  • Mybatis框架中的foreach标签解析
  • 【4Day创客实践入门教程】Day2 探秘微控制器——单片机与MicroPython初步
  • SQL进阶实战技巧:如何分析浏览到下单各步骤转化率及流失用户数?
  • 【C++语言】卡码网语言基础课系列----7. 摆平积木
  • Learning Vue 读书笔记 Chapter 4
  • DDD - 领域事件_解耦微服务的关键
  • char和varchar的区别、varchar(?)中问号部分的含义、索引的作用