聊一聊“超大模型”

文 | 金雪锋
源 | 知乎

最近经常被问,你看“万亿的模型都出来了,你们训练的千亿模型是不是落伍了?”我想说:“虽然都叫超大模型,但是类型是不一样的,虽说每一类模型训出来都不容易,不过澄清一下概念还是必要的”。

大概盘算了一下,一年多来,业界发布了非常多的大模型,从去年OpenAI GPT-3 1750亿参数开始,到年初华为盘古大模型 1000亿,鹏程盘古-α 2000亿参数,Google switch transformer 1.6万亿;及近期的智源悟道2.0 1.75万亿参数 MoE,快手1.9万亿参数推荐精排模型,阿里达摩院M6 1万亿参数等;很多小伙伴看的是眼花缭乱,那究竟这些模型有没有差异?如果有差异,差异在哪里?

首先我想说这些模型都是基于Transformer结构,但是在模型扩展上有非常大的不同。

从计算角度看,我们可以把这些大模分成3类

  1. 稠密Transformer: OpenAI GPT-3,华为盘古/鹏程盘古α(MindSpore支撑);模型规模的扩展是全结构的扩容;

  2. 稀疏MoE结构Transformer: Google Switch Transformer,智源悟道2.0,阿里M6。一般来说是选择一个基础的稠密模型,通过MoE稀疏结构扩展FFN部分,以此来达成模型的扩容;

  3. 高维稀疏特征推荐模型: 快手推荐精排,我理解主要是推荐的高维稀疏特征Embedding需要超大参数;

推荐类模型是一个比较独立的计算特征网络,这个我们最后分析。其中相似性非常大的是稠密Transformer和稀疏MoE结构Transformer,下面我们以Google Switch Transformer来对比两者的差异。

下面两张图是Google Switch Transformer论文中和T5的对比,Switch Transformer是基于T5,通过MoE稀疏结构扩展。我们用Switch-Base作为这次分析对比基准。

Switch-Base是基于T5-Base的MoE稀疏扩展,模型参数规模比T5-Base大33倍,从计算角度看,内存开销是T5的33倍,算力开销和T5-Base一致。同时,我们拿Switch-Base和T5-Large做一个对比。Switch-Base参数规模是T5-Large的10倍,也就是说内存开销是T5的10倍,算力开销是T5-Large的29%;

从下面这个表格的下游任务对比来看,在同样的算力开销下,Switch-Base的效果比T5-Base整体上要好,这个优势是通过33倍的内存开销换取的;但是同时,Switch-Base在参数量比T5-Large大了10倍的情况下,效果比T5-Large要差一些。

所以我们不能单纯从参数规模来衡量一个网络的效果,需要通过参数量和计算量来综合对比,需要我们探索一种新的指标,综合考虑内存和算力开销来评估一个模型。

另外,从Switch Transformer 1.6万亿模型来看,其计算量只有稠密T5 130亿参数的10%,参数量是其100倍;如果从每个参数消耗的算力来计算,1.6万亿稀疏模型只是稠密的千分之一,即1.6万亿参数的Switch Transformer的计算量相当于10亿参数的稠密的Transformer。

那么从训练角度来看,MoE大模型的计算量较少,重点是做好模型参数的切分,从switch transformer的实践看,主要使用数据并行+MoE并行的组合;而稠密的Transformer计算和通信量非常大,所以盘古-α需要在2K张卡上进行训练,同时也需要复杂的pipeline并行/算子级模型并行/数据并行等并行切分策略来确保2k集群的算力能被充分利用,个人认为训练挑战更大。

从推理的角度看,MoE的模型参数量非常大,我觉得可能需要通过蒸馏/量化等手段进行压缩才更适合使用,挑战很大,也是MoE模型推广面临的障碍。

快手的1.9万亿参数网络,是一种高维稀疏推荐网络,拿Google Wide&Deep来对比更为恰当。快手推荐网络的优化,应该是在后面的DNN层用了Transformer结构,而模型头部的Embedding部分还是保持和传统深度学习推荐网络类似(没有找到相关论文,不对请指正)。这类型网络,为了表达高维稀疏特征,会有一个超级大的Embedding,参数主要是集中在头部的特征Embedding部分。这种类型网络的训练方式和前面讲的完全不同,核心技术是Embedding的模型并行,以及CPU/NPU的协同计算和存储。华为诺亚实验室在今年SIGIR 2021上发表的“ScaleFreeCTR: MixCache-based Distributed Training System for CTR Models with Huge Embedding Table”是目前一种最好的训练方案之一,也将会在MindSpore上开源。这里就不再展开分析。

