谷歌机器学习训练有史以来最大版本 BERT 模型,参数规模 4810 亿
机器学习领域权威"跑分"MLPerf v1.1 训练榜单已出炉。
这次,在 BERT 模型的成绩表上有一个"异常"的数字:1196.638(分钟),来自谷歌。
怎么?谷歌训练一个 BERT 要接近 1 天,别家都只要几分钟?
这其实是谷歌从未透露的巨型版本 BERT,参数规模有 4810 亿,不是别人只有几亿参数那种的 BERT。
它也是谷歌今年在 MLPerf"非标准区"提交的一个作品:一共花了 2048 块 TPUv4,约 20 小时训练而成!
▲ TPUv4 芯片机架,谷歌数据中心
有史以来最大版本的 BERT
标准 BERT 模型(BERT Large)参数规模只有 3.4 亿,而此次 4810 亿的巨型 BERT 是有史以来最大的一个版本。
这俩之间直接差了好几个数量级。
而谷歌表示,训练大型模型正是公司的"重中之重"(主要用于云服务)。
所以此次他们根本没有参加任何标准分区里的跑分评比,只在非标准区"释放了自我"。
MLPerf 竞赛有俩分区:
Closed 区也就是标准区,参赛商在 ResNet-50 等规定模型上跑分;
Open 区也就是非标准区,参赛商可以尝试任何规定以外的模型和方法来达到目标性能。
在大多数参赛商都"挤"在标准区训练小规模的模型时,谷歌员工"凡尔赛"道:
"在短短几秒内'豪掷'4000 块芯片来训练巨型 BERT 才是真的酷(爽)。"
谷歌由此也希望 MLPerf 基准测试能引进更多的大模型,因为他们觉得现实中才不会像非标准区的参赛作品那样用那么多芯片来训练那么小的模型。
而此次的巨型 BERT 性能也不赖,它的预测准确率为 75%,比 MLPerf 要求的 72.2% 要高。
同时,和标准区其他参赛商一样,谷歌也用较少的文本数据样本来达到目标精度。
具体来说,标准区要求一个程序使用近 5 亿个 token 序列进行训练,每个序列的长度大多为 128 个 token。而 Google 只使用了大约 2000 万个序列,不过每个序列的长度为 512token。
另外,完成这次工作的 2048 块 TPU 系统一开始也是为了迎合公司的生产和研发需要,所以它并未"束之高阁"-- 目前已用于 Google Cloud 服务。
英伟达在标准区"战绩显赫"
其余 MLPerf 结果,主要在"标准区",一如既往,英伟达战绩最高。
比如它使用最新一代 GPU A100 的系统在训练 ResNet-50 花费的时间上包揽前四,其中最快只需 21 秒 -- 比今年 6 月 24 秒的最高成绩还快。
当然,此战绩一共花了 4320 个 A100,在 1080 个 AMD 的 EPYC x86 处理器的帮助下并行完成。
但在不拼芯片和主机处理器的情况下,竞争对手可就碾压起英伟达了。
其中英特尔 Habana 用 256 个 Gaudi 加速芯片,只需 3.4 分钟就训练好 ResNet-50。
Graphcore 则只需 3.8 分钟,用了 256 块 IPU 加速器芯片和 32 块 AMD EPYC 主机处理器。
英伟达在配备 16 个 EPYC 处理器的 64 路 A100 系统下,花了 4.5 分钟。
打败了英伟达的 Graphcore,则强调自己最看重性能和成本之间的平衡。
就比如 Graphcore 在 16 路系统上训练 ResNet-50 耗费 28 分钟,比英伟达 DGX A100 系统快一分钟,但他们用到的 POD-16 是 DGXA100 成本的一半。
此次参赛的其他厂商中,三星在电子训练普通版 BERT 的速度上获得了第二名,仅为 25 秒。花了 256 个 AMD 芯片和 1024 个英伟达 A100。
微软的 Azure 云服务首次参赛,它使用 192 个 AMD EPYC 处理器和 768 个 A100 在医疗数据上训练图像分割模型获得了最高分。
同时 Azure 也表示后续也会像谷歌那样在非标准区提交一些成绩,虽然微软和英伟达在此前不久发布了目前最大的模型"威震天-图灵",但他们表示:
许多公司希望将人工智能用于专一目的,而非需要 4000 块芯片才能运行的巨型语言模型。
更多评分结果大家可以参考官网数据。
榜单地址:点此访问
2022-05-06 14:45:48