【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

大规模语言技术前瞻:跨语言与多模态有望短期突破

  • 2021-08-26
  • 本文字数:3318 字

    阅读完需:约 11 分钟

大规模语言技术前瞻:跨语言与多模态有望短期突破

自然语言处理和语音、视觉同为当下人工智能热点领域。人工智能从下到上包括计算智能、感知智能、认知智能和创造智能,其中视觉和语音属于感知智能,自然语言处理属于更高层级的认知智能,因此自然语言处理也被誉为人工智能皇冠上的明珠。


要构建真正的人工智能,自然语言处理是绕不过去的一步。

 

随着大数据、算力和深度学习的浪潮,自然语言处理也进入了一个快速发展期。而大规模语言模型是自然语言处理取得突破的关键。不久前,微软全球合伙人、微软亚洲互联网工程院副院长、首席科学家姜大昕博士在华泰证券“行知”新经济云峰会-数字科技专场上,分享了大规模语言技术的落地实践与发展趋势。

大规模语言模型突破:预训练+微调新范式

 

2018 年底,自然语言处理获得重大突破,BERT 模型横空出世,它在经典的阅读理解测试集上达到了超越人类准确率的水平。BERT 集成了此前深度学习在自然语言处理领域已经取得的成果,表现出强大功能,主要有以下特点:

 

特征学习


BERT 作为深度神经网络可以自动从数据中抽取有效的特征表示,避免了人工设计特征这样费时费力的步骤。

 

自监督学习


BERT 采用了自监督的学习方式,能够自己构造训练数据,利用网页数据作为训练集,从而可以训练上亿参数大模型。

 

开创“预训练+微调”的新范式


这一点尤其重要,宣告了大规模预训练模型时代的到来。过去自然语言处理需要根据任务选择相应模型,导致每个任务都只能从零开始训练模型,数据无法共享、模型无法混用,小数据训练小模型限制了自然语言的应用。

 

而 BERT 模型把训练拆成两步,第一步是预训练,用自监督方法从大量文本中学习语言的特征表示,得到大规模预训练语言模型,帮助模型执行不同任务。

 

第二步是模型微调,针对特定任务,只要用比较少的数据就能训练出特定下游任务的模型,在特定任务上实现比较好的效果。打个比方,预训练模型就像本科生学习各种基础课,而微调是研究生学习专业课,基础知识掌握的比较牢固,学习专业课就相对容易,这就是 BERT 的主要思想。

 

沿着 BERT 的思路,大家把模型做得越来越大、能力越来越强。比如 2020 年 3 月,微软推出图灵模型,参数量是上一代的 10 倍,达到了 170 亿参数。仅三个月之后,它又推出了 GPT-3 模型,再翻了 10 倍,达到 1750 亿参数,轰动一时。国内科技公司也预训练了一批大模型,比如对标 GPT-3 的华为盘古,就达到了 1000 亿参数,最近智源悟道发布的模型达到了 1.75 万亿参数。预训练技术和随之产生的大规模模型正在快速推动自然语言处理的发展,这使得大量落地应用成为了可能。

助力数字化转型:聚焦平台层和工具层

 

四年前,我们开始和企业,一起探索如何将大规模语言模型落地应用,推动数字化转型。

 

我们接触了许多企业和政府部门,发现数字化转型有一些共同的痛点。企业想要拥抱 AI 一般有两个选择,采购 AI 解决方案或者自建 AI 能力,但二者都有问题。如果采购,则会面临技术黑盒子、可拓展性差、无法与自建系统深度集成等问题。但完全自建又有技术门槛高、人力成本昂贵等问题。

 

经过一段时间讨论,我们找到了一条中间路线,推出了包含数据层、平台层、工具层和业务层的 Carina 平台。这四层中,微软主要负责平台层和工具层,把我们所擅长的技术集成到这两层,而企业则可以根据具体业务场景开发应用,这样企业可以充分利用我们的技术,我们也不需要特别深入理解企业具体业务。就数据层和业务层而言,因企业之间有较大差异,很难有统一的解决方案,所以合作方式多种多样。

平台层


