10月27日,在主题为“机器人重塑未来生活”的百度 The BIG Talk 活动上,百度技术副总裁王海峰博士发表演讲,讲述了让机器人像人一样思考需要的三种能力:1.对语言的理解;2.对知识的掌握;3.对人情感的揣摩。与此同时,王海峰博士结合百度搜索的丰富案例,深入浅出地向在场观众介绍了,这些人工智能领域的基础技术,如何让普通人的生活变得更好。
以下为经过雷锋网整理的王海峰演讲全文:
王海峰:大家提机器人,每个人的脑子里会出现很多机器人形象,有的在生产线上做工,有的在家里帮助人们做家务,甚至有的会在足球场、战场上出现。应该说机器人的这些机械技术和控制技术,已经取得了非常多的成果,如何能让一个机器人更像人呢?我们需要让它有像人一样的智能,大家刚才看到的小度机器人,甚至可以答出很多我们很多人答不出来的问题,应该说它已经有了很高的智能。
机器人具备了什么样的能力,就具备了人的能力呢?大家知道人的能力体现在很多方面,听、说、看、行、学习,还有很重要的一点就是思考。比如说一个动物他也会有眼睛可以看,耳朵可以听,也可以去行动,甚至它也可以训练出它一些能力,比如说看见一个什么场景会采取什么动作,这些条件反射的能力。而人最重要的能力是思考,这是人特有的能力。人如何进行思考,我们如何让机器人进行思考呢?我认为需要有三方面的能力,第一个是对语言的理解,大家知道语言是人特有的一种高级的智力活动,仅仅有语言,仅仅可以说话还不够,我们还需要知道该说什么,这就是背后需要有知识的支撑,需要对知识的掌握,知识的运用,以及知识的推理等等。另一方面,人生活在一个社会里,除了跟这些客观知识打交道以外,还需要和人打交道。我们同一句话说给不同的人听的时候,他的感受是不一样的,反应不一样,这就需要机器人能够对不同的人进行建模。
我讲一个故事给大家,大家知道间谍是一群很神秘拥有很强的能力人,非常善于伪装自己,打入敌人内部让敌人发现不了。曾经有一个故事就是一个女特工,她能力非常强,做得非常好,但是她最后暴露了身份,原因是什么?是她在分娩的时候,不由自主的喊出了母语,被人发现了。这个故事说明了什么呢?语言是人思维的一个基本载体,不同母语不同语言的人,语言的特点会影响她的思维活动。我们学英语,如果你学到比较高的境界需要用英语思考,用英语思考相当于你的思维模式发生变化。同样一句话用中文说和英文说是不同的,例如屏幕上显示的这些,用中文和英文语序、用词、肯定和否定不一样,这说明语言本身会影响人的思维。当一个人需要和机器交流的时候,比如说问它一些问题,问它天气怎么样,或者说跟它聊天等等这些呢,其实都是用语言来进行交互的。
我们如何让机器理解语言呢?大家知道语言是人类发展了很多年发展出来的,她充分的承载了人类知识、思维、情感方方面面的积累。语言本身是很复杂的,用我们都熟悉的中文举例来说。大家知道中文词与词之间没有空格的,所以说中文面临第一个任务就是分词。请看屏幕上,“刘清楚楚动人”,大家看到这样六个字可以很容易知道这个词是什么,前面是一个人名刘清,后面是楚楚动人。同样类似的我们增加了一个字,“刘华清楚这件事”,这里便不是“刘清”了,而应该是“刘华”。再改一点,“刘华清楚地重游”,又是另一种分词结果又加一个字,“刘华清楚地记得”,又变成了刘华。下面这个例子也很有意思的,“你老张着什么急啊”,是说“老张”别着急,。但再看下一句话,“你老张着什么嘴啊”,又不同了。上面的那些应该说还是有一个基本的分法可以分出来的,但是这句话大家看,“乒乓球拍卖完了”,到底是“乒乓球拍”卖完了,还是“乒乓球”“拍卖”完了呢?这两种说法都是对的,这就是语言的复杂性,也正是它的魅力所在,中文是一个非常有魅力的语言。下面看在百度的搜索里一个真实的例子,如果大家在百度搜索框里搜索这个是身高1.80以上的自由泳运动员,我们会直接给出这些答案,这么复杂的一个搜索,我们想把它理解好,可以找到相应的答案。左边这棵树,就是我们自然语言处理技术的基础:语义语法分析,我们可以分析出来词与词之间的关系,从而知道更准确的理解用户到底找什么。配合后台知识库里面存大量的知识检索出来,最后得到了这样的一个答案。
大家看其实“谢霆锋的儿子是谁”和“谢霆锋是谁的儿子”,这两句话的字是一样,但是顺序不一样。如果说用传统的搜索技术,我们会对其分词,算term重要性等等,由算出来的相关性找到的东西是一样的。显然这两句话问题是不一样的,我们怎么可以做到这一点呢?需要对语言有很深入的分析,对语义理解,从而知道他们要找的答案是不一样。大家上百度就可以看到,“谢霆锋的儿子是谁”,可以给“谢振轩”和“谢振南”,这是基于很深刻的语言的分析、理解技术。
再说一种就是和上下文相关的理解,比如说我们“问北京的今天天气如何”,然后给一个答案。然后又问“上海呢?”这个时候问上海呢,就三个字,如果说仅看这一句话不知道问的是什么,但是上下文相关就会知道问的就是上海的天气,而且是今天的天气。
下面一个例子也是类似的,“我计划周日北京飞杭州,帮我订票”。这个时候用户给了很多的信息,哪一天哪到哪,接下来说“请帮我预定酒店”,知道是到目的地酒店,哪一天的也知道,这是基于上下文的理解,才能做到这一点。
句和句之间的上下文不够,还可以用篇章级的上下文。比如说我们问天空为什么是蓝的,如果我们就是给出一个经典搜索的结果,百度知道里找到一个结果,就像左边的结果。但是大家看到直接拿出来的这一句话,不是真正解释天空为什么是蓝的,展开后才能看完整的解释。在很长的一大段话里,我把真正最相关的答案这一部分找出来,摘要就会是一个更好的答案。如果我们做到更好,可以给出非常明确的解答。
篇章级分析应该说比句子级更放大,对一个事件持续很长时间,几个月,甚至是几年的时间,其中有一些关键的时间点出现了一些里程碑的事件,我们也可以分析。在更长的时间段里,更多的数据里把这些关键的时间点发生的关键事件提取出来,这就是我们说的事件脉络。我给这个例子也是在百度搜索可以看到的,比如说在百度搜索棱镜门和斯诺登,右侧会给过去一段时间跟棱镜门相关的重要事件。
刚才我讲的所有例子都是中文相关的。其实人类的语言,就像刚才我也讲了间谍的故事,还会涉及到其它的语言,除了我们母语以外的其它语言。例如去国外旅游,到欧洲旅游但我不懂当地语言,有一个翻译器帮我点菜和当地人交流,这是对大家有帮助的。我们针对这种语言的理解,开发了多语言翻译系统,现在已经覆盖14个语种,36个翻译方向。既可以在网页和PC打一段文字给你翻译,包括在手机可以拿着它直接和人对话,甚至你看到一个外文菜单不懂,拿着手机摄象头一照,百度翻译就会自动为你把菜单翻译成中文的,这相当于你看到的就是一个中文菜单而不是用其它语言的菜单了。还有一个更高的境界,我们拥有语言能力,除了基本的交流和对话等等,我们发展出一些文学形式。比如说中国语言发展的非常好的诗歌,我们基于我们语言翻译技术,开发了这样的一个写诗的系统。我给系统输进去照片,自动就会做出一首诗,这是完全自动做出来的。比如说这首诗就是“日出日落一天天,人去人生几十年,人水无声情不断,水天一色韵相连。”
我接下来讲知识挖掘,对应人对知识的学习,可以从书本上学,老师家长朋友等等很多不同渠道来学。学到这些知识以后,我们构建了一个非常庞大的知识图谱,这样一个知识图谱我们有上亿级别的实体,比如说桌子一个实体,椅子是,摄像机都也是。每一个实体有很多的属性。这个凳子是白色的,是什么材质的,有很多的属性,这些属性已经有上百亿级别。而无论是实体还是属性,其增长都是线性,更多的会是什么呢?实体之间的关系,实体之间组合起来,量就会急剧增加。一个实体可以跟很多实体有不同的关系,例如一个人可能跟很多不同的人有关系,同学关系、朋友关系等等。这时候会构建更复杂的网络,这个知识图谱描述能力更强,现在我们已挖掘了千亿级别的关系在我们的知识图谱里。这些一方面从网页里挖掘,网页里有很多信息,除了本身文字信息,图片信息,还有它的排版信息,它的字号信息,它的连接等等,构成了网页非常丰富的信息,可以挖掘很多基本的知识出来。
还有文字,又回到我最开始说的语言上来了,语言文字里面蕴含很多信息。这样一句话“奢侈品牌路易威登1854年成立法国巴黎”,我们分析清楚知道里面的语法和语义关系,我们可以提取很多有用的知识来。比如说路易威登成立的时间,成立在哪儿,这是一个奢侈品牌。包括巴黎是法国的,这些都可以从这样简单的一句话里抽取出来,所以说大家看到我们可以抽取到的知识其实是非常多。抽取这些知识以后就涉及到知识的存储、检索和管理,我们把这些知识大量存在知识图谱里,要对知识相互之间的关系进行计算。“谢霆锋的儿子是谁”,问题理解了是第一步,需要在庞大的库里找到答案,这就是做相应的检索。这里包括了线下做很多的数据处理,以及线上实时地去响应用户需求。
知识推理。讲到推理其实是很复杂的一件事,比如说破案的时候有非常复杂的推理,甚至还有一些直觉在推理里面。我讲一个非常简单的例子,我们知识库里知道很多人的生日。我这里举了两个例子,一个是刘德华,一个是李彦宏先生。他们两个人的生日我们都能知道,如果问年龄,大家知道年龄是一个动态的,今年问和明年问,这个月问和下个月问,其实是不一样的。这时候不能简单说把一条某某人的年龄存在那儿,静态的放在那儿。而随着时间的迁移答案就不对,所以要计算。这种计算人看来并不复杂,但是要让机器知道年龄这样一件事应该怎么算,这个技术本身让机器如何知道,是一个我们需要做的技术。大家看到比如说刘德华是9月份生日,所以现在用今年2014年减去61年现在是53岁。李彦宏是11月份生的,现在没有到过生日的时候,所以用今年2014减生日1968应该是46,但是因为没有过生日就是45,这个是真正实时算出来的。
我们有了庞大的知识库以后,我们希望通过扩充联想不断丰富知识库,让它有越来越强大的能力。举这样一个例子,上面的这行字“谢霆锋儿子的母亲的前夫的父亲”,这句话听起来拗口,但是实际上我们把这一个一个的关系分析出来,之后得到这是谢贤,这就是联想推理过程。
我们把一些实体放在库里以后,怎么解答一些问题呢?比如说我们要找观赏鱼,我们可以先进行细分类,因为一个用户来找观赏鱼的时候,可能是对观赏鱼的某个小类更感兴趣。里面分很多小的不同的分类,我们如果把它分清楚,可能对某一类更加有兴趣,这时要在后台要做知识分类的工作。包括右边举了狗品种的例子,美食和小说,这都是在百度真实实现的。
还有一类知识,比如我们现在百度一个搜索结果,在左侧有很多自然的结果出来,同时我们在右侧会有一些相关的推荐。张飞右侧会推跟他相关的一些赵云、关羽、诸葛亮等等。例如赵云,下面还有灰色的字,给的是推荐理由。推荐理由也是我们通过自动的知识挖掘把它相关的,就是张飞和赵云是什么关系。我们这里给了,大家可以看到写的是“同事”,这个同事不是我们人编的,真的是在网上大量的挖掘,挖掘出来最后发现他们是同事关系。按道理张飞和赵云在三国时代没有同事概念,这就是互联网的能力。网友把他来的关系写成“同事”被我们挖掘出来了,关系比较贴切。点了关羽,进了关羽的搜索页,推荐了很多人出来,有一个是貂蝉,貂蝉下面给的理由就是同乡。我看过三国,听过三国的评书,看过电视剧,了解很多三国相关的知识,但是之前真的不知道他们两个是同乡。看到这个结果以后,我想知道是对是错,我在网上做了些调研,发现真是说他们两个是同乡,机器可以挖掘出来很多普通人不了解的知识。
同一个名字“李娜”,很多人都叫李娜,这个时候推荐哪一个李娜出来,这是一个问题。比如我的Query是小威,可能就是网球员李娜,给的标签就是“小威的对手”。但是如果搜的就是一首歌呢,我推荐的就是歌手李娜。人的脑袋里也是,你有好几个同学都是同一个名字,突然说这个名字,你反应出哪一个人,有和他相关的一些事情限定:这是中学同学,那是大学同学等等。
除了我刚才讲的这些大家比较直观的看到这些知识以外,还有一类也是人的高级智力活动。很多人喜欢下棋,有的下围棋,有的下象棋。国际象棋,很多年以前国际象棋,计算机已经战胜人类,围棋复杂度高很多,所以我们让我们的机器具备了一些下更难的围棋的能力。我们现在已经做到9×9围棋达到了职业选手水平,19×19也可以达到业余段位棋手水平。
刚才讲了对语言的理解,对知识的掌握和运用,还有刚才我要说就是对人的理解。人可以是对某一个个人,即使是两个亲兄弟,两个同学,他们都是不一样,但是他们有共性。真是兄弟俩一定有很多的共性,如果是同学两个人,也有很多的相似性。所以我们既要对个体建模,也要对群体建模。比如咱们今天在会场的这些人,一定是对“科技改变世界”会有兴趣,我们有一些共同的兴趣。还有社会整体趋势,现在越来越多的人开始使用智能手机,整个社会整体在发生变化。
我举一个简单的例子,这是我们真实的从百度搜索用户需求角度,我们做了一些分析,这一分析利用很多我们数据挖掘技术,自动分析出来的。用户对一些不同类别的需求,工作时间和业余时间的不同。大家可以看第三到七列是跟游戏相关,蓝色是工作时间,黄色是业余时间。按道理,打游戏应该都是业余时间的事,但我们看到这张图,大家可以发现这很有意思,这种大型游戏工作时间玩的人不多,但是也有。但是业余时间玩的人很多,但大家看网页游戏,反倒是工作时间玩的人很多,这个很有意思,我们一推理可能也一定,就是很多人工作时间忍不住想玩一下,但是玩大型网游肯定不方便,小游戏一打开玩两下,网页游戏很方便,这看上去符合人的直觉,这也是一种建模。这是另一个模型,我们每天要一日三餐,考虑吃什么,吃川菜,粤菜,做了全国各地不同地区对不同菜系感兴趣的模型,川菜受欢迎的程度很高,除了广州大家最感兴趣的还是粤菜,全国各地很多地方对川菜感兴趣。
这是个性化的例子,这怎么看?如果不同的用户,一个用户是对动漫感兴趣,一个是对快递感兴趣。我们搜SF这两个字母的时候,用户找的东西是不一样,如果对动漫感兴趣的可能是找跟动漫相关的,快递的用户找的就是顺丰速递,我们根据个人不同兴趣进行推荐,会推荐不同的东西出来。
刚才讲了三方面,语言、知识、对人的理解,我们结合起来会有综合的思考能力,综合的思考能力可以从很多方面来展现。大家看了小度机器人,这样一个小度机器人可以听人的问题,可以去回答。背后是什么,背后就是对语言的理解,对知识的掌握,从而形成我们叫“深度问答技术”。除了小度机器人,这些技术应用在百度的产品,我们问濒临灭绝的动物是什么,或者问某一个片子的片尾曲,百度都可以给出答案。“孕妇可以吃荔枝吗”,在座的朋友有多少可以回答这个问题,其实这类的问题不同人可能会有不同的回答,该怎么办?百度会告诉你,有多少人认为能吃,还会告诉你相应的能吃的原因是什么,认为不能吃的原因是什么。包括问“宝宝打嗝怎么办”,百度会告诉你怎么办,会把这些答案精炼提取出来。
说智能交互,交互有很多形式,刚才我说的问答也是一种交互,对话也是一种交互。我们的机器不仅具备了语言交互能力,可以识别声音,可以识别图像,这就是我们所说的我们可以做“多通道、多轮对话的智能交互”。我给大家看这样一幅图片,问大家这是什么花?有可能有人会觉得是樱花或者是梅花,看上去有一点像。图片相对花的部分比较小,所以机器这个时候可以很智能的提示用户说,我看不清楚,照一个花的特写。有了特写以后,因为现场照的,我们可以结合很多信息,我知道现在是什么时间照的,通过定位信息知道什么地方照的,春天的时候在玉渊潭照的很有可能就是樱花,我们结合这样的背景信息可以猜到答案是什么。如果没有这些信息后台我们会挖掘很多知识,大家记得我们会挖掘很多知识,知识会知道樱花和梅花之间的区别,花柄会有不同。我问用户有没有花柄,用户不知道,我有一个花柄的特写,他一看这就是花柄,他说那是有的。实际我们就知道它是什么花了。刚才举的是一个形象的例子,这在百度的产品里已经实现了,大家如果拿手机就可以拍一个花,有一个交互的过程就知道这个花是什么了。
还有一个涉及到交互的例子—订飞机票。屏幕中的图片是手机的一款应用,而应用的背后承载着百度的智能交互技术,通过对文字及语音的解析和理解,从而调用后台知识库里的知识,全自动地完成订票。应用的后台具有强大的处理能力,模拟出呼叫中心的业务人员在与用户交流的场景,而实际上,用户一直在与机器进行互动。
开场的时候我提到了人是有情感的,我们要对人的情感进行分析。当我们问“玉龙雪山怎么样”时,百度搜索会根据网上的评论信息,汇总统计好评、中评、差评的数量,综合出一个打分。同理,当用户搜索上海怎么样时,百度搜索会整合出用户对上海这座城市的评价。当用户搜某一个型号的汽车时,就不能简单地列举出这款汽车好或不好,因为不同用户的关注点不一样,有的用户关心动力,有的用户关心操控性,有的用户关心内饰……百度搜索可以将不同维度下大家对车的评价进行提炼,综合的对这款车进行评价。
最后说到就是计算机领域和人工智能领域非常经典的话题,“图灵测试”,这是人工智能的终极目标之一。大家知道图灵测试的过程就是让一个人和一个机器同时同样的问题,如果测试人不能确认被测试者30%的答复哪个是人、哪个是机器的回答,那么我们就认为这台机器就通过了图灵测试。
“昆明在哪个省——云南”,人和机器都能回答出。
“写出一些有关‘送别’主题的唐诗”,人可能会想到,机器因为有知识库的支撑,所以也可以做到。
对两个非常复杂的数字进行四则运算,机器比人快,但是如果机器瞬间给出答案,反倒让测试人发现给出答案的不是人而是机器。所以,在这个时候,机器会停顿一会,再给出答案。下面的例子就是下棋,目前围棋已经做得非常好。
大家看到,如果通过这样一个图灵测试,很多的任务场景和前面我提到的内容具有很强的相关性。如果我们把语言理解能力做得越来越好,把对知识的掌握和运用的能力做得越来越好,同时加上我们对人的理解能力,机器可以真的像人一样思考。(完)