论文笔记:Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks

1. 挑战/问题(Challenges/Issues):

这篇论文探讨了大型预训练语言模型在处理知识密集型自然语言处理(NLP)任务时面临的挑战。尽管这些模型在参数中存储了大量事实知识,并在微调后能够在下游NLP任务中取得很好的效果,但它们在访问和精确操作知识方面的能力仍然有限。此外,为模型的决策提供出处(provenance)和更新它们的世界知识仍然是开放的研究问题。

2. 技术贡献(Technical Contribution):

论文提出了一种名为检索增强生成(Retrieval-Augmented Generation, RAG)的通用微调方法,用于结合预训练的参数化和非参数化记忆进行语言生成。具体来说,RAG模型将预训练的序列到序列(seq2seq)模型作为参数化记忆,并将维基百科的密集向量索引作为非参数化记忆,通过预训练的神经检索器进行访问。这种方法允许模型在生成语言时直接修订和扩展知识,并能够检查和解释访问的知识。

在这里插入图片描述

models

  1. RAG-Sequence Model: RAG-Sequence 模型使用相同的检索文档来生成完整的序列。从技术上讲,它将检索到的文档视为单个潜在变量,该变量被边缘化以通过 top-K 近似获得 seq2seq 概率 p(y|x)。具体来说,使用检索器检索前 K 个文档,生成器生成每个文档的输出序列概率,然后将其边缘化,
    在这里插入图片描述

  2. RAG-Token Model: 在 RAG-Token 模型中,可以为每个目标 token 绘制不同的潜在文档并相应地边缘化。这允许生成器在生成答案时从多个文档中选择内容。具体来说,使用检索器检索前 K 个文档,然后生成器为每个文档生成下一个输出标记的分布,然后进行边缘化,并使用以下输出标记重复该过程。

在这里插入图片描述

Retriever: DPR

在这里插入图片描述

作者把document index 称为 non-parametric memory

Generator: BART

使用 BART-large ,一个具有 400M 参数的预训练 seq2seq 转换器。为了在从 BART 生成时将输入 x 与检索到的内容 z 结合起来,只需将它们连接起来即可。 BART 使用降噪目标和各种不同的噪声函数进行了预训练。作者把bart generator 称为parametric memory

训练

联合retriever和generator,而无需直接监督应检索哪些文档。给定输入/输出对 (xj, yj) 的微调训练语料库,使用 Adam的随机梯度下降来最小化每个目标的负边际对数似然 Σ_j − log p(y_j|x_j)。在训练期间,更新文档编码器 BERT_d 的成本很高,作者认为这一步对于强大的性能来说不是必需的,因此保持文档编码器(和索引)fixed,仅微调查询编码器 BERT_q 和 BART generator。

Decoding

在测试时,RAG-Sequence 和 RAG-Token 需要不同的方法来近似 argmax_y p(y|x)

  1. RAG-Token:RAG-Token 模型可以看作是一个标准的自回归序列到序列生成器,其状态转移概率为:

在这里插入图片描述

在解码时,可以将 其插入到一个标准的束搜索(beam decoder)中进行推断。

  1. RAG-Sequence
    在这里插入图片描述

3. 评估/实验结果(Results of Evaluation/Experiments):

RAG模型在三个开放域问答任务上设定了新的最高标准,超过了仅参数化的seq2seq模型和特定任务的检索-提取架构。在语言生成任务中,RAG模型比最先进的仅参数化seq2seq基线生成了更具体、更多样化和更事实性的语言。此外,RAG模型在FEVER事实验证任务中取得了接近使用强大检索监督的最先进的管道模型的结果,并且展示了非参数化记忆可以根据世界的变化更新模型的知识。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/922523.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式硬件电子电路设计(六)LDO低压差线性稳压器全面详解

引言: LDO(Low Dropout Regulator,低压差线性稳压器)是一种常用的电源管理组件,用于提供稳定的输出电压,同时允许较小的输入电压与输出电压之间的差值。LDO广泛应用于各种电子设备中,特别是在对…

Spring:AOP面向切面案例讲解AOP核心概念

Spring的AOP,在不惊动(改动)原有设计(代码)的前提下,想给谁添加功能就给谁添加。这个也就是Spring的理念: 无入侵式/无侵入式 AOP中核心概念分别指的是什么? 连接点切入点通知通知类切面 下面以一个例子进行讲解,直接上代码&a…

禁止Chrome的自动升级

一、需求分析 因为用Chromeselenium做了网页自动化填写任务,如果Google Chrome浏览器自动升级,就会导致chromedriver加载失败,自动化任务失效,因此需要禁止Chrome浏览器的自动升级。 二、当前环境 三、实际配置 运行注册表编辑…

2024年wordpress、d-link等相关的多个cve漏洞poc

⚠️ 漏洞 ✅ CVE-2024-10914 在D-Link DNS-320、DNS-320LW、DNS-325和DNS-340L中发现的漏洞,版本直到20241028 GET /cgi-bin/account_mgr.cgi?cmdcgi_user_add&name%27;id;%27 HTTP/1.1✅ CVE-2024-11305 在Altenergy Power Control Software中发现的关键…

Spring框架特性及包下载(Java EE 学习笔记04)

1 Spring 5的新特性 Spring 5是Spring当前最新的版本,与历史版本对比,Spring 5对Spring核心框架进行了修订和更新,增加了很多新特性,如支持响应式编程等。 更新JDK基线 因为Spring 5代码库运行于JDK 8之上,所以Spri…

从搭建uni-app+vue3工程开始

