LLM:Scaling Laws for Neural Language Models (上)

论文:https://arxiv.org/pdf/2001.08361.pdf

发表:2020

摘要
1:损失与模型大小、数据集大小以及训练所用计算量成比例,其中一些趋势跨越了七个量级以上。

2:网络宽度或深度等其他架构细节在很大范围内影响较小。
3:模型/数据集大小和训练速度与模型大小的依赖关系由简单的方程描述。这些关系使我们能够确定在固定的计算预算下的最优资源分配。

4:更大的模型显著地更具样本效率,因此,在相对较小的数据量上训练非常大的模型并在收敛之前显著地停止。

发现

1:LLM模型的性能主要取决于scale,而不是model shape

模型性能强烈依赖于规模,这由三个因素组成:模型参数数量N(不包括嵌入)、数据集大小D和用于训练的计算C的数量。在合理的限度内,性能对其他架构超参数(例如深度与宽度的比较)的依赖非常弱。(第3节)

2:平滑的幂法则

当不受其他两个因素瓶颈的限制时,性能与三个规模因子N、D、C之间存在着强相关的幂关系三个因素的趋势跨度超过六个量级(参见图1)。我们在上端没有观察到偏离这些趋势的迹象,尽管性能最终必须在达到零损失之前趋于平稳。(第3节) 

当我们增加模型大小N、数据规模D和训练时的计算量C,语言模型的性能会平稳提高为了获得最佳性能,这三个因素需要同时缩放。实验表明:在其余两个参数不做限制条件下,测试Loss与另一个因素上都表现出幂关系。 

3:过拟合的普遍性

同步增加模型大小N和数据规模D,模型性能就会显著地提高。但是,如果我们只固定N、D中的一个,而增加另一个规模,就会出现回报递减的情况。性能的惩罚可以预测地依赖于\frac{N^{0.74}}{D},这意味着我们每次将模型规模N增加8倍,只需将数据规模D增加5倍就可以避免受到惩罚(第4节)

4:训练的普遍性

训练曲线遵循可预测的幂律,其参数大约独立于模型的大小。通过外推训练曲线的早期部分,我们可以大致预测如果我们训练更长时间会达到的损失。(第5节)

5:迁移能力随着测试性能的提高而提高

当我们在与模型训练数据分布不同的文本上评估模型时,结果与在训练验证集上的结果有强烈的相关性,但损失的偏移约为常数 - 换句话说,转移到不同的分布会产生一个常数的惩罚,但除此之外,性能大致与在训练集上的性能一致。 (第3.2.2节)

6:样本效率

大型模型比小型模式更具有样本效率,使用更少的优化步骤(图2)和更少的数据点(图4)就可以达到相同的性能水平。

紫色->绿色->黄色:表示模型的参数量N逐渐增大。

下图(左):收敛到相同水平(横线),大模型(黄色)需要的token数更少,即效率更高。

下图(右):收敛到相同水平(横线),小模型(黄色)耗时(PF-days)更少。

这里横轴单位为PF-days: 如果每秒钟可进行1015次运算,就是1 peta flops,那么一天的运算就是1015×24×3600=8.64×1019,这个算力消耗被称为1个petaflop/s-day。 

7:收敛效率低下

固定计算量C,但不对模型规模N或可用数据规模D施加限制时,我们通过训练非常大的模型并在远未达到收敛的情况下停止(参见图3)来达到最佳性能。因此,最大化计算效率的训练将比基于训练小模型到收敛的预期更具有样本效率。数据要求随着D\sim C^{^{0.27}}的训练计算而增长非常缓慢。(第6节) 

对于计算效率最优的训练:大部分的计算能力应投放到模型尺寸增加上,小部分投入到数据增加上。在数据增加方面:主要是增加batch size,迭代steps基本可以忽略。从Fig3中可以看出:

model size : Batch size : serial steps = 1,000,000 : 100 : 10

 8:最佳batch size 

 这些模型的理想批处理大小大致是损失的幂,并且可以通过测量梯度噪声尺度来确定。对于我们可以训练的最大模型,收敛时的理想批处理大 小约为 1-2 百万个token。(第 5.1 节)

 2.2 训练流程

