推翻OpenAI结论,DeepMind重新定义预训练的参数和规模关系!

news2024/11/18 16:39:12

5a08b86081adff6fabf05a50ab49a861.jpeg

文|王思若

前言

从20年开始,“最大语言模型”的桂冠被各大研究机构和科技公司竞相追逐,堆砌参数,猛上算力,开启了“大炼丹”时代,模型参数量仿佛越大越好,甚至GPT-4模型参数量将超过100万亿的传闻甚嚣尘上。

当把视角落在今年下半年,大模型的“军备竞赛”似乎戛然而止,22年4月,Google发布了5400亿参数的PaLM荣登“大模型”榜首,然而到现在,似乎也没有出现更大规模的模型。在所有人热情和兴奋消退的背后,其实是盲目跟风追求大模型之后的“一地鸡毛”,改改框架,换换数据,加大参数量,这种万能的公式似乎不太奏效了,更大的模型似乎也只是产生了渐进式的进步。

920ee39b52308bad3e6cc90dc8697ca6.png

问题出在了哪里?DeepMind在模型投入产出比角度进行了分析,研究表明,目前大多数大型语言模型训练不足,GPT-3、Gopher、Megatron-Turing NLG等一众大模型在成倍增大参数规模的时候,并没有成比例的增加训练数据,导致并没有完全实现大模型的最大功效,研究工作发表在NeurIPS2022并获得了Outstanding Paper。

论文题目: 
Training Compute-Optimal Large Language Models

论文链接: 
https://arxiv.org/pdf/2203.15556.pdf

重新定义缩放法则(Scaling Laws)

在大模型训练时,有三个及其重要的考量,分别是:计算量,模型参数规模以及数据集大小。早在2020年,OpenAI对其进行了探讨并提出了缩放法则(Scaling Laws),训练最佳计算效率的模型需要在相对适中的数据量上训练非常大的模型并在收敛之前early stopping,简单来说,模型参数规模几乎就是一切![1]

e79a2ee630e2d10c1722a4bb58a35ff4.png

上图所示,给定计算量,模型性能的提升主要在于增加参数规模,例如,计算量增加10倍,模型规模要增加5倍,训练数据增加2倍;计算量增加100倍,模型规模增加10倍,训练数据仅增加4倍即可。

这给了后续工作足够的动力去专注于提升参数规模,设计越来越大的模型,而不是在更多的数据上训练较小的模型,由此,模型“大炼丹”时代开启,从NLP,CV再到AI4Science,大规模语言模型俨然成为了AI社区的主流研究方向。

6d57927dbdea64ad084c6a648867e8d8.png

然而,DeepMind证伪了OpenAI的大模型缩放法则,重现定义了最优模型训练的参数规模和训练数据量之间的关系,再此基础上训练了最优的语言模型Chinchilla,实现了700亿参数量性能超越5300亿参数量的MT-NLG。

大规模语言模型受到不同因素的影响,其中,模型性能强烈依赖于参数规模N,数据集大小D和计算量C,DeepMind研究人员围绕这样的问题进行了探索:在给定计算量(FLOPs,即每秒浮点运算次数)时,如何权衡模型参数规模和训练数据集大小?

我们从两个角度进行分析:

1. 固定模型参数规模

研究人员构造了从70M到10B不同参数规模的模型,每个模型都在4种不同规模大小的训练数据集上进行训练。随着模型训练步数的增加(计算量FLOPs从增加到),训练loss逐渐降低(左图)。从所有训练曲线中,观察固定计算量的前提下训练loss最低的模型曲线,进而,我们可以画出不同计算量下最优模型的参数规模(中间图)和训练数据量(右图)。18348940381f00da54ab83017720d6b0.png

由此,我们可以获得给定计算量,最佳计算效率的模型参数规模、训练数据集大小,其中和值都是0.5。由此,模型训练时,训练数据集要随着模型参数规模的增加而同等扩增。

2. 固定计算量

在给定计算量的前提下,可以看到参数规模和训练数据更加直观的关系,对于到 9种不同规模的计算量(右图),每条曲线反应了不同参数规模的模型在给定计算量下的训练loss,在每条曲线最小值的左侧,模型规模太小了——在较少数据下训练较大模型将是一种改进;在每条曲线最小值的右侧,模型规模太大了——在较多数据下训练较小模型将是一种改进,计算效率最优的模型位于曲线最小值处。8221be7df3ec2cf7ec1dafb35b3ef252.png

如果把每条曲线的最小值连接起来,你其实就会发现大模型全新的缩放法则,即模型规模增加一倍,训练数据集也应同样加倍(中间图和右图所示),模型训练时,数据规模和参数量同等重要。