平台层的目标是围绕机器学习模型的生命周期,为企业提供模型开发、部署的环境和工具。以 Carina 为例,包含了训练、部署、调度和共享四大平台,在这个大框架下,我们再根据企业操作人员痛点设计具体功能和模块。经过不断开发验证和改进,这个平台已经非常稳定、好用,可以支持上千人同时协同开发。

工具层


工具层的目标是提供各种自然语言处理模型、调用接口和定制化工具,企业开发各种场景具体应用时可以使用。企业业务人员在开发具体应用的时候可以调用工具层提供的各种工具,这可以是一个模型,也可以是接口,甚至是一个简单的定制化工具。

 

这一层要解决三个挑战:自然语言处理任务繁多、算法各异,标注数据昂贵且质量越高越贵,通用模型往往在细分领域表现不佳。为此,我们制定了“四步走”策略:

 

第一步,预训练大规模语言模型,我们广泛采用了包括微软图灵模型在内的业界流行的预训练模型,这为后面所有工作打下了很好的基础。

 

第二步,在通用模型基础上为不同任务微调,我们使用了各类标注数据,有了这些数据,平台上每一个任务的表现都经过经验,可以满足工业级应用需求。

 

第三步,针对不同领域进一步微调,在这一步,平台提供工具让使用者可以便捷地加入知识和数据,让模型适应用户的具体场景。

 

第四步,把大模型压缩变成小模型部署上线,最常使用的方法是知识老师,让它产生很多训练数据,再训练一个小的学生模型,通常这个小模型只有几十兆,在 CPU 上也可以跑起来。

展望未来突破点:跨语言模型和多模态

 

大规模语言模型技术的未来会是什么样呢?我的观点是,常识和推理任重道远,还需要很长时间才能解决,跨语言和多模态有望在未来几年取得突破。

跨语言模型


跨语言模型正快速发展,不仅仅是机器翻译,还包括支持上百种语言的自然语言处理任务的模型。

 

除了学术界的研究非常活跃,工业界的跨语言模型也到了成熟落地时期,比如微软的所有产品都要求支持 200 多个地区的 100 多种语言。我下面展示几个例子。

 

第一个例子是来自于搜索引擎,目前我们是跨语言的,可以为世界上 100 多种语言,200 多个地区提供搜索服务。

 

第二个例子是在搜索的同时,我们也为 100 多种语言提供自然拼写纠错功能,用户搜索的时候打错了查询关键字,我们也可以帮助找到正确的拼写,别的语言,我们不认识,对于中文语言比如“一起来看流星雨”,星字拼错了,我们会换成正确的流星雨的拼写。

 

第三个例子是邮件自动回复功能,用户收到邮件,我们用很简短话来回复,在下面有一些回复框,点击回复内容就可以自动回复了,这一功能目前也支持绝大多数主流语言。

 

第四个例子是大家用的 Teams 里面的智慧助手,这可以为多语言提供语言理解服务,可以准确识别用户的意图,并且抽取关键字。

 

目前,语料丰富的大语种已经实现了工业级应用,但是许多小语种,由于语料很少、尤其是双语拼音数据的缺乏,效果还不理想。如何把大语种的丰富语料知识应用到小语种上还有待研究。

 

另外,即使是大语种,有了落地的成熟工业级应用,但我认为也就是八、九十分的水平,最后的十分、二十分非常难拿。比如歧义,“我的钢笔没有水了”,机器可能不理解这是指“墨水”,从而翻译成“水”;再比如缺少对应翻译,“一带一路”、“到基层去”这类内容就很难翻译,只能意译。这也是有待解决的问题。

多模态


多模态是指让计算机拥有处理语音、文本、图像、视频、知识等不同模态信息的能力。过去,语音、视觉、自然语言处理几大人工智能领域平行发展,彼此很少有交流,模型之间可以互相交流,但一个模型很难同时接受多个模态的输入。

 

很多学者相信,人类不是接收外界信息还是表达自己的意图,都会综合运用大脑中多个感知和认知模块,既然人类智能是多模态的,我们也应该让机器把不同模态的信息加以融合,所以多模态学习成为当前的热点方向之一。

 