使用 Adam 优化器对模型进行固定 2.5×105 步的训练,批大小为 512 个序列,序列包含 1024 个词元。由于内存限制,我们使用 Adafactor对我们最大的模型(超过 1B 参数)进行训练。我们尝试了各种学习率和调度,如附录 D.6 中所述。我们发现收敛结果很大程度上与学习率调度无关。除非另有说明,我们数据中包含的所有训练运行都使用了一个学习率调度,该调度包括 3000 步线性预热,然后是余弦衰减到零

3.1 估计Transformer形状和超参数独立性

当我们保持总非嵌入参数计数 N 固定时,Transformer的性能对 nlayer 、 nheads 和 dff 等形状参数依赖性非常弱。

3.2 非嵌入参数计数 N 的性能 

左图:当我们包括嵌入参数时,性能似乎除了参数数量外还强烈依赖于层数。

右图:当我们排除嵌入参数时,不同深度的模型的性能收敛到一个趋势。只有少于2层的模型或具有极端的深度宽度比的模型明显偏离趋势。 

在WebText2数据集上训练的模型,在其他各种数据集上的测试损失也是 N 的幂律,且幂律几乎相同,如上图所示。

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

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

相关文章

AcWing:90. 64位整数乘法

0x00 基本算法第二题 算法标签:位运算 来源:《算法竞赛进阶指南》 描述 求 a 乘 b 对 p 取模的值。 输入格式 第一行输入整数a,第二行输入整数b,第三行输入整数p。 输出格式 输出一个整数,表示a*b mod p的值。 数据范围 …

探索Python数据结构与算法:解锁编程的无限可能

文章目录 一、引言1.1 数据结构与算法对于编程的重要性1.2 Python作为实现数据结构与算法的强大工具 二、列表和元组2.1 列表:创建列表、索引、切片和常用操作2.2 元组:不可变序列的特性和使用场景 三、字符串操作和正则表达式3.1 字符串的常见操作和方法…

第十四届蓝桥杯省赛PythonB组

思路: // f[i] 定义为从前 i 个中选的最大价值 // 如果不选,那么从前 i - 1 转移而来 f[i] f[i - 1]; // 如果选,那么 i - 1不能选,从前 i - 2 转移而来 ,所以 f[i - 2] str[i] - a 1 // 至于为什么不是从前 i - 2 , i - 3 ...…

Spring Boot整和MyBatis!!!

目标&#xff1a; 实现添加功能实现查询功能实现删除功能实现修改功能添加日期转换器 1.搭建项目 1.1pom文件&#xff1a; <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><vers…

windows编译TensorFlowServing

概述 整个编译打包过程的总体思路&#xff0c;是参照在linux下的编译流程&#xff0c;配置环境&#xff0c;执行编译命令&#xff0c;根据编译器/链接器反馈的错误&#xff0c;修改相应的源码或者相关库文件的存放路径&#xff0c;编译出windows平台下静态库和二进制执行文件。…

BuildRoot配置RTL8822CE WIFIBT模块(WIFI部分)

TinkerBoard2主板自带的无线模块为RTL8822CE&#xff0c;PCIe接口 之前在风火轮下载的Linux源码编译出来的BuildRoot根文件系统没有相关的驱动文件 [rootrk3399:/]# find . -name *.ko [rootrk3399:/]# lsmod Module Size Used by Not tainted [rootrk33…

Dicom Tag: Image Position,Image Orientation和Patient Position

文章目录 Image Position&#xff0c;Image Orientation和Patient PositionImage Position (0020,0032):Image Orientation (0020,0037):Patient Position(0018,5100)&#xff1a; Image Position&#xff0c;Image Orientation和Patient Position 在DICOM图像中&#xff0c;I…

栈(顺序存储、链式存储)

栈的定义 栈&#xff08;Stack&#xff09;是只允许在一端进行插入或删除操作的线性表 栈的操作特性是后进先出LIFO&#xff08;Last In First Out&#xff09; 顺序存储 链式存储

三款非常实用的图片转换格式工具

BMP是一种常见的位图图像格式&#xff0c;而JPG则是互联网上广泛使用的图像格式。有时&#xff0c;为了满足特定的需求或更好的兼容性&#xff0c;我们需要将BMP格式转换为JPG格式。今天&#xff0c;我们将为您推荐三款实用的软件&#xff0c;帮助您轻松完成这一转换。 水印云…

C# typeof 与 示例的GetType()

