Language Models are Few-Shot Learners,GPT-3详细讲解

news2025/3/18 15:45:56

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

GPT的训练范式:预训练+Fine-Tuning
GPT2的训练范式:预训练+Prompt predict (zero-shot learning)
GPT3的训练范式:预训练+Prompt predict (few-shot learning)

GPT2的性能太差,新意高,但有效性低 -> GPT3
GPT-3的本质还是通过海量的参数学习海量的数据,然后依赖transformer强大的拟合能力使得模型能够收敛。

1.GPT-3结构

在这里插入图片描述
在Transformer的各层中交替使用密集注意力(dense attention)与局部带状稀疏注意力模式(locally banded sparse attention patterns),类似于稀疏Transformer(Sparse Transformer)。

Sparse Transforme允许我们处理更长更稀疏的输入序列。Sparse Transformer是一种旨在处理高维、稀疏和长序列数据的Transformer拓展版,由OpenAI团队在2019年提出。相比于传统的Transformer架构,Sparse Transformer通过在自注意力机制中引入稀疏性,减少了网络中计算的数量,从而可以处理更长的序列数据。在处理高维、稀疏数据时,Sparse Transformer可以避免对所有输入的位置进行计算,只计算与当前位置相关的位置,从而提高了计算效率。

2.评估方法
人看两三个例子就可以学会一件事了,给预训练好的语言模型一点样本,不finetune,语言模型就可以迅速学会下游的任务,相当于举几个例子告诉模型。

In-context learning (上下文学习) 一种新的范式,在不进行参数更新的情况下,只做预测,只在输入中加入示例就能让模型进行学习。给定几个任务示例和一个任务说明,模型通过理解任务本身对任务中的实例进行补全。
1、Few Shot Learning(FS):用自然语言告诉模型任务;对每个子任务,提供10~100个训练样本。
2、One-shot Learning(1S):用自然语言告诉模型任务,而后只给该任务提供1个样本。
3、Zero-shot learning(0S):用自然语言告诉模型任务,但一个样本都不给。

GPT3中的few-shot learning,只是在预测时候给几个例子,并不微调网络。
GPT-2用zero-shot去讲了multi-task Learning的故事
GPT-3使用meta-learning和in-context learning去讲故事
meta-learning元学习的核心思想在于通过少量的数据寻找一个合适的初始化范围,使得模型能够在有限的数据集上快速拟合,并获得不错的效果。

评估设置:
(1)随着few shot输入的上下文例子数量的增加,不同模型参数下的acc变化
在这里插入图片描述
(2)随着模型参数的增加,zero shot、one shot、few shot下的acc变化
在这里插入图片描述3.训练数据
3.训练数据
训练中从给定数据集中提取的样例的比例。在训练过程中,采样的频次和数据集大小无关,而和数据集的重要程度相关。
在这里插入图片描述
数据处理方式
A.高质量参考语料库的相似度对CommonCrawl进行过滤
高质量的语料库例如WebText, Wikiedia, and web books corpus 作为正样例,将Common Crawl作为负样例训练了一个分类器,然后用这个分类器对原始Common Crawl中的样例进行打分,筛选出高质量的样例。
B. 对训练语料去重:在数据集内部和跨数据集之间执行模糊文档去重。基于MinHash算法计算文档相似度,并删除相似度高的文档。
C. 对训练语料中和测试集/验证集重叠的部分去重:清洗掉训练文档中与验证集和测试集中的样例有重叠的部分;
对于训练集中的文档如果和验证集以及测试集中的样例有13-gram的重叠,则删去该文档中重叠的13-gram以及周围的200个字节,并将该文档从该处分成片段,并删去小于200个字节的片段。对于片段数多于10的文档,则被整个删除。
D. 在训练数据中添加了几个高质量的数据集,包括WebText数据集的扩展版本,两个基于互联网的图书语料库(Books1和Books2)和英语Wikipedia。

4.GPT-3训练过程
在这里插入图片描述

