大语言模型系列-GPT-3

文章目录

  • 前言
  • 一、GTP-3的改进
  • 二、GPT-3的表现
  • 总结


前言

《Language Models are Few-Shot Learners,2020》

前文提到GPT-2进一步提升了模型的zero shot能力,但是在一些任务中仍可能会“胡说”,GTP-3基于此提出了few shot,即预测时给出少量精确案例,提升模型的准确性,同时进一步增大模型。


一、GTP-3的改进

  1. Larger Model: GPT-3将Transformer堆叠的层数从48层增加到96层,每层有96个注意力头,隐层的维度从1600提升至12888,最大模型参数达到1750 亿(175B)。
  2. Larger Dataset:GPT-3 使用了多个数据集,其中最大的是 CommonCrawl,原始未处理的数据达到了 45TB,通过数据清洗工作(LR 分类、去重、加入 BERT、GPT、GPT-2 等数据集),最终得到的数据集大小为570G。
  3. 上下文大小 (context size) :从GPT-2的1024提升到了2048。
  4. 注意力机制:引入了 Sparse Transformer 中的 sparse attention 模块(稀疏注意力)。

ps:
sparse attention 与传统 self-attention(称为 dense attention) 的区别在于:

  • dense attention:每个 token 之间两两计算 attention,复杂度 O(n²)
  • sparse attention:每个 token 只与其他 token 的一个子集计算 attention,复杂度 O(n*logn)
    具体来说,sparse attention 除了相对距离不超过 k 以及相对距离为 k,2k,3k,… 的 token,其他所有 token 的注意力都设为 0,k=2的稀疏注意力如下图所示:
    在这里插入图片描述
    使用 sparse attention 的好处主要有以下两点:
  1. 减少注意力层的计算复杂度,节约显存和耗时,从而能够处理更长的输入序列;
  2. 具有“局部紧密相关和远程稀疏相关”的特性,对于距离较近的上下文关注更多,对于距离较远的上下文关注较少;
  1. few-shot:相比于finetune,可以提升模型表现,且无需大数据集和再训练,需要注意的是表现仍远小于SOTA微调技术,见下图。
    在这里插入图片描述

二、GPT-3的表现

完形填空任务和完成任务:
在这里插入图片描述
问答(QA)任务
在这里插入图片描述
问答(QA)任务和阅读理解(RC)任务

在这里插入图片描述
翻译任务
在这里插入图片描述


总结

虽然 GPT-3 取得了非常亮眼的效果,但仍存在一些问题:

  1. 当生成文本长度较长时会出现各种问题,比如重复生成一段话,前后矛盾,逻辑衔接不好等等;
  2. 模型和结构的局限性,对于某一些任务,比如填空类型的文本任务,使用单向的自回归语言模型确实存在一定的局限性,这时候如果同时考虑上文和下文的话,效果很可能会更好一些;
  3. 预训练语言模型的通病,在训练时,语料中所有的词都被同等看待,对于一些虚词或无意义的词同样需要花费很多计算量去学习,无法区分学习重点
  4. 样本有效性或者利用率过低,训一个模型几乎要把整个互联网上的文本数据全都用起来,这与我们人类学习时所需要的成本存在非常大的差异,这方面也是未来人工智能研究的重点;
  5. 模型到底是在“学习”还是在“记忆”?
  6. 训练和使用成本都太大了
  7. 不可解释性
  8. 模型最终呈现的效果取决于训练数据,这会导致模型会出现各种各样的“偏见”;

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

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

相关文章

7-22 试试手气(Python)

我们知道一个骰子有 6 个面,分别刻了 1 到 6 个点。下面给你 6 个骰子的初始状态,即它们朝上一面的点数,让你一把抓起摇出另一套结果。假设你摇骰子的手段特别精妙,每次摇出的结果都满足以下两个条件: 1、每个骰子摇出…

ZYNQ--AXI_DMA使用

文章目录 手册阅读典型连接图SG模式关闭时的寄存器地址SG模式开启时的寄存器地址BD设计PS端设计对于DMA寄存器的控制对DMA进行初始化 手册阅读 典型连接图 SG模式关闭时的寄存器地址 SG模式开启时的寄存器地址 关于各个bit的功能,具体看数据手册。 BD设计 通过PL侧…

sql高级

sql高级 SQL SELECT TOP 子句 SELECT TOP 子句用于规定要返回的记录的数目。 SELECT TOP 子句对于拥有数千条记录的大型表来说,是非常有用的。 **注意:**并非所有的数据库系统都支持 SELECT TOP 语句。 MySQL 支持 LIMIT 语句来选取指定的条数数据, O…

Qt + mqtt对接阿里云平台(一)

一、阿里云平台 官网:点击跳转 二、创建产品与设备 1、“公共实例” 2、“设备管理”->“产品”->“创建产品” 3、“产品名称”->“自定义品类”->"确认" 4、“前往添加” 5、“添加设备” 6、摄入DeviceName和备注名称 7、"前往查…

每周一算法:A*(A Star)算法

八数码难题 题目描述 在 3 3 3\times 3 33 的棋盘上,摆有八个棋子,每个棋子上标有 1 1 1 至 8 8 8 的某一数字。棋盘中留有一个空格,空格用 0 0 0 来表示。空格周围的棋子可以移到空格中。要求解的问题是:给出一种初始布局…

文心一言 VS 讯飞星火 VS chatgpt (210)-- 算法导论16.1 1题

