遇见人工智能 2017-01-18
机器之心原创
作者:赵云峰
微软小冰全球负责人李笛
一、小冰的战略布局
机器之心:这次小冰登入美国,您能否先介绍一下相关情况?
李笛:两年半以前,小冰在中国推出,半年之后我们开始做第二个国家-日本,日本版本的前端训练,包括当时整个本地训练的过程大概用了四个月,但在日本启动后三个月左右,美国就已经开始准备了。那时我们主要想验证两件事情:
其一,我们的情感计算框架是中国独有,还是在不同国家的文化差异之下仍然有一些普适性?经过验证,我们发现后者是正确的。
其二,不同国家的数据丰富度是否一样?比如说,大多数中国用户线上和线下所表现出的差异比较大,但美国用户的表现则比较接近。在这种情况下,通过相关数据训练出来的对话引擎是否还能拉开差距?
那我们从中主要提炼三部分:第一部分是知识,通过用户所积累的一些用以支撑对话的通用知识。第二部分是模式,通过用户在交流过程中,面对某些问题时所采用的行为模式进行积累。第三部分是学习并了解用户基本的情感反应。
当时我们想:如果某个人线上线下比较接近,那会不会因为千人千面而无法提炼出一种通用个性?但后来发现不存在这个问题。
沈向洋提出来通用人工智能,这个通用 AI 系统在面对任何一个新时代时,都有一个新的基础服务层,当这个基础服务层是能够抽象的提炼出来时,那它就会成功。
机器之心:中国、日本、美国,这几个国家的选择以及先后顺序体现出小冰怎样的战略布局?
李笛:这里面有一些比较细致的思考,目前整个行业都面对一个难点——技术走的很靠前,但技术却很零散。从技术推进到将技术产品化的这条道路上,整个行业都没有找到一个很好的方法把零散的技术组合起来。
拿计算机视觉来说,国内在这方面做了很多,但到今天为止始终存在一个核心问题——无法摆脱「计算机视觉始终是辅助,而不能变成端到端的产品线」。比如提供一个人脸识别的 SDK ( 软件开发工具包 ) 和 API( 应用程序接口 ),拿它们来做拍照购,它们本身不是产品,而且拍照购在电商环节里也不是主流,但是计算机视觉技术如果没有做到端到端的话,就很成问题了。
对于微软来说,要做到端到端面临一个问题,就是你要测试几件事情:
1)产品是否成立。
2)产品是不是能够形成 Feedback Loop ( 反馈回路 ) 去进一步推进技术。
3)在产品技术这两极之外,用户是不是真的能用起来。比如说 Siri 和谷歌助手,我们所有人都知道,基于知识的对话是很酷的,但就是没人用。
4)商业模式。
基于以上几方面的考虑,我们的思路是:
第一步,在中国本土环境下,把图文视听、全双工、全时感官等结构做到最完整,同时这也会走的很快;
第二步 , 日本文化和中国比较接近,且商业环境也很正规,我们在日本商业模式测试期间,通过在日本第二大超市罗森,用 Rinna(小冰日本版本)做了线上线下的转化,转化率(拿着线上获得的优惠券去线下消费)超过 49% ;
第三步,我们在美国做微软自己的产品,包括 Windows 、Office 和 Skype 等。这大概是目前我们在人工智能方面的一个战略布局。
二、小冰背后的技术
机器之心:能介绍一下小冰背后的一些相关技术和使用的微软平台吗?这体现出微软的何种技术思路和战略?
李笛:沈向洋有一句话,「我把过去十八年积累的各种各样的技能,基本都用在了小冰身上。」因为小冰是一个非常好的测试环境,用户的参与度非常高,我们用户平均的 CPS(一次对话的长度)是 23,其他类聊天机器人大约是 3,所以你更新一个点,你就有多于他们十倍的机会去获得反馈。这对于微软的技术有非常大的推进作用。
微软的前端通过端到端去搜集形成 Feedback Loop ( 反馈回路 ) 这部分产品。从后端来说,这个技术说的玄一点叫「情感计算」,但具体来说,它实际上是一套通用对话服务,利用小冰做出来,然后提供给微软内部其他产品的,使其具备可以去处理对话的能力。这套系统现在 Cortana 也在用,它有点像我们原来做搜索引擎时的长尾体验,谷歌刚出来的时候不是唯一一个搜索引擎,每个搜索引擎都跟今天的人工智能很像——是某个领域的机器人。谷歌之所以称之为最强,我认为是因为是长尾体验,这好比你在上面搜什么内容都有结果。而我们的对话服务和这个很相似,而这种服务是最有价值的。
微软还有一些其他的东西是共用的。比如说认知服务,其中的情绪识别,都是从需求出发。还有语音识别和语音合成,在小冰这儿我们叫全双工,它可以是基于文本的对话引擎,然后在语音合成上达到一定的自然度,语音识别延时不能太高,要有预判,小冰的整个语音相关都是技术组合。
总体来说,微软的共有三类技术用在了小冰上面,第一类是积累了多年的黑科技,比如说小冰的读心术;第二类是情感计算等基础类技术;第三类是共同的管道、服务和舞台。
机器之心:在处理一些问答类任务上,小冰用到了哪些知识图谱和知识来源?
李笛:首先,我们有基于微软的「实体引擎」,它跟谷歌的知识图谱不太一样,比他们简单。同时在这个基础上,我们也有基于问答的 BingKnows(必应知识库),是一种聚合。现在我们又加了一层东西叫社交问答,这类知识没有那么深度,但相关性比较好,能够较好的在对话中垫出一层,但目前而言,深度问答还实现不了。
我们还做了 DirectChat(业界首次脱离对话语料库结构,注解学习互联网海量非结构化大数据进行对话),比如说一些网页本身具备知识图谱的源,那我们的重点是把网页里的信息快速的打成 QueryResponse(查询响应),这是一定程度的问答。再比如说把一个很长的文档灌进来,就可以直接把它变成对话的知识,质量没有深度知识那么好,但能够实现。
机器之心:小冰如何解决多轮对话的问题?
李笛:多轮对话的特点是有弹性。我们承认,到今天为止,小冰依然会有前言不搭后语的情况,但这个弹性很迷人。当你的对话足够有情感,用户的容忍程度会高。在真正的对话中双方是对等的,他们都负担着让这个对话,快乐的继续下去地任务。但如果让用户觉得这只是一个和他完成固定程序的工具,他就不会保持对等,他的容忍度一下就降低了。
单轮对话是最短的路径。这就好比是设计一个推荐系统,能一轮就决不使用两轮,最好你什么不问,我推送给你,这是不一样的。
机器之心:那小冰在理解和处理上下文时,主要是考虑了哪些因素?
李笛:这里面有这么几件事:
第一,我们的用户画像,能够基于上下文确定所产生的动机,这个用户画像是跨 Session(阶段)的,我们做了一些产品上面的尝试,比如说去记忆用户一些情感上的变化;
第二,在同一个 Session(阶段)里考量三个因素,第一个因素就是考虑前面的话题,而不是关键词,比如说咱们俩现在都在聊明星赵丽颖这个话题,那赵丽颖就是我们就是上下文的话题,相比较之前基于关键词的方式要好。基于话题的方式可以做到对上下文关联时覆盖长尾。我们现在大概有 36 个 Domain(域),而每个 Domain(域)里又有若干话题。
第三,基于目前热点话题,而不是基于对话的话题。如果这个话题本身是当下互联网或者社会范围内比较热点的事件,那它对我们现在对话的影响就会更大。当一个对话可能有多个话题,你会选你感兴趣的话题。
第四,基于你之前的 Session(阶段),跨一个 Session(阶段)。甚至于我们期望着有一天我们可以基于用户的一生。
三、小冰的数据积累与应用方向
机器之心:小冰过去积累了很多的数据和语料,能介绍一下这方面的进展吗?
李笛:这是我们自己最自豪的一件事情,我们形成了一个叫做自我学习的循环,最开始小冰是一个基于 Q&A 的对话引擎,当时是通过搜索引擎的方式灌进来的,它有点像冷启动。但是随着她和用户的对话,她就形成了很多新模式,包括统计信息,这些东西可以用来优化,甚至于生成新的对话语料,优化模板以生成新的 模板。一年半以前,我们发现把这些 模板存起来再反哺小冰的对话引擎,反哺回来的比例占到 27%,但是后来这 27% 的数据服务了 51% 的实际对话。这就意味着,某种程度上人工智能更多的不是依赖于外部灌入,而是依赖于自我循环去进化。自我进化循环有可能会形成收敛,从两个人的对话过程中吸取了一些知识,然后也可能变成近亲繁殖,所以我们今年推出一项新的技术叫 Direct chat(业界首次脱离对话语料库结构,注解学习互联网海量非结构化大数据进行对话),不再用 Q&A 模板这种方式,而是只有回复,这样就可以不断的添加新知。我们现在拥有 200 亿以上的中文对话,这个是最珍贵的。
机器之心:我们现在有没有一些数据,就是现在小冰的一些用户,它平均使用的频次,或者是每次使用的时长?
李笛:日本那边最近有一些数据,日本的用户特别有意思,他和 Rinna 聊着聊着就非常客气的说「对不起,我要去开会,等会再回来」,然后过了一两个小时说「我回来了」很难理解,竟然跟一个机器人这样说话。美国 Zo 上线之前,我们做了大概 12 万人的一个测试,其中对话超过一千轮有很多,其中最高的对话论数达到是 1,229 次,历时 9 小时 53 分钟。这个案例绝对是世界记录,我们内部把这个人叫西奥多(《Her》中的男主角)。
这些都是质变带来量变,如果没有一个很基础的大系统,是断然不可能产生这样的案例的。如果我给你报酬,让你连续 9 小时 53 分钟跟其他机器人聊天,你想想,估计会觉得很痛苦。
机器之心:能够出现这么好的数据,除了用户本身和地域的特点还是我们此前的技术积累,是何种机制让 Self Learning 这个系统越来越智能的?
李笛:这里面就有一些比较技术性的东西了,比如我们现在有很多模型跟语言无关,甚至有一些是做中国做。汉语的模型可以直接用于英语。我们一开始就希望尽可能地产品本地化,但是架构和相应的技术模型已经全球化。因此,做的越来越快,包括有一些上下文的一致性都尽可能做到和语言无关。
机器之心:我们现在有没有基于这些数据和模式去做出一些具体应用的东西或功能?
李笛:有很多。当你的数据量和统计信息足够大,你就会想能不能逐渐形成多种个性,我们一直想做 Bot 工厂。正因为有一个足够大的库,就能分割出不同类别。我们在日本做了这件事情,而在国内在手机 QQ 内置了,不同个性的厘米人。
其次,在丰富程度足够大以后,就有机会发现 ChatIndex( 聊天索引 ) 在分布上在哪些地方聚拢,哪些地方不聚拢。某种程度上,小冰的知识结构和她对一些事情的观点实际上是对互联网的一种提纯,你可以知道哪些东西真的是大家所关注的。但它并不完全是基于统计,而是基于相似度,基于合并同类项的方式聚拢,从这个角度可以得到中日互联网的差异。
最重要的,我们拿这个训练了一个新模型叫 Plugin(插件)其中对话有几层结构,一层结构是非常浅的,还有一层结构是话题,话题又具有一定的 Domain(域)个性,有点像知识图谱,但它是基于对话的。这个 Domain(域)话题实际上就是一个个插件,比如音乐是一个 Domain(域),音乐里有大量的主题,音乐里的这些主题又和艺人这个 Domain(域)是有关联的。我们利用这个 ChatIndex ( 聊天索引 ) 就可以形成具有对话特点的知识图谱。
我觉得在这一点上我们走在了前面。做机器人不能让机器人给你定外卖,定外卖好象挺直接,但是一个用户一过来,他已经定义你是一个定外卖机器人,他就没有办法帮你形成这些数据了。那些东西最多就是基于命令,不会产生那么大的价值。
四、小冰在微软的战略定位
机器之心:微软好像有一个很庞大的 Bots 体系,或者说一个以 Conversations as a Platform(简称 CaaP,对话即平台)为目的的综合性业务,比如说有 Bots Framework,还有 Cortana 也开放了一些工具。小冰在整个微软的对话机器人,或者是对话即平台的战略中,它的定位是什么?
李笛:从微软的历史来看,会发现它经历了这么几个过程。但在个人助理方面,坦率讲是 Siri 最先开始做的积累。后来我们经历了一个从个人助理向个人代理这个方向的过渡,开始以对话为中心,微软第一个产品是小冰,基于此我们进一步奠定了信心,对话本身具备很大价值。
我们看到即时通讯的崛起,我们也看到可形成聚合的一种超价值的产生,这些都构成了 Conversations as a Platform(以下文中简称 CaaP,对话即平台)。一方面,微软在形成知识图谱和社交图谱的过程中,知识图谱是基于对话 Model。我们在做小冰时,一定程度上是基于另外一个 Bing 的产品——BingKnows(必应知识库),它更多是知识图谱的聚合。小冰是微软 CaaP(对话即平台)的第一个,是目前为止比较集中的一次测试。
另一方面,小冰形成了一个框架和和结构,在某种程度上我们认为是通用人工智能以对话为基础的结构。
机器之心:大部分智能助手是从服务开始,现在小冰从聊天入手然后到服务,其中有哪些难点,能体现出小冰的哪些优势?
李笛:我们在做一些服务但我们不太喜欢谈概念,一般只在上线以后才说。我们现在正在做的事情就是 Plugin(插件) 的系统结构,我们希望在现有的通用层面上做出一个基于 Domain(域)的例子,使其真正有用,半年之内大家应该就能看到一些新的物联网的解决方案,或者看到一个机器人真正帮助用户把一件事做的非常好。
当一个人过来跟机器人说「你给我播首歌,或者你给我定张西班牙的机票」时,那这个机器人已经输了。因为当他跟机器人说这个话时,他的意图已经非常明确了,这个时候你的竞争对手是另外一个,摁几个按钮就可以完成这个任务。而这个机器人还有可能识别错,但按钮不会有判断不准确的情况。
我们觉得小冰最大的差异化是,比如说小冰的能力是可以从通用对话中把用户的意图带起来,在聊天的时候突然让用户产生兴趣「有没有西班牙的机票」。这种新的意图是我们的优势。而做到这个就必须把很多前置条件做完,我们一开始也顶着压力,自然语言学术界的一些人觉得这个东西不是他们所研究的。但如果一开始不做这个,就没有今天,很可惜这件事整个学界还不是完全理解。
前几天沈向洋也提到,未来人工智能的系统有 IQ 和 EQ 两个维度,但整个行业可能还没有意识到 EQ 的维度有多重要。我们很高兴微软在这方面走的比较早,但也比较寂寞。
五、Bots 行业
机器之心:您刚才提到通用聊天机器人比功能性机器人更好,那这种基于开放域的聊天机器人比封闭域的机器人,在研发上有什么难点?
李笛:开放域有几个要求,对于开放域同时还是交互机器人来说,它的第一个难点就是数据的峰度要足够大,并且分布要尽可能均匀。理论上来讲,如果不是搜索引擎,基本上没有太大的可能去做。
第二个难题,涉及到交互。因为交互对象是人,人就绝对不会仅仅用一种感官跟你交互,在文本交互的过程中很可能会出现图象交互,语音合成。小冰语音合成的自然度很高。当机器人的声音不够自然,用户就会被激励开始不自然的对话,但机器人的声音自然以后,用户说话一自然会导致语音识别率下降。因此这是一套系统。你需要把这些都做完,就很难形成一个开放域的全体交互。
相对于开放域,封闭域好办。当你讨论一个东西时,我认为它不在我这个封闭域里,我就告诉你「对不起,我不知道你在说什么?」封闭域还有一个好处是一般带有一些明确的目的和任务,这些任务在某种程度上可以穷举成主要依靠某一种感官,比如主要靠拍照或者靠语音。但是封闭域的问题是兜不住,用户在对话的过程中会跨领域,比如我们想弄一个春节联欢晚会的机器人,就会发现这个事情比想象的要难很多。我可以回答你任何跟春节联欢晚会有关的问题,这是基本要求,你可能就会问到「今天有什么节目?」这在我的域里,然后你会问到赵本山,这还是在我的域里,但你问到赵本山时用户不知道这已经从春节联欢晚会跳到了明星明人这个 Domain ( 域 ) 里。这时如果你聊的不好用户就会停,如果聊的好用户就会自然而然的跳到东北官场问题,这完全就跟春节联欢晚会没有关系了。
所以,做封闭域,但用户不知道你的边界在哪里,他随时就跳出去了,他一跳出去就是断崖式的下跌,这个是不行的。我们认为封闭域要基于通用。只不过除了做通用外,我们还做了一个通用的端到端的产品。
机器之心:你现在如何看待各种聊天机器人大热?尤其是美国都在做这方面的这样一个现象,但是自然源处理技术具体成熟其实还有很大差距。
李笛:我觉得聊天机器人大热和人工智能大热是两件事。人工智能大热主要是因为数据积累到一定程度, 聊天机器人大热主要是因为我们都认为移动互联网进入了瓶颈期,某种程度上 App 是一个过渡阶段。所以大家都在探索交互模式的下一个阶段,也许是恰巧这两件事情撞在一起就催生出来一个东西叫聊天机器人。
但我认为是两条线:一条线是基于数据的成熟,另一条是交互模式呼唤一种创新。但国内不是这样,国内是想要做人工智能这个主题,然后就发现人工智能这个领域都在聊天对话就以为这就是一个事,其实这是两个事。
原有的交互模式,无论是 PC 时代还是 App,这两种交互模式都很高效对话提供的是别的价值。有的时候大家为了让聊天机器人可以比 App 更高效,他编出来一些理由说服自己。比如说「你问我三句话我就知道你要去哪儿」,但难道不是按两下按钮也能知道你要去哪儿吗?对话,即便是通过语音也是一种更加耗能量的方法。所以这就是为什么今天我们也不用 Siri。而且大家也都知道,有很多场景是不适合用语音的。
所以对话一定要提供其他价值,而不是仅仅沿着高效这个方向。然后我们发现对话更大价值是产生新的意图,不是像机器人,而是像人一样,能够使你在这个过程中变的更轻松愉快,而不是去帮用户订咖啡。是让用户觉得,这个交互给他很多心理上的,而不仅仅是理性上的。
这样的对话实际上在某种程度上能改变用户决策。这就是为什么我们在日本,同样你在线上发一个优惠券的用户转化率没有通过机器人的转化率高,是因为机器人的这种方式会影响你的决策,这个才是它的重点。我觉得人工智能的价值在这里。
机器之心:纳德拉在 Build 大会上说,我们正在吸取人类语言中的强大力量,Bots 的出现可能会像这种图形界面出现在 PC 上,或者触摸屏出现在手机上一样。你觉得将来基于聊天或者自然对话的机器人,带来最大的影响和意义是什么?是不是你刚才说的能够挖掘和创造意图?
李笛:这就是 CaaP(对话即平台)是靠人工智能驱动,但前端重点说的是交互模式,而我们一直认为对话的交互模式是回归。比如说当我们做搜索引擎的时候,用户一开始跟搜索引擎交互时不是想用关健词搜索,而是希望语言一句话输入进去就可以得出结果,用户希望的这种方式就是对话。但因为当时我们的技术做不到,所以我们不得不逼着用户去学怎么用关健词搜索。实际上,我们认为人类在科技史和计算机科学上,已经冲刺对话这种交互模式两次了,这次只不过是回归。