Re65:读论文 GPT-3 Language Models are Few-Shot Learners

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

论文全名:Language Models are Few-Shot Learners
ArXiv网址:https://arxiv.org/abs/2005.14165
2020 NeurIPS:https://papers.nips.cc/paper/2020/hash/1457c0d6bfcb4967418bfb8ac142f64a-Abstract.html

官方GitHub项目:openai/gpt-3: GPT-3: Language Models are Few-Shot Learners(模型没开源,但是如果对人造数据集感兴趣可以看看)

GPT-3没有开源,只能通过API调用。OpenAI官方没有明确说现在哪些API是GPT-3的,我猜测https://platform.openai.com/docs/models/gpt-base这两个文本生成模型应该是GPT-3的,但是官方也不建议继续使用GPT-3的API了,建议大家用3.5和4。因此GPT-3的主要价值就是承前启后、了解GPT系列模型的发展史了。

Re45:读论文 GPT-1 Improving Language Understanding by Generative Pre-Training
Re62:读论文 GPT-2 Language Models are Unsupervised Multitask Learners

GPT-3的框架跟GPT-1、2的差不多,但是扩大了网络参数规模,使用了更多的高质量训练数据,就使得其模型效果实现了显著提升,可以不用微调,直接通过少样本学习/上下文学习的方式,在prompt中给出任务示例,就能在新的预测样例上得到想要的结果。有些少样本学习效果比微调的SOTA模型还好。