一、根据递归式(16.2)为活动选择问题设计一个动态规划算法。算法应该按前文定义计算最大兼容活动集的大小 c[i,j]并生成最大集本身。假定输入的活动已按公式(16.1)排好序。比较你的算法和GREEDY-ACTIVITY-SELECTOR的运行时间。如何要写代码,请用go语言。 文心一言&…

excel统计分析——裂区设计

参考资料:生物统计学 裂区设计(split-plot design)是安排多因素试验的一种方法,裂区设计对因素的安排有主次之分,适用于安排对不同因素试验精度要求不一的试验。 裂区设计时,先按第一因素的处理数划分主区&…

独立站营销新纪元:AI与大数据塑造个性化体验的未来

随着全球互联网的深入发展和数字化转型的不断推进,作为品牌建设和市场营销的重要载体,独立站将迎来新的发展机遇。新技术的涌现,特别是人工智能和大数据等技术的广泛应用,为独立站带来了前所未有的机遇与挑战。本文Nox聚星将和大家…

ios xcode 15 PrivacyInfo.xcprivacy 隐私清单

1.需要升级mac os系统到13 兼容 xcode 15.1 2.升级mac os系统到14 兼容 xcode 15.3 3.选择 New File 4.直接搜索 privacy 能看到有个App Privacy 5.右击Add Row 7.直接选 Label Types 8.选中继续添加就能添加你的隐私清单了 苹果官网文档Describing data use in privacy man…

Windows安装SSH教程:进阶配置选项详解

当我们谈论在Windows上安装SSH时,我们通常会关注基本的安装步骤和客户端/服务器的设置。然而,SSH的配置远不止于此。在本文中,我们将深入探讨一些高级的SSH配置选项,这些选项可以帮助您更好地定制SSH体验,提高安全性和性能。 一、SSH配置文件的详解 在Windows上,SSH的配…

Java二阶知识点总结(四)常见算法的基本结构

一、二叉树的DFS&#xff08;深度优先算法&#xff09; 1、递归 基本递归&#xff08;以中序遍历为例&#xff09; public List<Integer> inorderTraversal(TreeNode root) {List<Integer> resultnew ArrayList<>();order(root,result);return result;}pub…

从零开始学HCIA之IPv6基础05

1、IPv6地址支持无状态自动配置方式&#xff0c;主机通过某种机制获取网络前缀信息&#xff0c;然后主机自己生成地址的接口标识部分。 2、路由器发现功能是IPv6地址自动配置功能的基础&#xff0c;主要通过两种消息实现。 &#xff08;1&#xff09; 路由器通告&#xff08;…

springboot247人事管理系统

人事管理系统的设计与实现 摘 要 传统信息的管理大部分依赖于管理人员的手工登记与管理&#xff0c;然而&#xff0c;随着近些年信息技术的迅猛发展&#xff0c;让许多比较老套的信息管理模式进行了更新迭代&#xff0c;问卷信息因为其管理内容繁杂&#xff0c;管理数量繁多导…

webpack5基础--09_处理其他资源

处理其他资源 开发中可能还存在一些其他资源&#xff0c;如音视频等&#xff0c;我们也一起处理了 1. 配置 const path require("path");module.exports {entry: "./src/main.js",output: {path: path.resolve(__dirname, "dist"),filename…

Redis基本使用和基础知识整理

Redis是做什么的&#xff1f; Redis是一个开源&#xff0c;内存存储的数据结构服务器&#xff0c;可用作数据库&#xff0c;高速缓存和消息队列。Redis将数据储存在内存当中 内存的特点 易失性&#xff08;在断电之后数据就没有了&#xff09;进行读取数据等IO操作的速度要比…

C语言进阶—表达式求值

隐式类型转换&#xff1a; C 的整型算术运算总是至少以缺省(默认)整型类型的精度来进行的。 为了获得这个精度&#xff0c;表达式中的字符和短整型操作数在使用之前被转换为普通整型&#xff0c;这种转换称为整型提升。 #include <stdio.h>int main() {char c 1;printf(…

Springboot 的几种配置文件形式

方式一&#xff1a;多个yml文件 步骤1&#xff1a;创建多个配置文件 application.yml #主配置文件 application-dev.yml #开发环境的配置 application-prod.yml #生产环境的配置 application-test.yml #测试环境的配置步骤2&#xff1a;applicaiton.yml中指定配置 在a…

代码随想录day13(1)栈与队列:用栈实现队列(leetcode232)

题目要求&#xff1a;使用栈实现push、pop、empty、peek&#xff08;返回队列首部元素&#xff09;。 思路&#xff1a;本题思路比较容易&#xff0c;即用两个栈模拟即可&#xff0c;pop时只需要先判断stackout栈是否为空&#xff0c;如果不空直接弹出&#xff0c;如果空就将s…

JVM双亲委派模型

Java虚拟机的双亲委派模型是一种类加载机制&#xff0c;用于确保Java类在被加载时的安全性和一致性。该模型通过将类加载请求委派给父类加载器来保证类加载的顺序和一致性。这个模型主要由以下几个关键点组成&#xff1a; 双亲委派&#xff1a; 当Java虚拟机收到加载类的请求时…

restTemplate请求接口转发(包含普通get,post请求和下载)

此代码包含普通get&#xff0c;post请求和下载&#xff0c;代码如下&#xff1a; Configuration public class RestTemplateConfig {Beanpublic RestTemplate restTemplate() {return new RestTemplate();}}Data public class CustomButtonRequestDto {ApiModelProperty(value…