技术栈 uni-app、vue3、typescript、vite、sass、uview-plus、pinia、axios 一、项目搭建 1、创建以 typescript 开发的工程 npx degit dcloudio/uni-preset-vue#vite-ts my-vue3-project2、安装sass npm install -D sass// 安装sass-loader,注意需要版本10&…

WPF中的登录界面

创建如下的目录结构&#xff1a; 2.在App.xaml.cs中设置为先登录验证之后再进入主页面 using Prism.Ioc; using System.Windows; using 校园访客系统.Views;namespace 校园访客系统 {/// <summary>/// Interaction logic for App.xaml/// </summary>public partia…

ros2学习日记_241124_ros相关链接

前言 提醒&#xff1a; 文章内容为方便作者自己后日复习与查阅而进行的书写与发布&#xff0c;其中引用内容都会使用链接表明出处&#xff08;如有侵权问题&#xff0c;请及时联系&#xff09;。 其中内容多为一次书写&#xff0c;缺少检查与订正&#xff0c;如有问题或其他拓展…

ETAS工具导入DBC生成Com协议栈

文章目录 前言DBC配置关键属性Cobra参数配置Cobra使用isolar工程配置总结前言 ETAS工具导入DBC主要也是生成arxml用的,ETAS推荐使用Cobra导入,本文介绍导入过程及注意事项 DBC配置关键属性 对于普通Com报文,配置为周期发送,及其周期,NmMessage配置为No,示例如下: 对…

Kafka 工作流程解析:从 Broker 工作原理、节点的服役、退役、副本的生成到数据存储与读写优化

Kafka&#xff1a;分布式消息系统的核心原理与安装部署-CSDN博客 自定义 Kafka 脚本 kf-use.sh 的解析与功能与应用示例-CSDN博客 Kafka 生产者全面解析&#xff1a;从基础原理到高级实践-CSDN博客 Kafka 生产者优化与数据处理经验-CSDN博客 Kafka 工作流程解析&#xff1a…

如果在docker 容器中安装ros遇到的问题

1.在容器内部无法修改时间&#xff0c;需要在宿主机外边修改时钟。修改时钟&#xff1a; hwclock --systohc或者执行 date -s "2024-11-24 19:25:10"2.容器内部内置有opencv4.5版本&#xff0c;需要卸载&#xff0c;重新安装4.2.0版本。记录折腾好久的卸载过程。 …

排序(Java数据结构)

1. 排序的概念及引用 1.1 排序的概念 排序&#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#xff0c;递增或递减的排列起来的操作。(所有的排序都是默认从小到大排序) 稳定性&#xff1a;假定在待排序的记录序列中&#xff…

AutoDL安装docker问题

在AutoDL上租了卡&#xff0c;安装docker遇到一些问题&#xff1a; 1.执行 sudo docker run hello-world 报错 docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 解决方法 先查看docker有没有启动&#xff0c;…

ArcGIS定义投影与投影的区别(数据和底图不套合的原因和解决办法)

今天介绍一下ArcGIS中定义投影与投影的区别。 给大家解惑一下为什么经常出现自己的数据无法和底图套合的情况。 一 目录 1、ArcGIS定义投影与投影的概念区别 2、ArcGIS定义正确的坐标系 3、ArcGIS动态投影实现套合 4、ArcGIS地理坐标系转投影坐标系&#xff08;错误做法&am…

ChatGPT 桌面版发布了,如何安装?

本章教程教大家如何进行安装。 一、下载安装包 官网地址地址&#xff1a;https://openai.com/chatgpt/desktop/ 支持Windows和MacOS操作系统 二、安装步骤 Windows用户下载之后&#xff0c;会有一个exe安装包&#xff0c;点击运行安装即可。 注意事项&#xff0c;如果Windows操…

鸿蒙开发——根据背景图片来构建特定颜色的蒙版

效果图如下(文字部分马赛克处理)&#xff1a; 最近突然发现网易云和QQ音乐这些图片上方的蒙版颜色不是固定的&#xff0c;而是跟着图片内容走的&#xff0c;想看看能不能在鸿蒙实现&#xff0c;最后凭借俺寻思之力寻思出了一套流程(有bug&#xff0c;有时候蒙版直接透明了&…

clipboard

clipboard 现代复制到剪贴板。无闪光。只有 3kb 的 gzip 压缩。 安装 npm install clipboard --save第三方cdn提供商 <script src"https://cdn.jsdelivr.net/npm/clipboard2.0.11/dist/clipboard.min.js"></script>使用 data-clipboard-target"…

Matlab深度学习(四)——AlexNet卷积神经网络

网络搭建参考&#xff1a;手撕 CNN 经典网络之 AlexNet&#xff08;理论篇&#xff09;-CSDN博客 在实际工程应用中&#xff0c;构建并训练一个大规模的卷积神经网络是比较复杂的&#xff0c;需要大量的数据以及高性能的硬件。如果通过训练好的典型网络稍加改进&#xf…

《Python基础》之循环结构

目录 简介 一、for循环 1、基本语法与作用 2、使用 range() 函数配合 for 循环 3、嵌套的for循环 二、while循环 1、基本语法与作用 2、while 循环嵌套 &#xff08;1&#xff09;、while循环与while循环嵌套 &#xff08;2&#xff09;、while循环与for循环嵌套 简介 …

深入探索JMeter bin目录中的Properties文件:优化性能测试的关键

引言 在现代软件开发中&#xff0c;性能测试是确保应用质量和用户体验的重要环节。Apache JMeter作为一款流行的开源性能测试工具&#xff0c;提供了丰富的功能来模拟各种用户行为和负载情况。本文将深入探讨JMeter中的Properties&#xff08;属性&#xff09;功能&#xff0c…