1.GPT-3的batch size达到了320万,为什么要选择这么大的批大小呢?
(1)大模型相比于小模型更不容易过拟合,所以用更大的、噪音更少的Batch也不会带来太多负面影响;
(2)a.多台机器分布式并行计算,同数据量,batch size上去了,通讯量减少时间的优势>batch size增加导致梯度计算的时间复杂度增加量 b.减少梯度方差可以提高模型稳定性 c.工程经验

2.模型变大、batch size提升的时候,OpenAI选择的学习率反而下降了
模型参数量增加,高学习率可能导致优化过程不稳定(梯度爆炸等),降低学习率可以缓解。
batch size增大降低梯度估计的噪声(更接近真实梯度),但过高的学习率可能导致单步更新幅度过大,破坏模型的稳定性。
学习率下降核心逻辑:模型变大、batch size提升时,优先保障优化过程的稳定性和泛化性,而非单纯追求更新速度。这一权衡在大模型训练中尤其关键,因为训练成本极高,一旦优化失败代价巨大。

5.9大数据集任务
1.传统语言建模:完形填空与文本补全任务,预测特定词汇、完成句子/段落,或在多个文本补全选项中选择最佳答案。
2.闭卷问答(closed book QA)任务,要求模型利用参数中存储的知识回答通用领域问题;
3.语言翻译能力评估(重点关注单样本与少样本场景);
4.类Winograd Schema任务的表现测试;
5.涉及常识推理或问答的数据集;
6.阅读理解任务;
7.SuperGLUE基准测试套件;
8.自然语言推理(NLI)的初步探索;
9.专门设计的情境学习能力探针任务,重点测试即时推理、动态适应与开放式文本生成能力

6.实验结论
1.GPT-3生成能力较强,生成能力随着给出的样例数和模型的参数量而增加,生成的长新闻可以以假乱真,有一定的代码生成能力;
2.事实知识储备比较充足,科学知识储备欠缺,不能正确地用该类知识进行推理;
3.将其它语言翻译成英语的能力较强,该能力随着模型大小和样例数而增加,将英语翻译成其它语言的能力弱;
4.常识推理和精细阅读理解能力较弱,原因可能是因为GPT-3是单向语言模型,不能对文档进行回顾,比较,精读等;
5.在大多数任务上,给出足够的样例,GPT-3的能力超过了fine-tune后的主流模型的能力;
6.具有一些自主学习能力,能够简单处理没有见过的任务和识别一些简单的模式;
7.总的来说GPT-3知识储备多,生成能力强,已经能够理解人类语言并具有自主学习能力;

7.GPT-3模型的局限性 Limitations

In-Context Learning上下文学习,这个模存在缺陷:
(1)GPT-3的输入窗口长度是有限的,不可能无限的堆叠example的数量,即有限的输入窗口限制了我们利用海量数据的能力。
(2)每次做一次新的预测,模型都要从输入的中间抓取有用的信息;可是做不到把从上一个输入中抓取到的信息存起来,存在模型中,用到下一次输入里。

GPT-3模型的局限性 Limitations
1.长文本生成能力还是很弱,2048输入
2.基于物理等世界尝试的逻辑推理能力可能还不够。
3.很难摆脱数据集的分布情况,对于一些明显不在这个分布或者和这个分布有冲突的任务来说,GPT-3还是无能为力
4.每次做一次新的预测,模型都要从输入的中间抓取有用的信息;可是做不到把从上一个输入中抓取到的信息存起来,存在模型中,用到下一次输入里
这就是GPT-3明明早在2020年5月就已经用巨大参数取得了很好的效果,但是学术界用Few-shot做上下文学习的热度好像还是不那么高的原因
5.可能会输出有害的、有偏见的内容,和人类的价值观或者社会主义核心价值观不对齐

