关于人工智能:OPPO小布推出预训练大模型OBERT晋升KgCLUE榜首

59次阅读

共计 4515 个字符,预计需要花费 12 分钟才能阅读完成。

大规模预训练模型的呈现,为自然语言解决工作带来了新的求解范式,也显著地晋升了各类 NLP 工作的基准成果。自 2020 年,OPPO 小布助手团队开始对预训练模型进行摸索和落地利用,从“可大规模工业化”的角度登程,先后自研了一亿、三亿和十亿参数量的预训练模型 OBERT。

近期,OPPO 小布助手团队和机器学习部联结实现了十亿参数模型“OBERT”的预训练,该模型通过 5 种 mask 机制从 TB 级语料中学习语言常识,在业务上获得了 4% 以上的晋升;在行业比照评测中,OBERT 跃居中文语言了解测评基准 CLUE1.1 总榜第五名、大规模常识图谱问答 KgCLUE1.0 排行榜第一名,在十亿级模型上进入第一梯队,多项子工作得分与排前 3 名的百亿参数模型成果十分靠近,而参数量仅为后者的十分之一,更有利于大规模工业化利用。


图 1 CLUE1.1 总榜,共 9 个子工作


图 2 KgCLUE1.0,常识图谱问答榜

背景

随着 NLP 畛域预训练技术的疾速倒退,“预训练 + 微调”逐步成为解决用意辨认等问题的新范式,通过小布助手团队后期的摸索和尝试,在百科技能分类、闲聊语义匹配、浏览了解答案抽取、FAQ 精排等场景曾经上线了自研一亿级模型并获得了显著的收益,并仍有晋升的空间,验证了进一步自研十亿级模型并推广落地的必要性。

小布助手场景波及用意了解、多轮聊天、文本匹配等 NLP 工作,联合工作 [6,14] 的教训,小布助手团队预训练到业务落地会按图 3 所示的形式进行,包含 Pretraining、Futher-Pretraing、Fine-tuning&Deployment 等阶段。次要有四个特点:
一是表征解耦,对立表征器适配不同上游工作,能够同时满足上游了解类工作和多轮聊天生成工作,更好地满足小布助手丰盛的利用场景;
二是检索加强,检索对象包含常识图谱,以及指标工作相干的通用文本片段等;
三是多阶段,从数据、工作的维度逐渐适应指标场景进行训练,均衡自监督训练和上游成果,定向获取指标场景相干的无监督、弱监督语料数据,进行进一步预训练调优;
四是模型量级以一亿、三亿、十亿级为主,更敌对地反对大规模利用落地。


图 3 预训练模型开发 & 利用计划

OBERT 预训练模型

预训练语料

从开源工作 [1] 试验后果来看,语料的数量和内容多样性越大,上游工作成果会进一步晋升。基于此,小布助手团队收集并荡涤出 1.6TB 语料,内容蕴含百科、社区问答、新闻等。预处理过程如图 4 所示。在此特别感谢浪潮共享了源 1.0 的局部预训练语料,为 OBERT 模型的训练补充了更充沛的数据资源。


图 4 大规模语料预处理流程

预训练任务

得益于数据获取的低成本性和语言模型弱小的迁徙能力,目前 NLP 预训练支流的工作还是基于分布式假如的语言模型,在单向生成式语言模型(LM),前缀 - 单向生成式语言模型(Prefix-LM)和双向掩码语言模型(MLM)的抉择上,受工作 [2,3] 的启发,抉择了 MLM 作为预训练任务,因为其在上游自然语言了解类(NLU)工作上有更好的成果。


图 5 OBERT 预训练应用的 mask 策略示意

一是全词、实体、关键词、短语、短句等词句掩码,能够从不同粒度学习文本表征,是比拟罕用的做法。须要阐明的是,mask 局部与应用的上下文图片 Context/w 来自同一段落,指标如式(1)。

P (w | Context/w)(1)

二是思考内部常识加强的表征学习,与 REALM[4]、内存加强 [5]、ERNIE3.0[6] 的做法相似,冀望通过检索与输出相干的天然文本 / 常识图谱三元组,作为输出的扩大信息,以更好地学习文本表征。对于目前常识加强的预训练范式,次要差别点在知识库 k 的设置,以及常识检索形式。在 OBERT 的常识掩码策略中,设置了百科词条(含摘要、关键词等字段)作为知识库,相当于常识图谱中的(Entity,Description,Content)三元组信息,实体链接作为常识检索形式,具体地,给定初始文本,将文本中的实体链接到百度百科等知识库,并将其摘要文本作为上下文的补充,更充沛地学习文本表征,指标如式(2)。

P (w | Context/w , kw)(2)

小布助手团队首先在一亿级模型上验证了上述 mask 策略的有效性,其 Zero-shot 效果显著优于开源 base 级模型,上游利用时也获得了收益,随后将其利用到十亿级模型训练中。


图 6 ZeroCLUE 榜单

预训练策略

次要采纳了课程学习,由易到难地晋升训练难度,从而进步训练稳定性[7]。一方面,seqence length 从 64 逐步增大到 512,batch size 从 64 减少到 5120;另一方面,训练初期 mask 策略以字词粒度为主(masked span 长度小,学习难度低),逐步增大到短语、短句粒度。

训练减速

为了减速 OBERT 模型的预训练,在分布式训练框架上面临两项挑战:
显存挑战:大模型训练须要存储模型参数、梯度、优化器状态等参数,同时有训练过程产生的两头后果 Activation 等开销,十 / 百亿规模参数规模下远超常规 GPU 显存(V100-32GB);
计算效率挑战:随着训练节点规模的减少,如何联合节点 / 网络拓扑构造和模型混合并行形式,更大程度施展出节点的算力,放弃训练吞吐量的线性 / 超线性拓展。

