Re50:读论文 Large Language Models Struggle to Learn Long-Tail Knowledge

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

论文名称:Large Language Models Struggle to Learn Long-Tail Knowledge

ArXiv网址:https://arxiv.org/abs/2211.08411

官方GitHub项目(代码和实体):https://github.com/nkandpa2/long_tail_knowledge

本文是2023年ICML论文,主要关注LLM无法记忆长尾知识的问题。
检测方式是让LLM基于事实回答问题(4-shot closed-book QA evaluations),看准确率与预训练语料中问题相关文档数的关系。文档中包含问题里的实体对,就算相关文档。
增大模型确实能缓解长尾问题,但是要求规模指数级提升才能匹配数据集出现频率的一点点提升。还是用检索增强的方式比较好。但是检索系统的方法本身也需要有相关文档才行。

预训练语料(用于链接实体和找相关文档):ROOTS, The Pile, C4, OpenWebText, and Wikipedia
(话说本文提到没有研究跨语言知识。我感觉这一点也挺值得研究的)

QA数据集:Natural Questions & TriviaQA

模型:
Transformer decoder-only LMs:
GPT-Neo
BLOOM-176B BLOOM: A 176B-Parameter Open-Access Multilingual Language Model
GPT-3

文章目录

  • 1. 研究背景&核心观察结果
  • 2. 实验
    • 1. 实验设置
    • 2. 观察实验结果
    • 3. 解决方案

1. 研究背景&核心观察结果

LLM难以记忆长尾知识:
在这里插入图片描述

(相关文档数量指数分箱,取QA准确率平均值)

2. 实验

1. 实验设置

1. 找相关文档:
事实QA数据集→从预训练文档里找出相关文档(如果问答对中的两个实体都出现,就算相关文档)

在这里插入图片描述

实体链接工具:DBpedia Spotlight Entity Linker1

2. QA:
在这里插入图片描述
其他示例样本数得到的结果差别不大

解码方案:贪心解码

2. 观察实验结果

(TriviaQA在BLOOM上的结果图Figure 1我放在第一节了)
在这里插入图片描述

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

证明相关文档必须要同时含有问答中的实体的必要性:
用问题实体或回答实体,可以得到与同时使用中相似的结果;但是如果去掉问答都有的情况,就没有这样的表现了。说明其实模型学习靠的是问答都有的情况
在这里插入图片描述

人工结果和LM结果趋势相反

对LM预测结果出现原因的分析
对比实验,证明去掉相关文档重新训练LM后准确率会下降:
在这里插入图片描述

3. 解决方案

scale数据集
没啥用,各个数据集的支持信息都差不多:
在这里插入图片描述

scale模型
想法是好的,但是需要的增量太大了
在这里插入图片描述

在这里插入图片描述

调整训练目标
改为encourage memorization
增大训练epoch数……等等

检索增强
直接用相关文档,效果能得到大幅度提升:

在这里插入图片描述

用BM25算法实现检索:
果然表现好起来了
在这里插入图片描述

在这里插入图片描述


  1. (2011 I-Semantics) DBpedia spotlight: shedding light on the web of documents ↩︎

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

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

相关文章

python note