多模态的工业落地比如搜索引擎,现在可以用文本搜索到图片、视频,但如果要精确定位到想要的某一段视频,就需要文字和视频信息的紧密融合。另外,多模态研究如果能够获得突破,增强现实、虚拟现实、虚拟人类等方向也会得到飞跃式发展。

 

我一直认为要让机器理解常识,就需要机器把多种模态联系起来。我们人类获得常识的途径往往不是单纯通过文本,而是通过自身在现实世界中的体验。如果让机器也获得“自身体验”比较困难的话,就退一步,让机器能够“观察”到现实世界的体验是多模态的,这对机器理解常识也会有所帮助,从这个意义上说,多模态对推动整个通用人工智能的发展意义非常重大。


自然语言处理处于一个美好的时代,虽然还有很多问题没有解决,但是已经有了很多成功的商业应用。我相信随着技术的进一步发展,自然语言处理一定能够更好助力数字化转型。


以上内容来自华泰证券“行知”新经济云峰会-数字科技专场

 

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2021-08-26 18:342976

评论

发布
暂无评论
发现更多内容

面试官:说下对cookie,session,Token的理解

Java小咖秀

Java 面试

年近而立,Java何去何从?

华为云开发者联盟

Java 开源 程序员 编程语言 Bugayenko Yegor

MySQL备份脚本,应该这么写

Simon

MySQL

Rust竟然没有异常处理?

袁承兴

rust 异常 java异常处理

troubleshoot之:分析OutOfMemoryError异常

程序那些事

Java JVM 异常 JIT

HashMap、LinkedHashMap 学习笔记

陈俊

敏捷软件工程实践书籍

Bob Jiang

敏捷 敏捷书籍 工程实践

AI能写浙江高考满分作文了!在线满分作文生成器,一键圆你满分梦

程序员生活志

AI

简述Python中变量作用域的规则

王坤祥

Python python升级 Python基础

浅谈技术管理者的角色认知与自我管理

大黄蜂

团队管理 管理 自我管理 技术管理

简谈Python3关键字nonlocal使用场景

王坤祥

Python Python基础

队列高级应用之设计一个高性能线程池

架构师修行之路

分布式 线程池 架构设计 架构师

智“营”时代,众盟科技荣膺“2020毕马威中国领先消费科技TOP50企业榜单”

人称T客

面试造火箭,看下这些大厂原题

前端有的玩

Java 面试 大前端

网站改版神秘公式,教你躲避改版陷阱

北柯

创业 网站 网站搭建 网站改版

如何做好技术选型

xcbeyond

Java 架构 最佳实践 技术选型

架构师训练营 - 第 7 周学习总结

红了哟

二叉查找树-增删查和针对重复数据的 Java 实现

多选参数

数据结构 算法 二叉树 数据结构与算法

Phalcon注解学习

半亩房顶

php phalcon

翻译: Effective Go (5)

申屠鹏会

翻译 Go 语言

领域驱动设计(DDD)实践之路(二):事件驱动与CQRS

vivo互联网技术

DDD 架构设计 CQRS

重点发布!河北行动计划发布!聚焦7大重点任务发展大数据产业

CECBC

区块链技术 落地应用 政策

IT人的身体健康

隆隆

IT人健康

图解JavaScript——代码实现(new、Object.create()、Object.assign()、flat()等十四种代码原理实现不香吗?)

执鸢者

Java 大前端 代码原理

第10周总结+作业

林毋梦

SpringBoot系列(四):SpringBoot特性_外部化配置(properties文件配置)

xcbeyond

Java 微服务 springboot

MySQL explain 中的 rows 究竟是如何计算的?

架构精进之路

MySQL

一瓶可乐的自动售货机指令“旅程”

华为云开发者联盟

物联网 嵌入式 华为云 数据传输 无线通信

一口气搞懂「文件系统」,就靠这 20 张图了

小林coding

操作系统 计算机基础 文件管理 文件存储 文件系统

推荐一个替代印象笔记,onenote的神奇笔记!

申屠鹏会

笔记

简谈Python3中的闭包

王坤祥

Python Python基础

大规模语言技术前瞻:跨语言与多模态有望短期突破_语言 & 开发_Geek_c0e0e9_InfoQ精选文章