面对上述挑战,基于开源 AI 训练框架,OPPO StarFire 机器学习平台团队研发并利用了以下计划:
1、混合并行:数据并行 + 模型并行 + Zero Redundancy Optimizer (ZeRO)[8];
2、基于节点拓扑感知通信优化;
3、梯度累积。

通过以上优化办法,相比基线训练计划获得 29%+ 的训练吞吐量晋升,能够更疾速地进行 OBERT 模型的训练迭代,同时也使得百亿甚至更大规模参数模型的预训练变得可行与高效。

微调策略

CLUE1.1 工作

小布助手团队围绕预训练模型开发了微调框架,蕴含了 FGM[9]、PGD[10]、R-Drop[11]、Noise-tune[12]、Multi-Sample Dropout[13]等晋升微调鲁棒性的形式,也蕴含为上游主工作减少词法辅助工作的配置,应用该框架,只需批改配置文件即可在文本分类、类似度、提槽等不同上游工作中应用上述优化形式,疾速拿到不同优化形式的后果。

KgCLUE1.0 工作

小布助手团队复用语音助手的常识问答计划,利用到 KgCLUE 的常识图谱问答评测工作上;在计划上,基于具备内部常识加强的 OBERT 大模型,交融 ner+similar 的 pipeline 办法和基于生成的计划,获得了第一名的问题。更加难能可贵的是,小布助手仅仅应用单模型而未应用集成就达到了上述问题。

落地计划

在预训练落地实际上,小布助手应用多个 NLU(如常识问答 NLU、零碎设置 NLU、闲聊 NLU)来解决各种畛域的问答工作,多个 NLU 都须要独自应用预训练做上游工作的微调,会带来微小的 GPU 计算压力。
为了解决上述问题,小布助手提出对立表征计划,如下图 7。该计划包含下述三个步骤:
1、预训练
2、多任务微调:实际发现,为了升高全局的计算量,能够固定 BERT 模型的 topM 层 transformer,只针对工作微调后 N 层,成果仅比全微调的最优解相差 1% 以内
3、多任务合并:推理时,在调用 NLU 前,先进行一次骨干网络的推理后,由各个 NLU 应用对应的骨干网络层作为上游工作的输出,再进行单任务的推理。

在小布助手的实际落地表明,当上游 NLU 为 10、上游工作均匀微调层数 N = 3 时,对立表征计划下的全局计算量约为全微调计划的 27%。


图 7 对立表征计划

将来方向

小布助手团队会联合智能助手场景特点继续优化预训练技术,包含利用检索加强范式优化短文本表征、开掘和利用反馈信息构建无监督预训练任务、以及摸索模型轻量化技术减速大模型的落地等。

团队简介

OPPO 小布助手团队以小布助手为 AI 技术落地的要害载体,致力于提供多场景、智慧有度的用户体验。小布助手是 OPPO 智能手机和 IoT 设施上内置的智能助手,蕴含语音、倡议、指令、识屏和扫一扫五大能力模块。作为多终端、多模态、对话式的智能助手,小布助手的技术笼罩语音辨认、语义了解、对话生成、常识问答零碎、凋谢域聊天、举荐算法、数字人、多模态等多个外围畛域,为用户提供更敌对天然的人机交互体验。小布助手的技术实力在技术创新及利用上始终保持当先,以后已在多个自然语言解决、语音辨认相干的行业权威赛事及榜单中取得亮眼问题。

OPPO 机器学习团队致力于利用 ML 技术构建一体化平台,晋升 AI 工程师的全链路开发体验。面向 OPPO 开发者,提供轻量化、规范的、全栈式的人工智能开发服务平台,在数据处理、模型构建、模型训练、模型部署、模型治理的全链路 AI 开发环节提供托管式服务及 AI 工具,笼罩个性化举荐、广告算法、手机影像优化、语音助手举荐、图学习风控、搜寻 NLP 等几十种落地场景,帮忙用户疾速创立和部署 AI 利用,治理全周期 AI 解决方案,从而助力减速数字化转型并促成 AI 工程化建设。

参考文献

[1] Cloze-driven Pretraining of Self-attention Networks
[2] Pre-trained Models for Natural Language Processing: A Survey
[3] YUAN 1.0: LARGE-SCALE PRE-TRAINED LANGUAGE MODEL IN ZERO-SHOT AND FEW-SHOT LEARNING
[4] REALM: Retrieval-Augmented Language Model Pre-Training
[5] Training Language Models with Memory Augmentation
[6] ERNIE 3.0: LARGE-SCALE KNOWLEDGE ENHANCED PRE-TRAINING FOR LANGUAGE UNDERSTANDING AND GENERATION
[7] Curriculum Learning: A Regularization Method for Efficient and Stable Billion-Scale GPT Model Pre-Training
[8] ZeRO: Memory Optimizations Toward Training Trillion Parameter Models
[9] FGM: Adversarial Training Methods for Semi-Supervised Text Classification
[10] Towards Deep Learning Models Resistant to Adversarial Attacks
[11] R-Drop: Regularized Dropout for Neural Networks
[12] NoisyTune: A Little Noise Can Help You Finetune Pretrained Language Models Better
[13] Multi-Sample Dropout for Accelerated Training and Better Generalization
[14] Mengzi: Towards Lightweight yet Ingenious Pre-trained Models for Chinese

正文完
 0