除了Transformer这种算法结构外,还是有CNN类的超大模型,也可以分成两类,这两类模型也是稠密的,参数量和计算量是成正比。

  1. 超大分类层:超大规模人脸识别、图像分类网络,其典型特征是CNN特征抽取之后的FC分类层超级大。例如千万ID的人脸识别,FC层的参数规模就达到了50亿。

  2. 超大Activation:遥感和超高分辨率图像处理,这类网络参数量不大,和传统CNN的参数量类似,在百M级别。但是这种模型的输入数据以及计算过程中的Activation非常大。以遥感为例,平均输入样本的分辨率就有[30000, 30000, 4],一个样本就有3.6GB,大的图像有10GB以上,中间层Activation也是GB级别的大小。

所以,总的来说在NLP、多模态、推荐、图像处理领域都有大模型,目前业界比较火热讨论的主要是基于Transformer+MoE结构的NLP及多模态大模型,我们期望通过这篇文章,让小伙伴能了解这些模型在计算上的差异。

寻求报道、约稿、文案投放:
添加微信xixiaoyao-1,备注“商务合作”

后台回复关键词【入群

加入卖萌屋NLP/IR/Rec与求职讨论群

后台回复关键词【顶会

获取ACL、CIKM等各大顶会论文集!

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

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

相关文章

技术动态 | 不确定性知识图谱的表示和推理

本文转载自漆桂林知乎。作者 | 张嘉韬、漆桂林、吴天星文章链接 | https://zhuanlan.zhihu.com/p/369068016

LeetCode 665. 非递减数列(双指针)

1. 题目 给定一个长度为 n 的整数数组&#xff0c;你的任务是判断在最多改变 1 个元素的情况下&#xff0c;该数组能否变成一个非递减数列。 我们是这样定义一个非递减数列的&#xff1a; 对于数组中所有的 i (1 < i < n)&#xff0c;满足 array[i] < array[i 1]。…

数据还是模型?人类知识在深度学习里还有用武之地吗?

文 | Severus编 | 小戏近些年来&#xff0c;随着数据量越来越多&#xff0c;算力价格越来越便宜&#xff0c;根植于数据算力的深度学习茁壮成长。在这种背景下&#xff0c;作为一种强有力的表示学习方法的深度学习让人们惊讶的发现&#xff0c;只要投喂足够多的数据&#xff0c…

LeetCode 130. 被围绕的区域(图的BFS/DFS)

文章目录1. 题目2. 解题2.1 BFS2.2 DFS1. 题目 给定一个二维的矩阵&#xff0c;包含 ‘X’ 和 ‘O’&#xff08;字母 O&#xff09;。 找到所有被 ‘X’ 围绕的区域&#xff0c;并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。 示例: X X X X X O O X X X O X X O X X 运行你的…

论文浅尝 - ECIR2021 | 两种实体对齐方法的严格评估

笔记整理 | 谭亦鸣&#xff0c;东南大学博士生来源: ECIR 2021在这篇工作中&#xff0c;作者对两种SOTA实体对齐方法做了广泛的研究&#xff1a;首先仔细分析了现有benchmark的过程&#xff0c;并论证了其中存在一些缺陷&#xff0c;使得原始方法给出的实验结果之间可能存在不可…

Android App包瘦身优化实践

随着业务的快速迭代增长&#xff0c;美团App里不断引入新的业务逻辑代码、图片资源和第三方SDK&#xff0c;直接导致APK体积不断增长。包体积增长带来的问题越来越多&#xff0c;如CDN流量费用增加、用户安装成功率降低&#xff0c;甚至可能会影响用户的留存率。APK的瘦身已经是…

NLP界新SOTA!吸纳5000万级知识图谱,一举刷爆54个中文任务!

大家还记得2019年底首次将GLUE榜单分数刷过90大关的百度ERNIE模型吗&#xff1f;在随后一年多的时间里&#xff0c;又陆续出现了GPT-3、Switch Transformer等一众靠模型体量取胜的千亿乃至万亿参数规模的超大预训练模型&#xff0c;似乎新训一个预训练模型没有个千亿参数都不好…

LeetCode 543. 二叉树的直径(DFS)

1. 题目 给定一棵二叉树&#xff0c;你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过根结点。 示例 : 给定二叉树1/ \2 3/ \ 4 5 返回 3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。注意&#xff1a;两结点之…

论文浅尝 | 用于嵌套命名实体识别的二部平面图网络(BiFlaG)

笔记整理 | 栾岱洋&#xff0c;东南大学来源&#xff1a;ACL 2020链接&#xff1a;https://www.aclweb.org/anthology/2020.acl-main.571.pdf本文提出了一种可以实现重叠主体的识别的BiFlaG&#xff08;bipartite flatgraph network&#xff09;模型&#xff0c;包含两个子图模…

