Re59:读论文 Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks

news2024/10/7 13:23:46

诸神缄默不语-个人CSDN博文目录
诸神缄默不语的论文阅读笔记和分类

论文名称:Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks
模型开源地址:https://huggingface.co/facebook/rag-token-nq

ArXiv下载地址:https://arxiv.org/abs/2005.11401

本文是2020年NeurIPS论文,属于RAG+LLM领域。作者来自Facebook

本文的研究背景也是说直接用LM存储的知识不够,且难以扩展和修正,有幻觉,还是得上检索(提供决策出处,可以更新知识)。
LM是预训练的seq2seq模型(BART),知识库是维基百科的稠密向量索引(用预训练的神经网络实现检索 Dense Passage Retriever (DPR))。要么一次检索一波(per-output basis),要么一个token检索一波(per-token basis)(这个见模型部分)。

其实看起来就是REALM的拓展版,将检索文档改成视为隐变量,然后拓展了下游任务,而且是全链路端到端的训练。
比REALM迟,参考文献里就有REALM。但是不用代价高昂的“salient span masking” pre-training

总之整个工作还是做得很全面的,实验充分,真羡慕啊。

在这里插入图片描述

文章目录

  • 1. related work
  • 2. 模型
  • 3. 实验

1. related work

non-parametric memory除检索外的形式:
memory networks
stack-augmented networks
memory layers

RAG知识量大而且不需要额外训练

knowledge-intensive tasks:人们认为没有额外知识就没法做的任务,比如常识题(什么行测)

2. 模型

端到端训练:将检索到的文档视为隐变量

RAG-Sequence:对每一篇检索文档都预测完整的生成结果,加总
在这里插入图片描述

RAG-Token:每一个token都是大家的机会,每个token上重新检索一次
在这里插入图片描述

检索器DPR
在这里插入图片描述
top k:Maximum Inner Product Search (MIPS)问题 ← FAISS

生成器BART
(在实验中只更新query encoder和生成器)

训练时没有检索文档的标注信息。

解码:

  1. RAG-Token:标准生成任务
    在这里插入图片描述
  2. RAG-Sequence:Thorough Decoding + Fast Decoding(没看懂其实,以后再看)

3. 实验

Jeopardy Question Generation指标这里用了一个Q-BLEU,以前我还真没见过

在这里插入图片描述

还有一条是生成能获得原文中没有的结果

在这里插入图片描述
在生成方面还有一些别的优势,略。

在这里插入图片描述

在这里插入图片描述

RAG-Token的后验概率可视化:
在这里插入图片描述
这里面这个太阳照常升起和永别了武器都是在开头概率高了点,后面就平了,论文里提及认为这里时因为模型内置信息能够自己填完了,还做了个小实验。

生成的多样性:
在这里插入图片描述

冻结检索器的消融实验:
在这里插入图片描述

更新知识的实验

检索文档数(K)的影响:
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

高校刮起元宇宙风!3DCAT实时云渲染助力川轻化元校园建设

元宇宙,是一个虚拟的网络世界,它与现实世界相互连接,为人们提供了一个身临其境的数字体验。元宇宙的概念并不新鲜,早在上个世纪就有科幻作家和电影导演对它进行了想象和创造。但是,随着科技的发展,特别是5G…

iic应用篇

一.iic的优点 1. IIC总线物理链路简单,硬件实现方便,扩展性非常好(1个主机控制器可以根据需求增加从机数量,同时删减从机数量也不会影响总线通信);IIC总线只需要SDA和SCL两条信号线,相比于PCI/…

python和pygame实现烟花特效

python和pygame实现烟花特效 新年来临之际,来一个欢庆新年烟花祝贺,需要安装使用第三方库pygame,关于Python中pygame游戏模块的安装使用可见 https://blog.csdn.net/cnds123/article/details/119514520 效果图及源码 先看效果图&#xff1a…

c#异常强大的统计运行时间功能,一行代码,监控 C# 方法执行耗时

MethodTimer.Fody MethodTimer.Fody 是一个功能强大的库,可以用于测量 .NET 应用程序中的方法的执行时间。 它使用 Fody 插件框架可以无缝集成到您的项目中,所以向代码中添加性能测量功能变得非常容易。 如何使用 首先,需要安装 Nuget 包&am…

程序员必备的十种排序算法

欢迎关注博主 Mindtechnist 或加入【智能科技社区】一起学习和分享Linux、C、C、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和技术。关…

MS913/914 25-100MHz 10/12 位用于平面显示器链路Ⅲ的具有直流平衡编码和双向控制通道的串化器和解串器

MS913/MS914 芯片组是 25MHz~100MHz 10 位/12 位 FPD Link III SER/DES(串化器/解串器),它提供高速 FPD-Link III 接口和高速正向通路以及用于差分对上数据发送的双向 控制通路。广泛应用于车载摄像,医疗设备,管道探测等领 域。 主要特点…