为了进一步验证该定律,DeepMind使用与2800 亿参数的 Gopher 相同的计算量,训练了仅700亿参数的模型Chinchilla,参数规模缩减到1/4的同时,训练数据增加了4倍。

c3ad48e1f396b932c8c22db53e6052bb.png

通过将Chinchilla和其他大模型在问答能力、常识、阅读理解和大型多任务语言理解能力基准数据集上进行比较,Chinchilla的评测结果都显著优于Gopher,甚至比参数规模是其7.6倍的MT-NLG性能都优越,稳坐大模型性能排行的第二把交椅(第一是目前参数规模最大的模型PaLM)。

4bacf5e6fe462203ca823de72b609f69.png

结语

DeepMind通过实证分析为业内盲目扩增模型参数规模的现状敲响了警钟,在您拥有 200 倍于Chinchilla 所使用的计算量之前,您不会需要构造万亿参数量的大模型。在过去的道路里,大型语言模型的大小每年都在增长 10 倍[2],慢慢的大家开始认识到继续这条道理会导致收益递减、成本增加同时伴随着新的风险,因此,未来的趋势将不再是海量数据+超大算力的暴力美学,超大模型的拥趸们不用在执着于参数规模,如何发掘大模型的全部潜能将成为新的聚焦点。

没有人知道未来通用人工智能(AGI)究竟会以何种方式达到,但值得确信的一点是绝不可能是通过堆砌参数实现,而过往的两年间,国内似乎有太多研究机构去争抢“最大规模模型”的称谓,他们不清楚单凭规模是否可以引导我们走向智能,他们同样不清楚之后要走向哪里。借用曹越在知乎的发言“希望各个领域的研究者,特别是相对比较senior的研究者们,真的花些时间去理解现在世界最前沿的研究进展到了什么阶段,多看一些墙内墙外的examples,甚至自己去试一试,努力去理解后GPT3时代语言模型的能力,这真的比再在自己的领域中固步自封重要太多了。[3]”

f3a3802c7a5f4186d0b84097dc1ef9b4.jpeg后台回复关键词【入群

加入卖萌屋NLP、CV、搜推广与求职讨论群


b2b54efa9fe75941571bf4f6fae6fb4b.png

[1]Scaling Laws for Neural Language Models

[2]https://www.lesswrong.com/posts/midXmMb2Xg37F2Kgn/new-scaling-laws-for-large-language-models

[3]https://www.zhihu.com/question/570189639/answer/2787763735

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

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

相关文章

14年本科毕业,3个月转行软件测试月薪13.5k,32的岁我终于找对了方向

​职场奋斗的过程,其实就是不停地做选择,做判断的过程。决定你发展的,多数取决于你的判断和眼光。你任何的投入,都决定了你未来的格局和结局。今天跟大家分享的我的转行故事,一起来看看吧。 为了新的目标和方向&#x…

PDF怎么拆分/合并? 3款 PDF 拆分和合并工具分享

以PDF格式传输文档已广泛使用很长时间,也是传输文档的最常见方式之一。但是,当涉及到从众多PDF文件中提取特定页面并将它们放在一起以制作新的PDF文档时,我们将需要专用软件来合并和拆分多个PDF。 现在,如果您想知道,…

叶面积指数(LAI)介绍以及遥感估算方法

前言 叶面积指数精度是正确预测产量的重要参数之一。 同时,还有那么多疑问,如何才能正确? 以及如何使用最有效的方法计算叶面积指数(LAI)? 什么是最佳 LAI? 哪些估算叶面积指数精度的方法比较好…

Matplotlib基础绘图函数示例

1. pyplot基础图表函数概述 2. pyplot饼图的绘制 3. pyplot直方图的 绘制 4. pyplot极坐标图的绘制 5. pyplot散点图的绘制 单元小结

[附源码]Python计算机毕业设计果蔬预约种植管理系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

内部分享讲解DevOps后,我再组织成文

DevOps 已然家喻户晓,如果你还没听过,那确实要去补补课。随着敏捷研发的普及,一种快速响应业务、高效运维的模式必然深得众心,Git 的发展近来几乎在代码管理领域一骑绝尘,在此基础上衍生出 GitOps 的概念,成…

MR案例:计算学生成绩(总分和平均分)

文章目录一、提出任务二、完成任务(一)准备数据1、在虚拟机上创建文本文件2、上传文件到HDFS指定目录(二)实现步骤1、创建Maven项目2、添加相关依赖3、创建日志属性文件4、创建成绩映射器类5、创建成绩驱动器类6、启动成绩驱动器类…