Python 基本操作 (赋值、分支及循环语句、使用 import 导入库); Python 的 With 语句 ; NumPy ,Python 下常用的科学计算库。TensorFlow 与之结合紧密; 向量 和 矩阵 运算(矩阵的加减法、矩阵…

基于安卓android微信小程序的好物分享系统

运行环境 开发语言:Java 框架:ssm JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包&a…

【数据结构】C语言实现带头双向循环链表万字详解(附完整运行代码)

🦄个人主页:修修修也 🎏所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 一.了解项目功能 在本次项目中我们的目标是实现一个带头双向循环链表: 该带头双向循环链表使用动态内存分配空间,可以用来存储任意数量的同类型数据. 带头双向循环链表结点(No…

全志H616开发版

开发板介绍: 二、开发板刷机 SDFormatter TF卡的格式化工具、Win32Diskimager 刷机工具 刷机镜像为:Orangepizero2_2.2.0_ubuntu_bionic_desktop_linux4.9.170.img 使用MobaXterm_Personal_20.3连接使用 网络配置:nmcli dev wifi 命令接入网…

【机器学习】034_多层感知机Part.2_从零实现多层感知机

一、解决XOR问题 1. 回顾XOR问题: 如图,如何对XOR面进行分割以划分四个输入 对应的输出 呢? 思路:采用两个分类器分类,每次分出两个输入 ,再借助这两个分类从而分出 。 即采用同或运算,当两…

Redis轻松添加从节点:零阻塞、零烦恼,系统性能再飙升

点击上方蓝字关注我 生成环境的Redis有时需要替换或添加从节点,如果此时主库较大,添加从节点时将可能因为主节点在做bgsave数据备份时使得主库压力大,从而引起其他操作变慢,进而出现阻塞等操作。那么有什么方法可以尽最大程度地减…

C语言中的指针(上)

目录 一、基本概念 1.变量的存储空间 2.定义指针 3.引用与解引用 二、指针的算术运算、类型以及通用指针 1.指针的算数运算 2.指针类型以及通用型指针 三、指向指针的指针(pointers to pointers) 四、函数传值以及传引用 1.局部变量 2.从存储地…

【ctfshow】web入门-信息搜集-web21~28

SSS web21_爆破什么的,都是基操web22_域名也可以爆破的,试试爆破这个ctf.show的子域名web23_还爆破?这么多代码,告辞!web24_爆个🔨web25_爆个🔨,不爆了web26_这个可以爆web27_CTFsho…

软件测试之测试用例的设计

1. 测试用例的概念 软件测试人员向被测试系统提供的一组数据的集合,包括 测试环境、测试步骤、测试数据、预期结果 2. 为什么在测试前要设计测试用例 测试用例是执行测试的依据 在回归测试的时候可以进行复用 是自动化测试编写测试脚本的依据 衡量需求的覆盖率…

C#开发的OpenRA游戏之属性QuantizeFacingsFromSequence(7)

C#开发的OpenRA游戏之属性QuantizeFacingsFromSequence(7) 前面分析了身体的方向,在这里继续QuantizeFacingsFromSequence属性,这个属性就是通过序列定义文件里获取身体的方向。 根据前面分析可知,同样有一个信息类QuantizeFacingsFromSequenceInfo: [Desc("Deriv…

基于安卓android微信小程序美容理发店预约系统app

项目介绍 为美容院设计一个系统以减少员工的工作量就成为了想法的初始状态。紧接着对美容院进行进一步的调查发现我的想法已然落后。基本上每个美容院都以有了自己的信息系统,并且做的已经较完善了。 在这时我突然想到,现在关注美容养生的人越来越多&am…

Windows 安装 Docker Compose

目录 前言什么是 Docker Compose ?安装 Docker Compose配置环境变量结语开源项目 前言 在当今软件开发和部署领域,容器化技术的应用已成为提高效率和系统可移植性的关键手段。Docker,作为领先的容器化平台,为开发人员提供了轻松构…

MobaXterm如何连接CentOS7的Linux虚拟机?Redis可视化客户端工具如何连接Linux版Redis?

一、打开Lunix虚拟机,进入虚拟机中,在终端中输入ifconfig,得到以下信息,红框中为ip地址 二、打开MobaXterm,点击session 选择SSH,在Remote host中输入linux得到的IP地址,Specify username中可起一个任意的连接名称。 输入密码 四、…

RoCE、IB和TCP等网络的基本知识及差异对比

目前有三种RDMA网络,分别是Infiniband、RoCE(RDMA over Converged Ethernet)、iWARP。 其中,Infiniband是一种专为RDMA设计的网络,从硬件级别保证可靠传输 ,技术先进,但是成本高昂。 而RoCE 和 iWARP都是基于以太网的…

leetcode数据结构与算法刷题(三)

目录 第一题 交叉链表 思想: 注意点 第一步先求两个链表的长度 第二步 让长的先走,当长短一样时一起走。 犯错点 第二题 判断是有环 思想: 注意 错误分享 第三题(重点面试题) 思路: 这题面试问题&a…

InnoDB 的一次更新事务是怎么实现的?

大体流程: 步骤: 1.加载数据到缓存中(Buffer Pool): 在进行数据更新时,InnoDB首先会在缓冲池(Buffer Pool)中查找该记录是否已经在内存中。如果记录不在内存中,会将需要更新的数据…

java学习part06数组工具类

1比较内容 2输出信息 3值填充 4快速排序 5二分查找 负数没找到,其他表示下标

Redis常用的八种场景

作为一名 Java后端人员,对 Redis肯定并不陌生,Redis作为一种内存数据库,以其速度之快在编程的舞台上纵横多年,那么,Redis到底适合哪些业务场景?今天就来聊一聊。 1. 缓存/数据库 缓存(Cache&am…

ESP32 http 请求

目录 参考教程1.使用的http连接2.使用Vscode-IDF创建http_request例程3.修改http_request_example_main.c函数4.已经获取到响应的数据 参考教程 ESP-IDF HTTP获取网络时间 1.使用的http连接 http://api.m.taobao.com/rest/api3.do?apimtop.common.getTimestamp请求可以得到…

校园报修抢修小程序系统开发 物业小区报修预约上门维修工单系统

开发的功能模块有: 1.报修工单提交:学生、教职员工等可以使用小程序提交报修请求。这通常包括选择报修的问题类型(如水漏、电器故障、照明问题等),地点,报修联系人,联系电话等,并提供…