不是所有问题都适合用神经网络去搞!

文 | YukiRain知乎不是所有问题都适合用神经网络预测&#xff0c;YukiRain总结了以下几种不适合用神经网络做预测的场景&#xff1a;小样本情况&#xff0c;无论是低维还是高维&#xff0c;不如SVM和贝叶斯模型低维数据&#xff0c;大样本量&#xff0c;不如各种ensemble类算法…

从Google白皮书看企业安全最佳实践

前不久Google发布了一份安全方面的白皮书Google Infrastructure Security Design Overview&#xff0c;直译的版本可以参考“网路冷眼”这版《Google基础设施安全设计概述》&#xff0c;直译点评的版本可以参考“职业欠钱”的《Google基础设施安全设计概述翻译和导读》。 此前G…

LeetCode 415. 字符串相加(大数加法)

1. 题目 给定两个字符串形式的非负整数 num1 和num2 &#xff0c;计算它们的和。 注意&#xff1a;num1 和num2 的长度都小于 5100. num1 和num2 都只包含数字 0-9. num1 和num2 都不包含任何前导零。 你不能使用任何內建 BigInteger 库&#xff0c; 也不能直接将输入的字符串…

会议交流 | 智能风控技术峰会(请关注图分析相关论坛)

2021年5月15日&#xff0c;9:00-18:00&#xff0c;DataFunSummit——智能风控技术峰会将如约而至&#xff0c;本次峰会由3位主席和8位出品人精心策划而成&#xff0c;邀请来自业界的40余位嘉宾从风控系统的架构&#xff0c;到智能风控的核心算法&#xff0c;再到内容、金融、交…

深度学习,路在何方?

文 | Severus最近&#xff0c;AI领域的三位图灵奖获得者Yoshua Bengio、Yann LeCun和Geoffrey Hinton共同发表了一篇文章&#xff0c;名为Deep Learning for AI&#xff0c;文中讨论了深度学习的起源、发展、成就及未来。文章标题&#xff1a;Deep Learning for AI原文链接&…

前端渲染引擎doT.js解析

背景 前端渲染有很多框架&#xff0c;而且形式和内容在不断发生变化。这些演变的背后是设计模式的变化&#xff0c;而归根到底是功能划分逻辑的演变&#xff1a;MVC—>MVP—>MVVM&#xff08;忽略最早混在一起的写法&#xff0c;那不称为模式&#xff09;。近几年兴起的R…

elasticsearch7使用指导

目录结构&#xff1a; 一、es概述 二、es安装/head插件安装/kibana安装 三、es核心概念 四、IK分词器 五、RestFul操作 六、CRUD(增删改查) 七、Springboot集成es ---------------------------------------分割线&#xff1a;正文------------------------------------…

开源开放 | 欢迎选修浙江大学《知识图谱》开放共享慕课

点击“阅读原文”或扫描图中二维码进入课程教学计划第一章知识图谱概论1.1 语言与知识1.2 知识图谱的起源1.3 知识图谱的价值1.4 知识图谱的技术内涵第二章知识图谱的表示2.1 什么是知识表示2.2 人工智能历史发展长河中的知识表示2.3 知识图谱的符号表示方法2.4 知识图谱的向量…

LeetCode 43. 字符串相乘(大数乘法)

文章目录1. 题目2. 小学竖式乘法2.1 普通版2.2 优化版1. 题目 给定两个以字符串形式表示的非负整数 num1 和 num2&#xff0c;返回 num1 和 num2 的乘积&#xff0c;它们的乘积也表示为字符串形式。 示例 1: 输入: num1 "2", num2 "3" 输出: "6&q…

旅游推荐系统的演进

度假业务在整个在线旅游市场中占据着非常重要的位置&#xff0c;如何做好做大这块蛋糕是行业内的焦点。与美食或酒店的用户兴趣点明确&#xff08;比如找某个确定的餐厅或者找某个目的地附近的酒店&#xff09;不同&#xff0c;旅游场景中的用户兴趣点&#xff08;比如周末去哪…

预训练卷不动,可以卷输入预处理啊!

文 | 德志编 | 小戏目前伴随着预训练预言模型的兴起&#xff0c;越来越多的 NLP 任务开始脱离对分词的依赖。通过 Fine-Tune Bert 这类预训练预言模型&#xff0c;能直接在下游任务上取得一个很好的结果。同时也有文章探讨中文分词在神经网络时代的必要性。对于分词任务本身也是…