JVM本地锁(一)简单实现

JVM本地锁由ReentrantLock或synchronized实现 模拟场景 假设有个共享库存资源,多线程进行访问,每次访问库存-1. Data public class StockDemo {private Integer stock 5000; }再controller -> service 进行访问调度 Service public class StockD…

题:付账问题

1235. 付账问题 - AcWing题库 几个人一起出去吃饭是常有的事。 但在结帐的时候,常常会出现一些争执。 现在有 nn 个人出去吃饭,他们总共消费了 SS 元。 其中第 ii 个人带了 aiai 元。 幸运的是,所有人带的钱的总数是足够付账的&#xff…

ctf笔记:php

ctf笔记:php 博客链接:https://www.blog.23day.site/articles/80 语法 攻防世界:easy_php 攻防世界:simple_php $a $b等于TRUE,如果类型转换后 $a 等于 $b。$a $b全等TRUE,如果 $a 等于 $b&#xff0c…

【封神台】辛巴猫舍-SQL注入

本节学习目标: 判断是否存在SQL漏洞,以便注入获取数据库的内容本节需知: SQL注入%20为空格的url代码环境为打靶环境1. 判断是否存在SQL漏洞 http://cntj8003.ia.aqlab.cn/index.php?id1%20and%2011 http://cntj8003.ia.aqlab.cn/index.php…

注册VMware虚拟机时报错“指定的项、名称或标识符已存在“

环境 VMware虚拟化平台 问题描述 收到业务侧报障,多台Linux虚拟机无法登录。经查询,报障的Linux操作系统均部署在VMware虚拟化平台,承载的宿主机已宕机且无法启动,虚拟机为断连状态。虚拟机移除清单,离线迁移&#…

图片识别转公式,GitHub 又一 LaTeX 神器面世

​ 编辑切换为居中 添加图片注释,不超过 140 字(可选) 只需要把公式图片用鼠标拖动到工具内,就能一键转成 LaTex 公式。 写论文、做研究时,最让你头疼的是什么?想必公式编辑会榜上有名。那么有没有便捷的…

<Linux进程通信之管道>——《Linux》

目录 一、进程通信 1.进程间通信介绍 2.进程间通信目的 3.进程间通信发展 4.进程间通信分类 二、管道 1.什么是管道 2.匿名管道 3.用fork来共享管道原理 4.站在文件描述符角度-深度理解管道​编辑 5.编程模拟实现父子进程在管道读写通信​编辑 6.进程控制&#xff…

【DevOps实战系列】第一章:详解DevOps运行环境

个人亲自录制全套DevOps系列实战教程 :手把手教你玩转DevOps全栈技术 DevOps是什么? DevOps(Development和Operations的组合词)是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops&#x…

子序列的权值最小值

链接:登录—专业IT笔试面试备考平台_牛客网 来源:牛客网 给定一个长度为 nnn 的数组 aaa,求数组所有非空子序列权值的最小值。 定义子序列 ai,aj,…,aka_i,a_{j},\dots,a_kai​,aj​,…,ak​ 的权值为 其中 &\&& 为二进制中…

Nat. Commun. | 基于最优传输的单细胞数据集成统一计算框架

本文介绍由同济大学控制科学与工程系的洪奕光和中国科学院数学与系统科学研究院的万林共同通讯发表在 Nature Communications 的研究成果:单细胞数据集成可以提供细胞的全面分子视图。然而,如何整合异质性单细胞多组学以及空间分辨的转录组学数据仍然是一…

Linux C编程一站式学习笔记3

lLinux C编程一站式学习笔记 chap3 简单函数 文章目录lLinux C编程一站式学习笔记 chap3 简单函数一.数学函数C标准库和glibc二.自定义函数三.形参和实参Man Page习题四.全局变量、局部变量和作用域局部变量 local variable全局变量 global variable全局变量和局部变量重名的情…

【linux】linux centos 6 日志服务、rsyslogd日志服务

1.概述 在CentOS 6.x中日志服务已经由rsyslogd取代了原先的syslogd服务。rsyslogd日志服 务更加先进,功能更多。但是不论该服务的使用,还是日志文件的格式其实都是和 syslogd服务相兼容的,所以学习起来基本和syslogd服务一致。 rsyslogd的新特点: 基于TCP网络协议传输日志…

测试人,为什么建议你要去大厂看一下,绝不仅仅是为了薪资和面子

📌 博客主页: 程序员二黑 📌 专注于软件测试领域相关技术实践和思考,持续分享自动化软件测试开发干货知识! 📌 公号同名,欢迎加入我的测试交流群,我们一起交流学习! 之前…