8.GPT-3这篇论文在预训练时代的意义是什么?
1.改变人机交互方式。以程序开发为例,在未来开发人员只需要定义需求,而AI将自动帮助开发人员完成编程,测试,部署等功能,整个开发周期大大缩短;
2.让AI像人类一样学习和思考;
3.随着计算能力变得愈发廉价,大模型越来越接近一个超级大脑,帮助人类完成各项任务。
4.改变了传统的预训练加微调的范式,转向训练大规模通用模型。引领了大规模语言模型的时代。

9.GPT-3是怎么进化成ChatGPT的
在这里插入图片描述

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

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

相关文章

Hoppscotch 开源API 开发工具

Hoppscotch 是一个开源的 API 开发工具,旨在为开发者提供一个轻量级、快速且功能丰富的 API 开发和调试平台。以下是对其主要特性和功能的详细介绍: 1. 轻量级与高效 Hoppscotch 采用简约的 UI 设计,注重易用性和高效性。它支持实时发送请求…

【芯片验证】面试题·对深度为60的数组进行复杂约束的技巧

朋友发给我的芯片验证笔试题,觉得很有意思,和大家分享一下。 面试题目 class A中一个长度为60的随机数组rand int arr[60],如何写约束使得: 1.每个元素的值都在(0,100]之间,且互不相等; 2.最少有三个元素满足勾股数要求,比如数组中包含3,4,5三个点; 请以解约束最快…

Manus “Less structure,More intelligence ”独行云端处理器

根据市场调研机构Statista数据显示,全球的AR/AR的市场规模预计目前将达到2500亿美元,Manus作为VR手套领域的领军企业,足以颠覆你的认知。本篇文章将带你解读Manus产品,针对用户提出的种种问题,Manus又将如何解决且让使…

【再读】R1-Onevision通过跨模态形式化为复杂多模态推理任务提供了系统性解决方案

R1-Onevision:跨模态形式化驱动的多模态推理技术突破,R1-Onevision通过跨模态形式化、双阶段训练和教育级基准测试,为多模态推理树立了新标杆。其技术创新不仅提升了模型在复杂任务中的表现,更重要的是为行业提供了一种可解释、可迁移的多模态处理范式。随着形式化方法的不断…

SSM框架——Spring面试题

Spring常见面试题 Spring框架中的单例bean是线程安全的吗 不是线程安全的 Spring框架中有一个Scope注解,默认的值就是singleton,单例的。 因为一般在spring的bean的中都是注入无状态的对象,没有线程安全问题,如果在bean中定义了可…

云原生大佬重生,记忆逐步复苏(十三:selinux模块)