模型越大越好(scaling laws1
是谓大力出奇迹。
文中有很多验证不同规模模型上效果的图。

本文没有做GPT-3微调效果的实验。

我觉得前置知识我已经写够多了,本文就只写一些值得在意的点了。

文章目录

  • 1. 上下文学习
  • 2. GPT-3
    • 1. 数据集
    • 2. 实验结果
      • 1. 语言模型
      • 2. 文本补全和完形填空任务
      • 3. 开放域QA
      • 4. 翻译
      • 5. Winograd-Style Tasks
      • 6. 常识推理
      • 7. 阅读理解
      • 8. SuperGLUE
      • 9. NLI
      • 10. Synthetic and Qualitative Tasks
    • 3. 防止数据泄露问题
  • 4. 限制
  • 5. 公平性
  • 6. 资源消耗

1. 上下文学习

优势是不用大规模微调数据集。效果随模型尺寸增长而变好(但是不如微调)。而且模型不会产生微调导致的分布局限问题,在通用任务上表现能力不会下降。

示意图:
在这里插入图片描述

instruction

术语“demonstration”就是上下文中的样例(输入+输出 a context and a desired completion)

给出新输入,让模型给出输出

few-shot learning(10-100个)
one-shot learning
zero-shot learning

在这里插入图片描述

随着模型参数和数据集规模增长而效果越来越好:
在这里插入图片描述

在这里插入图片描述

前人的工作已经证明了log loss随模型变大而下降,交叉熵损失下降也会带来在下游任务上效果的提升。

2. GPT-3

模型在GPT-2的基础上增加了alternating dense and locally banded sparse attention patterns(sparse transformer2

最大的GPT-3是175B

模型越大,batch size应该越大,学习率越小1 3,用gradient noise scale来选择batch size3(我也不知道这是啥玩意儿,以后看)
在这里插入图片描述

context window:2048

在Common Crawl数据集上预训练1个epoch

在这里插入图片描述
↑这个纵轴应该大概类似于训练算力的评估指标

model parallelism

训练过程中的scale loss:
在这里插入图片描述

具体训练细节在附录,我没看。

1. 数据集

数据集清洗3步走(有噪音的效果不够好):① 靠近高质量语料 ② 去重 ③ 添加高质量语料(高质量语料抽样频率更高)

构建了一个预测高质量文本的分类器。

为了测试,删除了数据泄露的训练集数据。(文中有很大篇幅分析数据泄露问题)

数据集比例:
在这里插入图片描述

2. 实验结果

评估指标略。

因为看到FLAN论文里提及了,所以简单补充一点:
选择题(包括多选和判断题)大多是用生成结果的LM似然来评估的,有些任务参考了T5的评估思路。

1. 语言模型

在这里插入图片描述

2. 文本补全和完形填空任务

类似语言模型训练任务
在这里插入图片描述

在这里插入图片描述

3. 开放域QA

Closed Book Question Answering
在这里插入图片描述
开卷(open-book)QA一般用的是信息检索方案。
↑ SSM指的是Q&A-specific pre-training procedure

在这里插入图片描述
↑ 模型越大,知识越多

4. 翻译

在这里插入图片描述

在这里插入图片描述
翻译到英文的效果比较好。

5. Winograd-Style Tasks

指代消歧

在这里插入图片描述

在这里插入图片描述

6. 常识推理

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

7. 阅读理解

在这里插入图片描述

在要求严格回答格式的数据集上表现最差

8. SuperGLUE

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

9. NLI

在这里插入图片描述

10. Synthetic and Qualitative Tasks

  1. 算术
    少样本:
    在这里插入图片描述
    ↑ N-digit指的是数字的最高位数
    composite是带运算符的(如Q: What is 6+(4*8)? A: 38

    所有setting:
    在这里插入图片描述

  2. 恢复单词中的字母顺序
    在这里插入图片描述

    少样本:
    在这里插入图片描述

  3. SAT-style analogy
    示例:audacious is to boldness as (a) sanctimonious is to hypocrisy, (b) anonymous is to identity, (c) remorseful is to misdeed, (d) deleterious is to result, (e) impressionable is to temptation
    感觉算是一种英语词汇量考试题?
    在这里插入图片描述

  4. 定性问题

    1. 生成新闻
      输入标题和小标题
      在这里插入图片描述
      在这里插入图片描述
      ↑95%置信度区间的幂律函数

      在这里插入图片描述
      用户正确预测出新闻是模型生成的,或者不确定是不是模型生成的,都算预测正确
      可以看到GPT-3的生成真实性用户几乎猜不出来,即使是长文本(50%基本等如瞎猜)
      用户可能用以判断新闻是否由AI生成的依据:事实错误,重复,不合逻辑的推理过程,异常短语
      在这里插入图片描述


      在这里插入图片描述
    2. 学习和使用新词:看定义后使用,或者从示例中推理词义(论文中测试的是前者)
      在这里插入图片描述
      灰色是prompt,粗体是模型生成结果,模型生成结果会塞进对话继续生成后续内容
    3. 英语语法纠错
      Poor English Input: <sentence>nn Good English Output: <sentence>
      在这里插入图片描述

3. 防止数据泄露问题

具体的我没看,就放点图吧。

在这里插入图片描述
↑ 在训练集中抽取出一个去重的验证集切片,训练集和验证集的损失函数。
说明没有过拟合。在下游任务上表现不好就是因为任务太难了。

clean benchmarks:制造去除训练集中可能泄露的样本
在clean benchmarks上和原版的表现差异 ↓
在这里插入图片描述

4. 限制

大部分我懒得写了,列举一些我认为值得在意的。

  1. 人类偏好:(2019 OpenAI) Fine-Tuning Language Models from Human Preferences
  2. 通过图片提供世界模型:(2020 ECCV 微软) UNITER: UNiversal Image-TExt Representation Learning
  3. few-shot是从0开始学习新任务,还是将新任务视作见过的任务?

5. 公平性

性别:
在这里插入图片描述

种族(用词的情感得分):
在这里插入图片描述

宗教:
在这里插入图片描述
(好地狱笑话的表)

6. 资源消耗

单位:
petaflop/s-days
kW-hr

这一块以后如果有机会了我再详细看看。


  1. (2020 OpenAI) Scaling Laws for Neural Language Models ↩︎ ↩︎

  2. 在模型结构中的注意力层,GPT3采用Sparse Transformer中的方案,相对于原始Transformer需要对一个序列中的任意两个词元都进行注意力计算,时间复杂度为 O ( n 2 ) O(n^2) O(n2) ,Sparse Transformer通过稀疏矩阵仅为每个词元计算和其他部分词元的注意力,时间复杂度为 O ( n log ⁡ n ) O(n\log n) O(nlogn) ,因此可以减少注意力计算量 from AIGC系列-GPT3论文阅读笔记 - 知乎
    理论来源原论文:(2019 OpenAI) Generating Long Sequences with Sparse Transformers ↩︎

  3. (2018) An empirical model of large-batch training ↩︎ ↩︎

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

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

相关文章

集成sa-token实现登录和RBAC权限控制

集成sa-token实现登录和RBAC权限控制 文章目录 1.sa-token是什么&#xff1f;1.1简介1.2官网1.3 Sa-Token 功能一览1.4 功能结构图 2.集成sa-token及配置2.1 pom依赖2.2 yaml配置2.3 代码配置 4.RBAC权限控制表设计5.菜单权限树构造实现5.1菜单权限数据sql查询5.2菜单权限树构建…

solidity(10)

&#x1f52e; Solidity变量指南&#xff1a;探寻状态、局部和全局三界之秘&#x1f30c; 在Solidity的神秘大陆上&#xff0c;变量就像是散落在时间和空间中的宝石&#x1f48e;&#xff0c;每颗都有它独特的魔力和作用域。掌握这三种变量&#xff0c;是成为合约法师的重要一…

Vue项目学习(一)-SQL闯关

Hello , 我是小恒不会java。今天来阅读一个Vue纯前端项目--SQL在线闯关 进步的方法除了文档书籍视频&#xff0c;学会阅读源代码&#xff0c;从代码中学会解决需求的方法也是必要的 已部署完成&#xff0c;在线体验&#xff1a;http://sql.yunduanjianzhan.cn 背景 简介 闯…

《黑神话:悟空》现已正式上架PS商城,今晚或有大动作

关于《黑神话&#xff1a;悟空》的消息可谓是喜闻乐见&#xff01;今天晚上19:10可能会有相关游戏内容放出&#xff0c;让人非常期待。而海信电视推出的《黑神话&#xff1a;悟空》专属画质模式&#xff0c;让玩家可以享受到更加细腻的游戏画面。 此外&#xff0c;海信和《黑神…

高级感拉满的个人UI网页

效果图 PC端 移动端 部分代码 index.html <!DOCTYPE html> <html><head><meta charset"utf-8" /><title>Zboy的主页</title><link rel"stylesheet" href"css/normalize.css" /><link rel&qu…

SAP项目任务一览表

根据SAP Activate项目管理方法论的主要精神&#xff0c;浓缩到一些主要的团队和任务。 主要的团队有&#xff1a; 项目管理(办公室)Project Management(office)&#xff1a;项目经理团队&#xff0c;包括项目办公室。负责项目整体运行和监控&#xff0c;项目办公室负责项目的…

李沐-19 卷积层【动手学深度学习v2】

记录下关于权重下标变换的理解&#xff1a; 从原来的Wi,j到Wi,j,k,l是从二维到四维的过程&#xff0c;如下图所示 对全连接层使用平移不变性(如&#xff1a;卷积核在移动过程是不变的)和局部性&#xff08;如&#xff1a;卷积核有一定大小&#xff09;得到卷积层&#xff0c;这…

【leetcode】双指针算法技巧——滑动窗口

标题&#xff1a;【leetcode】双指针算法技巧——滑动窗口 水墨不写bug 正文开始&#xff1a; 滑动窗口介绍 滑动窗口是一种常用的算法技巧&#xff0c;用于解决一些涉及 连续子数组或子串 的问题。它的基本思想是 维护一个窗口&#xff0c;通过 在窗口内移动 来寻找满…

如何查询RGB图像的三维numpy数组中有多少个不同的RGB点,并打印具体数值?

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…

xgplayer插件的使用-西瓜播放器 ---- Vue3中使用

xgplayer 视频 一、xgplayer官网 xgplayer官网 - 点我进入 一、xgplayer简单介绍 西瓜播放器是字节跳动推出的一款播放器。 稳定性好&#xff08;大厂&#xff08;字节跳动&#xff09;出品&#xff09;&#xff1b;插件方便实用且简洁高雅&#xff1b;官网文档清晰&#xff1b…

[Linux - C] 自主Shell

[Linux - C] 自主Shell [Linux - C语言] 自主Shell逻辑策划 main()打印命令行 void MakeCommandLineAndPrint()用户名 USER主机名 HOSTNAME当前目录 PWDSkipPath 切割目录打印命令行 获取用户字符串 int GetUserCommand()检查重定向 void CheckRedir()切割字符 void SplitComma…

数据加密、文档加密为什么都选择安企神软件

数据加密、文档加密为什么都选择安企神软件 免费试用安企神 在数据加密和文件加密领域&#xff0c;有众多优秀的软件&#xff0c;他们功能各异、价格不同、效果也大相径庭&#xff0c;经过对比使用、用户口碑和技术网站评判&#xff0c;安企神在各方面都稳坐第一把交易。其原…

新闻媒体行业邮件推广:精准推送,创造价值

在当今信息爆炸的时代&#xff0c;新闻行业如何在竞争激烈的市场中脱颖而出&#xff0c;吸引读者的目光&#xff0c;成为了每个新闻机构都需要认真思考的问题。许可式邮件营销成为了一种强大的工具&#xff0c;不仅能够向订阅者发送新闻期刊&#xff0c;还能够向广告商发送宣传…

【基础物理实验】【AFM虚拟实验】基于AFM的物质表面微观结构及力学性质表征仿真实验(下)【北京航空航天大学】

本次实验&#xff08;上&#xff09;见博客&#xff1a;【基础物理实验】【AFM虚拟实验】基于AFM的物质表面微观结构及力学性质表征仿真实验&#xff08;上&#xff09;【北京航空航天大学】 本次实验&#xff08;中&#xff09;见博客&#xff1a;【基础物理实验】【AFM虚拟实…

LLamaSharp加载llama.cpp转化好的模型

新建.net8控制台项目 安装依赖包 LLamaSharp和LLamaSharp.Backend.Cpu 准备好转化好的模型 没有的话参考这篇文章https://blog.csdn.net/qq_36437991/article/details/137248622 编写代码 using LLama; using LLama.Common; using LLama.Native;namespace llamasharpstu…

N皇后问题(DFS解决)

文章目录 一、题目分析二、对角线判断&#xff08;分两种&#xff09;三、代码演示 先赞后看&#xff0c;养成习惯&#xff01;&#xff01;&#xff01;^ _ ^<3 ❤️ ❤️ ❤️ 码字不易&#xff0c;大家的支持就是我坚持下去的动力。点赞后不要忘了关注我哦&#xff01; 一…

全球7大指纹浏览器排行榜:哪个最适合你?

在数字时代&#xff0c;我们每一次上网都会留下独特的数字足迹&#xff0c;被称为“浏览器指纹”。为了保护这些私人信息不被滥用&#xff0c;指纹浏览器成为了一个重要工具。但是&#xff0c;并非所有的指纹浏览器都是一样的&#xff0c;它们各有特点&#xff0c;适用于不同的…

数字乡村创新实践探索农业现代化路径:科技赋能农业产业升级、提升乡村治理效能与农民幸福感

随着信息技术的快速发展和数字化时代的到来&#xff0c;数字乡村建设正成为推动农业现代化、提升农业产业竞争力、优化乡村治理以及提高农民幸福感的重要途径。本文将围绕数字乡村创新实践&#xff0c;探讨其在农业现代化路径中的积极作用&#xff0c;以及如何通过科技赋能实现…

28. 找出字符串中第一个匹配项的下标(KMP)

class Solution {public int[] getNext(int[] next,String s){//j有两层含义&#xff1a;&#xff08;1&#xff09;最长公共前后缀的长度&#xff08;2&#xff09;前缀的末尾&#xff0c;是即将匹配的那个位置int j 0;//i含义&#xff1a;后缀的末尾&#xff0c;是即将匹配的…

Python疑难杂症(20)---介绍Python的pandas模块中将数据导入内存和导出数据的方法,以及一些参数的用法。

Python的pandas模块中数据框这种数据类型&#xff0c;可以通过文件导入函数&#xff0c;将磁盘上的csv、execl等类型的文件装入内存&#xff0c;并生成数据框的格式&#xff0c;以方便后续使用pandas的专有方法进行处理。 6、DataFrame数据输导入导出方法 Pandas常用的读取数…