软硬件技术突破,微软创建拥有高达170亿个参数的语言产生模型

微软发布最新语言产生模型T-NLG(Turing Natural Language Generation),该模型具有170亿个参数,远高于BERT与GPT-2等知名模型,在神经语言任务的表现上也都更好,为语言产生模型技术设立了一个新的标竿。目前微软向学术与研究人员发布T-NLG范例,展示其自由格式生成、问答以及总结等能力。

无论是Google的BERT模型抑或是OpenAI的GPT-2模型,皆具有几十亿个参数,已经大幅改善自然语言处理能力,而更好的自然语言生成能力,可以应用在各种应用程序上,协助作者撰写内容、总结文本或是改善数字助理的的用户体验。过去的问答或是摘要系统,都是直接从文件中截取现有内容,但是产生的结果通常不够自然或是不连贯,而借助语言产生模型,则能够产生更自然的结果。

微软提到,模型越大,预训练数据越多样化越全面,得到的结果也就越好,而且训练一个大型集中式的多任务模型,用在处理各种任务,比起为每种任务训练个别的模型更为有效率。因此微软创建了基于Transformer,有史以来最大的语言产生模型T-NLG,可生成单词以完成开放式的文本任务,除了补完不完整的句子之外,还可以回答问题与总结文件等。

而微软之所以可以产生这么大的模型,是因为硬件和软件技术的突破。凡是超过13亿个参数的模型,都无法放进单个GPU,因此大型模型必需要可以分解成多个部分,并在多个GPU之间平行处理。微软使用Nvidia DGX-2配置,以InfiniBand连接加速GPU之间的通信,并且使用Nvidia Megatron-LM框架,以张量切分(Tensor Slicing)技术分片模型到4个V100 GPU上。

另外,微软也运用DeepSpeed函数库以及ZeRO优化方法,使每个节点的批处理大小能够增加4倍,降低模型平行化维度从16降至4,有效降低3倍训练时间。DeepSpeed是一个能够降低模型延迟,和提升预测效率的深度学习函数库,微软表示,DeepSpeed让他们使用更少的GPU训练大型模型。而ZeRO则是一种内存优化方法,用于训练拥有上万亿参数的模型。

与其他模型相比,在标准语言任务WikiText-103测量指标困惑度的表现,T-NLG比OpenAI的GPT-2和Megatron都还要低,而LAMBADA的下一个单词预测精确度,也比另外两个模型表现还要好。T-NLG还能应对零次问答,也就是T-NLG模型不需要上下文,就能够直接给出问题的答案,而这完全依赖预训练过程的知识来生成答案。

T-NLG能够像人类一样产生文件摘要,微软提到,自然语言处理产生摘要的方法有两种,一种是截取文件中少量的句子,作为产生摘要的基础,另一种则是像人类一样,以抽象的方式产生摘要。而模型以抽象方式产生摘要的困难,在于缺乏监督式训练数据,但T-NLG的优势是非常了解文本,因此不需要太多监督式训练,就能胜任文本总结的工作。

T-NLG模型将被用在微软的各种服务上,包括总结文件和电子邮件,以节省用户的时间,也会被用于微软Office中,为用户提供写作协助,或是为文件产生常见问答,进一步T-NLG还将用在聊天机器人与数字助理上,用于协助提升销售与客户关系管理效率。