目录 1:什么是selinux 1.1 SELinux 的作用 1.2. SELinux 的工作原理 1.3. SELinux 的运行模式 2:解析selinux文件上下文标签策略 3:selinux的布尔值 4:调查和解决selinux问题 1:什么是selinux SELinux(Security-Enhanced L…

MySQL高频八股——事务过程中Undo log、Redo log、Binlog的写入顺序(涉及两阶段提交)

大家好,我是钢板兽! 在上一篇文章中,我分别介绍了 Undo Log、Redo Log 和 Binlog 在事务执行过程中的作用与写入机制。然而,实际应用中,这三种日志的写入是有先后顺序的。因此,本篇文章将深入探讨它们的写…

C++进阶——AVL树的实现

1、AVL的概念 1.1 AVL 树的发明 AVL 树由 G.M. Adelson-Velsky 和 E.M. Landis 在 1962 年的论文《An algorithm for the organization of information》中提出。他们的设计目标是解决二叉搜索树在动态操作(插入、删除)中可能退化为链表的问题。 1.2 …

打包当前Ubuntu镜像 制作Ubuntu togo系统

我的系统的基本情况说明: 我原来的系统的具体型号如下: uname -rLinux Engine 5.15.0-134-generic #145~20.04.1-Ubuntu SMP Mon Feb 17 13:27:16 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux我原来的硬盘以及分区策略如下: 可以看到我的分区…

系统架构设计师—案例分析—架构设计

文章目录 经典架构风格对比面向对象架构风格/显示调用风格优点缺点举例 事件驱动的系统/隐式调用风格优点缺点举例 基于规则的系统架构风格优点缺点举例 管道过滤器风格优点缺点举例 仓库风格优点缺点举例 解释器风格优点缺点举例 分层架构风格优点缺点举例 经典架构风格对比 …

基于javaweb的SpringBoot智能相册管理系统图片相册系统设计与实现(源码+文档+部署讲解)

技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论…

Android 14 Telephony 网络选择功能介绍

一、总体介绍 (一)功能 手动搜网的流程:用户通过UI触发,调用TelephonyManager的API,比如startNetworkScan,然后这个请求会传递到RIL层,通过AT命令与基带通信,进行网络扫描。结果返回后,经过TelephonyRegistry通知应用层。中间可能涉及IPC,比如Binder通信,因为应用和…

深入解析音频编解码器(Audio CODEC):硬件、接口与驱动开发

音频编解码器(Audio CODEC)是音频处理系统中的核心组件,负责 模拟信号与数字信号的相互转换,广泛应用于 智能音箱、嵌入式系统、消费电子产品 等设备。本篇文章将从 硬件结构、接口解析、驱动开发 和 软件配置 等方面,…

深度学习【迭代梯度下降法求解线性回归】

梯度下降法 梯度下降法是一种常用迭代方法,其目的是让输入向量找到一个合适的迭代方向,使得输出值能达到局部最小值。在拟合线性回归方程时,我们把损失函数视为以参数向量为输入的函数,找到其梯度下降的方向并进行迭代&#xff0…

[Lc14_priority_queue] 最后一块石头重量 | 数据流中的第 K 大元素 | 前K个高频单词 | 数据流的中位数

目录 1.最后一块石头的重量 题解 2.数据流中的第 K 大元素 题解 3.前K个高频单词 题解 代码 ⭕4.数据流的中位数 题解 在C中,使用标准库中的priority_queue,默认情况下它是一个最大堆(即大堆排序),这意味着最…

熔断和降级的区别,具体使用场景有哪些?

熔断与降级的核心区别在于触发条件和应用目标,具体差异及使用场景如下: 一、核心区别 对比维度熔断降级触发原因下游依赖服务故障(如超时、异常率过高)触发系统整体负载过高或流量洪峰管理目标层级框架级保护(无业务优…

利用hexo+github部署属于自己的个人博客网站(2025年3月所写)

利用hexogithub部署属于自己的个人博客网站 前情提要:如果你出现了莫名其妙的报错,可能与权限有关,可以以管理员的身份运行git bash或者cmd 本篇博客仅限于利用hexo搭建博客,并且部署到github上面,让自己可以有一个访…

pandas学习笔记(一)——基础知识和应用案例

pandas学习笔记 基础语法参考菜鸟教程:https://www.runoob.com/pandas/pandas-tutorial.html # jupyter import pandas as pd import matplotlib from matplotlib import pyplot as plt import numpy as npmatplotlib.use(TkAgg)data {timestamp: [1, 2, 3, 4, 5…

【AI 大模型】RAG 检索增强生成 ⑤ ( 向量数据库 | 向量数据库 索引结构和搜索算法 | 常见 向量数据库 对比 | 安装并使用 向量数据库 chromadb 案例 )

文章目录 一、向量数据库1、向量数据库引入2、向量数据库简介3、向量数据库 索引结构和搜索算法4、向量数据库 应用场景5、传统数据库 与 向量数据库 对比 二、常见 向量数据库 对比三、向量数据库 案例1、安装 向量数据库 chromadb2、核心要点 解析① 创建数据库实例② 创建数…

解决single cell portal点击下载但跳转的是网页

Single cell RNA-seq of Tmem100-lineage cells in a mouse model of osseointegration - Single Cell Portal 想下载个小鼠数据集: 点击下载跳转为网页: 复制bulk download给的链接无法下载 bulk download给的原链接: curl.exe "http…