创建两个类 namespace ConsoleApp1;public interface IBagItem {public uint UId { get; set; } }public class BagItem : IBagItem {public uint UId { get; set; } }public class DreamIslandBagItem : IBagItem {public uint UId { get; set; } } 测试 namespace Consol…

QT 原生布局和QML的区别

一、QML 与 Qt Quick的区别 1.1 从概念上区分 为了更精确地对两者进行说明&#xff0c;先看助手对 QML 的描述&#xff1a; QML is a user interface specification and programming language. QML 是一种用户界面规范和标记语言&#xff0c;允许开发人员和设计师创建高性能、流…

端智能在大众点评搜索重排序的应用实践

1 引言 随着大数据、人工智能等信息技术的快速发展&#xff0c;云计算已经无法满足特定场景对数据隐私、高实时性的要求。借鉴边缘计算的思想&#xff0c;在终端部署 AI 能力逐渐步入大众的视野&#xff0c;“端智能”的概念应运而生。相比于传统的云计算&#xff0c;在智能手…

【Maven】008-Maven 私服搭建与使用

【Maven】008-Maven 私服搭建与使用 文章目录 【Maven】008-Maven 私服搭建与使用一、概述1、简介2、建立私服后依赖查找和下载逻辑第一步&#xff1a;请求本地仓库第二步&#xff1a;请求 Maven 私服第三步&#xff1a;请求外部远程仓库&#xff08;远程中央仓库等&#xff09…

常用的git diff命令用法汇总和示例

文章目录 1. 查看工作目录和暂存区的差异2. 查看暂存区和最后一次提交的差异3. 查看两个提交之间的差异4. 查看特定文件的更改5. 查看特定文件在两个提交之间的差异6. 查看分支之间的差异7. 查看某次提交的更改8. 限制diff输出的格式9. 查看一定时间范围内的更改 Git的diff命令…

动态路由协议

一、动态路由协议 动态路由协议&#xff0c;用在多个 Router 之间定期的、自动的、互相交换 Routes&#xff08;路由信息&#xff0c;包含了网段信息、可达性信息、路径信息等&#xff09;&#xff0c;动态生成 Routing Table Entries&#xff0c;并最终达到全网的路由收敛&am…

智慧校园大数据平台概述

背景 2015年是中国的智慧校园大数据元年,政府、企业、学校、研究者、管理者、教师、社会公众等都开始关注智慧校园大数据,相关政策文件、研究机构、学术活动、市场产品等开始纷纷出现。然而,我国的智慧校园大数据研究与实践领域整体还处于起步探索阶段,是在“摸着石头过河…

近4w字吐血整理!只要你认真看完【C++编程核心知识】分分钟吊打面试官(包含:内存、函数、引用、类与对象、文件操作)

&#x1f308;个人主页&#xff1a;godspeed_lucip &#x1f525; 系列专栏&#xff1a;C从基础到进阶 &#x1f3c6;&#x1f3c6;关注博主&#xff0c;随时获取更多关于C的优质内容&#xff01;&#x1f3c6;&#x1f3c6; C核心编程&#x1f30f;1 内存分区模型&#x1f384…

力扣hot100 颜色分类 双指针 滚动赋值

Problem: 75. 颜色分类 文章目录 思路解题方法复杂度Code&#x1f496; 超简洁版 思路 解题方法 描述你的解题方法 复杂度 时间复杂度: O ( n ) O(n) O(n) 空间复杂度: O ( 1 ) O(1) O(1) Code class Solution { public void sortColors(int[] nums){int n nums.length…

Relation-Aware Graph Transformer for SQL-to-Text Generation

Relation-Aware Graph Transformer for SQL-to-Text Generation Abstract SQL2Text 是一项将 SQL 查询映射到相应的自然语言问题的任务。之前的工作将 SQL 表示为稀疏图&#xff0c;并利用 graph-to-sequence 模型来生成问题&#xff0c;其中每个节点只能与 k 跳节点通信。由…

项目沟通管理和干系人管理

沟通管理3项&#xff1a;规划沟通管理&#xff0c;管理沟通&#xff0c;控制沟通 沟通渠道&#xff1a;Mn*&#xff08;n-1&#xff09;/2&#xff0c;n是人数大于等于1 沟通噪音&#xff1a;外部&#xff0c;内部&#xff0c;语义噪音 沟通方式3类&#xff1a;参与讨论方式&…