datasheet

QbitAI量子位

文章数:1711 被阅读:20240101

账号入驻

英伟达“暴力碾压”谷歌:53分钟训练完BERT,2.2毫秒完成推理,创下NLP三项新纪录

2019-08-14
    阅读数:
边策 发自 凹非寺 
量子位 报道 | 公众号 QbitAI

AI硬(he)件(dan)厂商英伟达今天宣布,他们在NLP模型上取得了三大突破,为今后会话AI的落地应用铺平了道路。

英伟达用自己的硬件与并行计算软件相结合,在BERT模型的训练和推理上创下三项世界纪录:

  1. 最快的BERT训练速度,只需53分钟

  2. 最快的BERT推理速度,只需2.2ms

  3. 最大的BERT模型,包含83亿参数

今年以来,NLP领域的“军备竞赛”越来越激烈。基于Transformer架构的模型,如谷歌的XLNet和Facebook的RoBERTa,在GLUE、SQuAD这些基准测试榜单头名争夺中你方唱罢我登场。

两大公司为了刷榜的消耗了大量的时间和计算资源。为了提高BERT的训练速度,谷歌堆上了1024块TPU,用76分钟训练出了BERT模型。Facebook用上了1024个英伟达V100 GPU。

英伟达也不甘示弱,用1472个V100 GPU首次实现在一个小时之内训练完BERT模型。

英伟达表示,这项研究能够帮助企业使用实时会话AI更自然地与客户互动,帮助开发人员将最先进的NLP模型大规模部署在应用程序中。

最大的BERT模型

英伟达使用了92个DGX-2H节点、1,472个V100 GPU的DGX SuperPOD系统来训练BERT模型,将BERT-Large训练时间从几天缩短到到53分钟。

如果你觉得上面的堆硬件太过暴力,英伟达也给出更低配置下的训练速度。他们在“只有”16个V100 GPU的NVIDIA DGX-2用2.8天内训练了BERT-Large,展示了英伟达GPU对于会话AI的可扩展性。

考虑到开发人员对大型NLP模型不断增长的需求,英伟达建立并训练了世界上最大的基于Transformer的语言模型GPT-2 8B,它具有83亿个参数,是BERT-Large的24倍、GPT-2的5.6倍。

GPT-2 8B模型使用原生PyTorch进行训练,在512 GPU上有8路模型并行和的64路数据并行。实验是在DGX SuperPOD上进行的,其基准模型为12亿个参数,适用于单个V100 GPU。在单个GPU上运行此基线模型的端到端训练pipeline可实现39 TeraFLOPS的算力,这是V100 GPU的理论峰值算力的30%。

通过8路并行模型将模型扩展到512个GPU上的83亿个参数,NVIDIA团队在整个应用程序中实现了高达15.1 PetaFLOPS的持续性能,并且与基线相比达到了76%的扩展效率。

为了研究这些几十亿参数的Transformer(变形金刚)网络,英伟达还开源了Megatron威震天项目。

最快的推理速度

上面的推理部分太过“烧钱”,而英伟达在BERT推理上取得的进步可以让普通开发者也能用上。因为现在一些实时处理的任务也开始用上了Transformer,比如语音合成(TTS)、语音识别(ASR)。

但是Transformer在这些落地化场景中却遇到了困难。这是因为在推理部署阶段,计算性能会面临巨大的挑战。以BERT为原型的多层Transformer模型,其性能常常难以满足在线业务对于低延迟和高吞吐的要求。

于是,英伟达提出了Faster Transformer,并在GitHub上开源了代码。

Faster Transformer是一个BERT Transformer单层前向计算的高效实现,代码简洁,后续可以通过简单修改支持多种Transformer结构。

目前优化集中在编码器(encoder)的前向计算。底层由CUDA和cuBLAS实现,支持FP16和FP32两种计算模式,其中FP16可以充分利用Volta和Turing架构GPU上的张量核心单元。

英伟达使用运行TensorRT的T4 GPU,仅在2.2毫秒内就对BERT-Base SQuAD数据集进行了推理,远低于许多实时应用的10毫秒处理阈值。

英伟达测试了不同生产环境下Faster Transformer前向计算的执行时间以及与TensorFlow XLA的性能比较。

在小batch size情况下,12层Transformer在P4和T4上的性能表现如下:

固定句子长度为32,标准模型和裁剪模型在不同batch size下,12层Transformer在V100上实现了2倍的速度提升:

传送门

Megatron开源地址:
https://github.com/NVIDIA/Megatron-LM

Faster Transformer开源地址:
https://github.com/NVIDIA/DeepLearningExamples/tree/master/FasterTransformer


加入社群 | 与优秀的人交流

小程序 | 全类别AI学习教程


量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态

喜欢就点「好看」吧 !




最新有关QbitAI的文章

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: TI培训

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2018 EEWORLD.com.cn, Inc. All rights reserved