2019 年,技术进展方面主要体现在预训练语言模型、跨语言 NLP/无监督机器翻译、知识图谱发展 + 对话技术融合、智能人机交互、平台厂商整合AI产品线。
随着 2018 年底 Google 提出预训练语言模型 BERT,在多项 NLP 任务上获得更优效果,预训练语言模型的研究与应用被学术界和工业界视为 NLP 领域的一项重大突破,将 NLP 问题的解决方式从以往的为每个任务单独设计复杂的模型逐渐演变成了预训练 + 微调的范式,让众多 NLP 应用能够享受到大语料预训练模型带来的红利,在通用的预训练模型的基础上加入简单的任务层,并结合自己场景的少量语料就可以获得一个不错的领域 NLP 模型。
至此开启了自然语言处理的新篇章。
在 2019 年,各个研究机构和公司在 BERT 的基础上进一步创新,纷纷提出了自己的预训练模型,如:Facebook 发布的 RoBERTa,CMU 发布的 XLNet,Stanford 发布的 ELECTRA,还有百度的 ERNIE 模型,阿里的 structBERT 模型, 华为的 NEZHA,哈工大和科大讯飞也都提出了自己的模型,不断刷新 NLP 任务的最好成绩。
这新的工作总结起来,主要来自训练任务设计和训练算法两个方面。
训练任务设计
进行更加精细的语义粒度建模,包括引入更细粒度的建模对象和更加精细的刻画语义关联。
比如 “全词 Mask” 或者 “Knowledge Masking”,技术在 MLM 预训练任务中 Mask 整个词而不是单个 Token,进而提升了任务难度使得 BERT 学到更多语义信息,哈工大和科大讯飞联合发布的中文 BERT 模型以及 NEZHA 模型中得到了应用;再比如引入更多类型的句间关系,从而能够更加准确描述语义关联性,进而提升语义匹配等方面能力,这在阿里和蚂蚁团队的 BERT 模型中得到体现。
利用新的机器学习方法建模
包括 CMU 和 Google 联合发布的 XLNet 使用了 Autoencoder 和 Auto-regressive 两种方案;斯坦福大学提出的 ELECTRA 模型,引入对抗机制来进行更好的 MLM 学习。华盛顿大学和 Facebook 联合发布的 SpanBERT 模型还引入了 Span 预测任务。这些方案应用更学习方法来建模文字之间的联系,从而提升模型效果。
训练算法设计
针对模型的易用性的问题,减少模型参数,或者降低模型的复杂度,包括 Google 发布的 ALBERT 使用了词表 embedding 矩阵的分解与中间层的共享。
提高训练速度的优化
包括混合精度训练,用 FP16 来进行权重,激活函数和梯度等的表示;LAMB 优化器通过一个自适应式的方式为每个参数调整 learning rate,模型训练能够采用很大的 Batch Size; 这些方法极大地提高了训练速度。
阿里的 structBERT 模型通过引入更多模型和任务结构化信息,提升语言表示能力。在Gluebench mark 上多次名列前矛和保持领先位置。通过蒸馏和 CPU 加速,RT 提高了 10x,finetuned 的模型给多个业务场景带来了明显提升,上线了 AliNLP 平台。
预训练语言模型在大规模无监督文本上进行预训练,将得到的词和句子的表示迁移到广泛的下游任务上,包括文本匹配,文本分类,文本抽取,阅读理解,机器问答等不同的场景。如阿里语言模型在 MS MARCO 问答评测,TREC Deep Learning 评测上都取得了第一名的好成绩。
下游的任务可以在低资源的情况下快速获得一个不错的解决方案,极大的提升了 NLP 算法的应用落地能力。
作为预训练语言模型的扩展,Facebook 的研究人员提出了跨语言的语言模型预训练 “Cross-lingual Language Model Pretraining”,仅使用单语数据的无监督训练和使用平行语料的有监督训练的条件下,模型有效学习了跨语言文本表征,在多语言分类和无监督机器学习等任务上,都比之前的最优结果有显著的提升。
继 2018 年 Google 预训练语言模型 BERT 横扫 主流 NLP 任务之后,2019 年 Facebook 发布了新型跨语言预训练语言模型 XLM,实现不同语言在统一嵌入空间的表征共享,并在无监督机器翻译任务上带来显著的质量提升。在探索大规模、多语言神经机器翻译方向上,Google、阿里巴巴等进行了有效探索,通过同时在数十乃至数百种语向的平行语料上训练一个模型,而不是对各个语向分别建模,实现语义映射关系共享,不仅压缩了模型数量,同时普遍提升了小语种翻译效果。
过去一年来,多语言 NLP 技术的研究成果主要集中在机器翻译(特别是无监督的机器翻译),跨语言词向量,多语言 NER,依存句法分析,词对齐和多语言词典生成等方向。
由于跨语言词向量的学习/映射是其中的关键步骤,目前的无监督/跨语言的 NLP 任务在相近的语言之间(如英语/法语,英语/西班牙语等)效果最好,在不同的语言家族间(如英语/越南语)效果还是有较大提升空间。
随着数据量的积累和应用对数据质量和结构要求的提升,近几年知识图谱又成为一项热点技术开始被关注。
知识图谱技术领域在 2019 年的发展,包括领域知识图谱的构建和整合(金融、企业等)、图谱平台化标准能力的建设(schema 定义 + 构建 + 调用)、图谱应用算法建设(基于图谱数据的图模型 + 规则推理等);并基于构建的图谱数据和能力,开始在更多的业务场景得到应用(搜索推荐内容理解和挖掘、金融风控和决策、对话理解和内容生成等)。
在知识图谱和对话结合的技术方向,对话技术在问答和任务式对话近几年已形成了一定的技术框架和业务覆盖,开始需要解决一些对知识理解 + 答案专业性要求更高的领域场景(理财助理等)。
对话技术结合知识图谱的领域知识完整度 + 结构化质量优势来进行覆盖,可以解决相应场景下语料标注(意图理解)和专家配置(对话流程 + 响应生成)上的不足,进一步提升对话覆盖和响应质量。融合知识图谱对话这个方向,在 2020 年会有更多的真实场景落地和覆盖。
自然语言理解和深度问答匹配技术在学术和工业界持续发发展,并且已经在全域业务和场景有了大规模应用,基于预训练语言模型进一步带来性能的提升。
随着 AI 技术发展和 AI 应用的需求,AI 技术框架的成熟(Tensorflow、PyTorch等),AI 技术能力逐渐被标准化为一系列 AI 平台类产品,面向企业和开发者,提供更低门槛和更高效率的 AI 应用支持。
对话类平台,Google 从 2016 年开始发布 Assistant 对话助手,这几年陆续发布了 Google Home(现在整合到 Nest 智能家居品牌),Duplex 语音电话,以及收购了 API.AI 对话开发平台;今年 Google 已基本整合这些对话产品线,基本布局了对话现有的平台 + 终端,现成一个整体的对话产品线。
AI 类平台方面,Amazon 自 2017 年发布 SageMaker 机器学习平台产品,今年进一步基于 SageMaker 整合 AI 开发过程,同时打通下游技术框架和上游 AI 应用,整合 AI 产品线。类似阿里的机器学习平台 PAI,定位成面向企业和开发者的一站式机器学习平台。
2019 年,应用与产品方面主要体现在机器翻译、对话系统、多轮对话智能服务、智能语音应用持续发展。
机器翻译的产品发展延续了之前的趋势,在通用领域(新闻),特定领域(电商,医疗等)扩展了更多的语言方向,支持了更丰富的业务场景,并持续带来商业价值。阿里巴巴在翻译干预和智能泛化方向进行了卓有成效的探索,把业务知识更好地融合到神经网络翻译框架中,大大提升了垂直场景下关键信息的翻译准确率。
高价值和高敏感内容的翻译目前仍离不开人工,因此在计算机辅助翻译(CAT)引入智能算法实现人机协同翻译,以及机器翻译后编辑(MTPE)等新型生产模式,也受到越来越多的关注。阿里巴巴、腾讯在自动后编辑(APE)、交互式翻译(IMT)都开始有产品推出,并在实际业务中落地。
除了文本翻译之外,更多的多模态翻译应用场景出现,如语音翻译在会议同传,双语字幕,翻译机硬件上的尝试(阿里二十周年年会上马老师和逍遥子演讲也以实时双语字幕的形式展示)。
结合 OCR,机器翻译和合图技术的图片翻译在支付宝扫一扫,微信,搜狗翻译机上得到应用。随着卖家直播的兴起,直播视频翻译的场景和需求也会越来越多。但是受限于直播场景中复杂的领域,专业的术语,快速的语速和有时嘈杂的背景环境,直播翻译对于语音识别和机器翻译的挑战也是非常巨大。
多轮交互在智能服务场景(客服机器人)在解决用户模糊问题,提高用户使用体验方面起到的重要的作用。模糊问题指用户问题描述不完整,如 “怎么开通” ,这句话没有说明是哪个业务,这类问题占客服机器人总提问量的 30%。
蚂蚁智能服务团队设计了基于标签的多轮交互方案,首先离线挖掘标签,并审核,标签包括业务标签(花呗,备用金...)和诉求标签(怎么开通,如何还款...),通过向用户反问标签列表的形式澄清用户问题。
已有的问题澄清方法主要通过直接推荐完整澄清问题的方案,但定义什么是好的澄清问题仍然不明确,蚂蚁团队设计了一个基于强化学习推荐标签列表的方案做问题澄清,整个标签推荐是一个序列决策的过程,在用户点击了标签之后,我们会把点击的标签和原始的用户问题一起作为澄清后的问题。
整个优化的目标是,目标是最大化整个标签列表对潜在澄清问题的覆盖率,同时保持不同标签对潜在澄清问题集合的有效划分,因此,在强化学习过程中,相应设计了基于信息增益的奖励(Reward)。
基于强化学习方法的多轮交互上线后,蚂蚁客服机器人场景共解决了 33% 的模糊问题,机器人综合场景转人工率绝对下降 1.2%。
场景驱动的个性化多轮对话技术,助推人机对话场景扩充,同时语音语义一体化的上下文语义理解技术,持续提升多轮对话达成率。
天猫精灵在过去一年中,将人机对话能力扩充到二哈电话助手,语音购物,新人使用引导等复杂的交互场景,更是在双十一期间,创造了语音购物 100 万订单的记录。
天猫精灵在去年的 315 推出了防骚扰电话助手 “二哈”,开启了全新的人机对话交互场景:作为用户的替身完成对话。“二哈” 的对话场景是在垂直领域内的开放式多轮对话,目的是通过对话来识别来电意图,并代替用户来获取必要信息。在 “二哈” 中我们提出了基于多轮对话上下文的机器阅读理解技术,用以理解来电意图和关键信息;基于对于来电内容的理解,我们基于 Transformer 构建了对话策略模型,用以选择策略和生成对话。针对 “二哈” 的对话场景,我们提出使用图灵测试通过率来衡量对话的质量,亦即当来电在整个对话中都没有意识到是机器在与其通话时,可以认为 “二哈” 通过了图灵测试。“二哈” 目前的图灵测试通过率达到了 87%,有效的帮助了用户应对陌生来电,节省用户时间。
通过人机对话的方式去完成复杂的任务,比如点咖啡、购物等,往往需要机器和用户进行多次对话交互,同时在不同的任务场景下,对话机器人需要掌握各自领域的知识,才能和用户对答如流。比如在语音购物场景,天猫精灵具备跨行业的智能导购员能力,吸收各行业导购员的销售经验,在用户进行语音购物的时候,以最终的成交转化为目标,像商场的销售员一样主动进行多轮对话形式的购物引导,深入挖掘用户购物需求并结合用户画像进行精准推荐。且对不同的用户,天猫精灵可以采用最适合 TA 的对话方式,做到个性化多轮对话。
多轮对话的达成,是建立在一系列的单轮交互都达成的基础上的,而如果整体任务的达成率是简单的单轮达成率的乘积关系的话,多轮对话的达成率将很难提升。而打破简单乘积关系的关键在于,每一轮对话理解的时候,需要充分利用上下文信息。
在天猫精灵上,我们进行了上下文语音语义理解的探索。首先在语音解码的环节,我们将多轮对话中,上文提到的实体信息构建成 memory,通过 attention 机制让解码器网络感知到这些对话场景信息,显著提升了多轮对话场景的语音识别精度,然后在语义理解环节,我们独创了具备跨轮 attention 能力的端到端上下文继承模型,实现更高效的对话场景恢复的能力。从而让线上多轮对话的错误率下降了 58.5%,有效保障了复杂多轮对话场景的扩充。
智能音箱,近几年基本上国内外大玩家都已陆续进入市场(Amazon Alexa、Google Home/Nest、天猫精灵、小米小爱、百度小度),2019 年进入竞争格局;2019 年智能音箱出货量仍然在增加,但增速下降。
智能音箱仍然以音乐播放等软件类服务为主,但进一步应用创新仍依赖智能家居和 IoT 设备的进一步普及。
智能语音电话,2018 年 Google I/O 大会展示了 Duplex 的语音电话助手 demo。2019 年智能语音电话开始更多地应用到真实业务领域,包括电销、金融、政务等领域的应用都在增长,以提升用户服务覆盖+降低人工成本。
蚂蚁智能语音电话 2019 年也在安全(核身)、金融(保险回访、微贷催收)、支付(客户激活)等更多金融场景应用和落地。
智能语音类应用,所面向的用户场景强依赖对话语音交互,推动了 NLP 技术和语音技术的发展;随着技术和产品的发展成熟,以及用户接受度的提高,2020 年的应用规模和领域会进一步扩大。
站在新的一个十年,智能人机交互、多模态融合、结合领域需求的 NLP 解决方案建设、知识图谱结合落地场景等将会有突破性变化。
语言模型将在智能人机交互中扮演更重要的角色,形成更丰富的形式,混合 100 种语言的多语言语言模型,以及融合图像-文本和语音-文本多模态语言模型将崭露头角,在不同语言、不同模态、不同领域的小样本场景下带来全面的能力提升。
过去 NLP 算法多以平台/API 的方式输出通用模型,相应地也在各种云上建立了通用 NLP 算法平台(Amazon Comprehend,微软 Azure Text Analytics,谷歌云 Natural Language,阿里 NLP,百度 NLP 等)。
但是在业务场景中,每种场景领域都有自己的特定的需求,产生了相应的场景数据。通用模型结合场景数据进行领域自适应训练,从而输出的领域定制模型会更好地满足业务需求。
面向新的一个十年,通过 NLP 和知识图谱两大核心技术来构建行业知识图谱,机器能够通过知识图谱挖掘隐性关系,洞察“肉眼”无法发现的关系和逻辑,用于最终的业务决策,实现更深层次的业务场景落地。从发展方向来说,可以分为下面几个方面:
以上是我们对于 NLP 技术过去一年发展的回顾和今年趋势的思考。一家之言难免疏漏或者以偏概全。抛砖引玉,希望能够得到更多同学们的思考和指正。比尔·盖茨曾说过,“语言理解是 人工智能 皇冠上的明珠”。要达到这样的高度,还需要技术和应用上的突破发展期待在下一个十年的开始,我们一起让 NLP 技术发展更加迅速,应用场景更加丰富,推动认知智能的发展更进一步。
本文系作者在时代Java发表,未经许可,不得转载。
如有侵权,请联系nowjava@qq.com删除。