改进的A*算法的路径规划(2)

子节点优化选择策略 (1)子节点选择方式 为了找到从起始点到终点的路径,需定义一种可以选择后续节点的方式。在 A*算法中两种常见的方法为4-邻接(见图5-7(a) 和8-邻接(见图5-7(b)), 但考虑到 在复杂越野环境上,我们希望智能车辆允许更多的自由运动来更…

20231210原始编译NanoPC-T4(RK3399)开发板的Android10的SDK

20231210原始编译NanoPC-T4(RK3399)开发板的Android10的SDK 2023/12/10 17:27 rootrootrootroot-X99-Turbo:~$ rootrootrootroot-X99-Turbo:~$ mkdir nanopc-t4 rootrootrootroot-X99-Turbo:~$ rootrootrootroot-X99-Turbo:~$ rootrootrootroot-X99-Turbo:~$ cd nanopc-t4/ …

企业U盘防泄密的必备秘籍!迅软DSE答疑解析一切你需要知道的!

关于U盘防泄密: U盘是企事业单位办公时经常需要用到的存储介质,而一旦U盘不慎丢失或是落入他人手中,都会面临U盘内数据泄密的情况发生。 因此,企事业单位可通过天锐绿盾安全U盘系统对公司重要数据进行U盘防泄密保护,确…

二分查找|双指针:LeetCode:2398.预算内的最多机器人数目

作者推荐 【动态规划】【广度优先】LeetCode2258:逃离火灾 本文涉及的基础知识点 二分查找算法合集 滑动窗口 单调队列:计算最大值时,如果前面的数小,则必定被淘汰,前面的数早出队。 题目 你有 n 个机器人,给你两…

【CANoe】CANoe手动发送XCP报文读取观测量

文章目录 1、硬件连接:配置CANoe的CAN端口,连接到ECU标定对应的CAN口2、配置CAN IG模块报文:连接XCP,读取观测量,断开XCP3、报文解析4、参考资料 1、硬件连接:配置CANoe的CAN端口,连接到ECU标定…

LeetCode:1631. 最小体力消耗路径(SPFA Java)

目录 1631. 最小体力消耗路径 题目描述: 实现代码与解析: BFSDP 原理思路: 1631. 最小体力消耗路径 题目描述: 你准备参加一场远足活动。给你一个二维 rows x columns 的地图 heights ,其中 heights[row][col] 表…

掌握Selenium中元素缓存技巧,提高测试效率!

一、前言 / INTRODUCTION 本篇文章我们再来看下如何在Selenium中使用缓存 页面对象模型是UI自动化测试中的一种很好的设计模式,我们使用FindBy和FindAll注释来标记Page Object中的WebElement。 本次要讲的CacheLookup是一个非常重要但被忽视的注释,它可…

【UE5.2】通过Water插件使物体漂浮在水面上

效果 步骤 1. 新建一个工程,创建一个Basic关卡,添加初学者内容包到内容浏览器 2. 在插件中启用“Water”插件,然后重启工程 3. 重启后提示“碰撞描述文件设置不包括水体碰撞描述文件的条目,水碰撞必须使用该描述文件才能正常工作…

Node后端框架Express与Koa接口统一响应封装

背景 以前在写 SpringBoot 全栈开发的系列文章中全栈开发之后端脚手架:SpringBoot集成MybatisPlus代码生成,分页,雪花算法,统一响应,异常拦截,Swagger3接口文档,有提到对后端接口的响应数据进行…

flink找不到隐式项

增加 import org.apache.flink.streaming.api.scala._ 即可

逆向思考 C. Fence Painting

Problem - 1481C - Codeforces 思路:逆序考虑,因为每一块木板都是被最后一次粉刷所决定的。 从后往前开始,对于 c i c_i ci​来说, 如果这个颜色还有没有涂的木板,那么涂到其中一个木板即可如果这个颜色下没有未涂的…

2024最新软件测试八股文,能不能拿心仪Offer就看你背得怎样了

前言 鉴于目前测试就业越来越严峻,内卷也成了测试领域的代名词了。我的一个HR朋友告诉我,由于门槛较低,现在普通测试岗(偏功能)的投递比已经将近100,也就是一个岗位差不多有百分简历投进来。 所以现在还想…

云原生之深入解析OOM和CPU节流

一、前言 使用 Kubernetes 时,内存不足 (OOM) 错误和 CPU 节流是云应用程序中资源处理的主要难题,这是为什么呢?云应用程序中的 CPU 和内存要求变得越来越重要,因为它们与云成本直接相关。通过 limits 和 requests ,可…

表单参数绑定(如何解决一个输入框绑定两个参数)

表单参数绑定(如何解决一个输入框绑定两个参数) 问题复现 <el-form-item label"会议编号" prop"meetingNum"><el-select v-model"form.meetingNum" placeholder"请选择会议编号" style"width: 100%;":disabled&quo…