Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

《科学世界》:搜索的新时代

现在人们每天都在通过计算机或智能手机等搜索各种各样的信息,搜索已经成了我们生活的一部分。你有没有想过,搜索是如何实现的?未来的搜索又会是什么样?微软亚洲研究院常务副院长马维英博士接受《科学世界》的专访,展望了搜索技术的新趋势。

作者:《科学世界》记者/方晨

搜索基于两个重要信号

科学世界:您认为搜索的本质是什么?

马维英:说到搜索的本质,让我们先回过头来看看搜索引擎是怎么工作的。

现在的学生大概很少用到图书馆的索引卡片了。在我当学生的时候,到图书馆里面找一本书、一本杂志或一篇文章,通常会通过标题或作者姓名去检索。图书馆里会有一个个卡片目录,也就是一个个索引表。这种表称为倒排表,也就是根据属性(例如标题、姓名等关键词),反过来去找到这篇文章或这本书。其实搜索引擎就是建立类似于索引表的系统,用许多的信号和文本特征向量来做相关性排序。

信息检索是一个已经研究了多年的领域,但是一直到有了搜索引擎才有突破。这有几个原因,最重要的还是机器学习。

计算机做很多事情,包括搜索、机器学习,其实都需要利用有用的信号,特别是由人监督指导所得到的信息。 网络出现之后,为搜索提供了两个非常重要的信号来学习相关性排序。第一个就是锚文本(anchor text)。在互联网中有很多超链接(hyperlink),一个网页可以通过一个超链接指向另外一个网页,网页中描述这些链接的文本,也就是我们在网页中看到的那些可以点击的文字,就是锚文本。以前在纸上是没有办法这样直接链接到另一个地方的。锚文本其实就是指向另外那个网页的最好的简介、描述。也就是说,那个网页要用一句话或者几个关键字来描述的话,那么锚文本就是最好的描述。现在,有无数的人在网络上创造这些锚文本,而不仅仅是图书馆的编目人员在考虑某个文献应该用什么关键字来描述。以前没有互联网,没有办法创造出这么庞大的关于网页标注或者信息标注的数据。这些信息也是大数据,是很重要的数据。


锚文本的例子。这是维基百科中的“地球”条目,里面那些可以点击的蓝色文字,如“太阳系”、“行星”、“直径”等,就是锚文本。点击这些文字,就可以通过超链接到达相关的页面。


第二个重要信号是指,搜索引擎一旦开始运行之后,人就与它出现了互动,会产生反馈信息。用户不断地输入关键词进行搜索,之后又会点击搜索引擎给出的相关网页,这是一个很庞大的反馈回路。这些信号就可以被拿回来帮助我们去了解用户的需求,也就是应该链接到哪里。一方是网络作者(web author),一方是网络用户(web user),他们通过搜索引擎产生了大量的训练数据(training data)。有了这些数据,计算机就可以通过学习给出更好的信息检索结果。

科学世界:那么搜索结果是如何排序的?

马维英:文档排列(ranking document)的问题,其实就是从海量的数据里大海捞针,一层一层地捞,或者说是一个多次过滤的过程。对于一个查询,最初可能得到多达几百万个结果,先进行第一级过滤,也就是用一些简单的特征向量等把一大批无关的东西滤掉,从几百万个减少到几千个。再进行第二级过滤,用一些相对比较复杂的特征来过滤。最后再做一些更复杂的过滤,比如做重新排序,再按领域如医疗、购物等进行垂直搜索,到最后筛选出来的结果就只剩几百个了,这使得人们可以进一步浏览并找到所需的网页。

科学世界:现在搜索引擎领域研究的主要是什么问题?

马维英:接下来我觉得搜索引擎要解决自然语言理解和自然语言生成的问题,这是人工智能中很难的问题。首先要让搜索引擎能够理解语义,知道用户到底在说什么,要做什么。其实传统的搜索引擎并没有理解,只是在做一些匹配。要表达搜索的结果,又有一个自然语言生成的问题。以往是把10条搜索到的文献列出来,但是将来搜索引擎可以把这10条文献的内容进行摘要和总结,或者直接回答你的问题。

科学世界:也许用户只是说了两个词来搜索,但是机器可能要理解这两个词背后的搜索目标。

马维英:对。现在的搜索引擎只能从这两个关键词去找,例如哪些文章曾经包含这两个词的,然后做一些统计,包括这两个词出现的频率,以及怎么出现的,来决定这些文章有多相关或多重要。这个过程是完全没有语义理解的。搜索引擎走到今天,下一步就是要让机器能够理解人。

例如这样一句话:“Buy a Surface Pro 3 at Microsoft Store at Bellevue two days before my son's birthday”(在我儿子生日之前两天在Bellevue的微软商店购买一台Surface Pro 3)。机器需要进一步把它分解,知道“Buy”是一个动作,“Surface Pro 3”是一个产品,“Microsoft Store”是一个商店,“Bellevue”是一个地点,然后它还要从“two days before my son's birthday”找出一个时间,而且要从一个相对的时间对应到一个绝对的时间(日期)。最终,机器把这样一句非结构化的文字表达成内部的一个结构化表达。

因为计算机只能看懂结构化的数据,所以需要函数映射(mapping function)。可以说它是一个转换,转换之后机器才能够理解这个文字。语音智能助理如微软的小冰、小娜等理解了这句话后,它们就可以帮你去做这件事了。



将人类的非结构化自然语言转换为计算机可以理解的结构化语言

搜索引擎就是要做这件事情,即一个短句子进来,怎么能够理解它,把它从原来的非结构化表达转换成一个机器内部的结构化表达方式。机器内部要有“知识图”,它需要把外部的信息转换,也可以说是“落地”(ground)到内部图上。只要能够“落地”,它就可以知道这个比尔·盖茨,是微软的比尔·盖茨,而不是另外一个比尔·盖茨,还能知道他还和谁有关系。如果这段文字里面描述的实体之间的关系,或者说里面包含的主语、谓语、宾语能够“落地”到这张图上,机器就可以在图上做计算和推理。

如果问“北京的人口是多少?”,这是个一阶问题,我只要找到北京、找到其人口数,就找到答案了。如果问“中国首都的人口是多少?”,那就要先理解中国的首都是哪里,这就是两阶的问题。接下来还有三阶、四阶。还有更复杂的,不光是两个概念之间的关系,而是多元的关系。怎样将复杂的自然语言映射到内部图,我觉得搜索引擎下一个要解决的就是这个问题。谁解决得好,谁就往前跨一步。

搜索引擎的三种能力

科学世界:如何提高语义理解的能力?

马维英:前面讲了需要有两种重要信号,我想说,这两种信号到今天已经远远不够。我们需要创造出新的机制,让机器能够从人学到更多新的信号。

我可以举一个最近我们在想的新的信号。就讲小冰好了,小冰跟你说话说得越多它就越聪明,原因是它能从与人的对话中来学习对话。它一开始先进行简单对话,每次你回馈给它的,都会成为它新对话的语料。其实要单纯地从自然语言里面学习是很难的,比如两个人结婚可以叫婚姻关系、配偶关系、夫妻关系等,同一个语义可以有非常多种讲法。没有这些信号的话,就永远学不到怎么样做进一步的理解。

我们发现可以利用像小冰这样的渠道。就是说,第一次没有办法“落地”的话,小冰可以再问你问题。现在一般人对搜索引擎不太了解,觉得我给它再多的资料也没用。一旦有这个交互的能力之后,原来搜索引擎想一次做好而做不好的,它可以用互动的方法得到更多信息从而了解人的意图,能够做更好的链接和“落地”。

科学世界:这种学习主要是基于统计吗?

马维英:广义上你可以说学习最终都是来自于统计信号,但如果没有足够的监督信号,你很难把搜索引擎做好。

要把非结构化的语言进一步变成结构化的、机器能理解、能计算的,这就是“机器理解”

(Machine Comprehension)技术,这其实需要更多的监督学习(supervised learning)和结构化的知识表达。现在的搜索引擎或者网络上并没有这些东西,但是我们接下来就需要这些实体及其关系的信息,还有像每个事物的多种表达方式、一对一对的提问与回答或者曾经的对答等。如果全世界的这一类数据都能够收集起来,就能够实现更好的语义理解。

搜索引擎以前只有一种方法,还是属于信息检索,用大量的倒排、正排,还有排序函数(ranking function)来做搜索。但接下来有两个能力要进一步利用起来。一个就是前面说的知识图,它是结构化的,你需要一种图的搜索能力,在上面能够做快速的遍历(traverse)。有时候会有很多的实体跟关系,这就要看能不能快速在上面遍历这些关系。比如像“核聚变”这个概念,核聚变是属于哪一类,跟哪些东西有哪些关系,这些关系的属性是什么。这些信息原来都是非结构化的文字表达,但是将来你要进行语义理解,就需要建立知识图。

另外一个能力就是机器学习,它其实是做一种更高维的搜索,这也是另外一个很重要的能力。如果将语言用向量表达,那么你可以用向量计算就把其中的语义算出来。最近的深度学习就在试图将全世界所有的东西变成一个向量表达,这个向量可能很大。你怎么在这么高维的空间里面做计算,这个是第二种能力。

一种是图的表达、图的算法、图的搜索,一种是向量表达、向量搜索、向量做匹配,第三种就是传统搜索引擎建立的,用倒排、正排解决问题。这里面的核心是建模,怎么从大量的数据去建立内部的大模型(big models)和大图(big graphs),又怎么样能够把这么大的向量搜出来做索引排序,在上面跑搜索计算。

科学世界:这三种能力之间是什么关系?

马维英:未来这三种能力还要打通。这是所有计算机所用到的三种主要的表示形式,它们能够交叉,一个表达可以在另外一个空间找到另外一个相对应的表达,然后再到第三个空间,也就是在三个空间跳转。把一个原来非结构化的东西慢慢“落地”到内部,最后用这三种计算的能力推算出来。

这中间,大家觉得人工智能最重要的这个“脑”其实就是一个模型,就是“大模型”和“大图”。不断去完善这中间的表达,一边是做构建,一边是服务。



大模型、大图的构建和服务

我们现在正在构建的未来搜索就包括这样的三种能力——知识挖掘(knowledge mining)、机器学习(machine learning)、信息检索(information retrieval)。还有自然语言的理解和生成所需要的基本功能,比如说怎么去切割文本,怎么将文本中间的片断连接到图谱上面做推理。甚至还会加上一些基本的常识,例如一个人在什么年龄才能够结婚,那么如果提到一个人的妻子,但这个人只有两岁,你就会怀疑不是指这个人,大概是另外一个人。

能和人对话的搜索引擎

科学世界:信息的这些结构,是人类设计好的,还是机器自己总结出来的?

马维英:我们认为将来两方面都要有。如果把小冰作为一个成员融进社交网络,它可以藉由和用户的交互自动去学习,将自然语言结构化,这叫主动学习。另一方面,人类已经创造了大量的结构化的信息可供利用。各个领域里面都有数据库,例如商品的数据库等,这些是经过人们二三十年数字化的努力形成的。这个结构化过程会不断进行。现在,我们希望让这个过程更容易,或者说更巧妙地引导用户帮我们提供信息。总之,有越多人使用的搜索引擎,机器学出来的东西就越好。

小冰有机会可以跟人学更多的东西,这是原来的搜索引擎做不到的。小冰可以和人相处得很好。如果小冰希望多知道一些东西,比如个性化交流的时候想知道你的年纪跟职业,当然直接问,你可能感觉不太好,但是问你最喜欢买什么样的东西,最近在看什么书,到过哪里等等,就可以用这些来分析你属于哪一类人。它用这些东西可以对某个人建模。

在对话过程中了解用户的信息,然后得到更多信号来帮助做出更好的搜索。而且这些数据可以不断完善知识的组织和表达。所以我觉得对话引擎(conversation engine)会是搜索引擎下一个重要的发展方向。

另外,这种引擎在企业级的应用也很重要。你在公司里面找10年前的资料容易吗?

科学世界:不容易。

马维英:或者你同事在做什么,你知道不知道?今天工作场合的搜索引擎基本上还处在很原始的阶段,更不要说变成你的个人助理了。要让搜索引擎成为聪明的秘书、助理,也需要不断建立知识表达。我觉得这个领域就是要解决最重要的几个问题——谁、是什么、在什么时候、在什么地方,这个就跟实体搜索有关了。这些知识表达出来不但可以帮助搜索,还可以实现很多数字化的协助功能。

例如从时间的角度来说,能够生成结构化的内容,描述某个人或某一个国家在某一天发生了哪些事情,也可以自动建立起整个公司的排期。时间可以变成一个实体,把所有东西都根据时间来组织。当然也可以根据地点来组织。一旦有了很多这样的实体页面,我们就可以提供知识服务,可以做个人助理。将来这都是公司里面最重要的工作,怎么去创造特征、传达信息、沟通、合作,数字助手就可以帮助完成这些工作。一些原来我们认为传统引擎不会做的任务,在类似小冰这样新的交互界面里可以很自然地做到。

科学世界:这已经不是纯粹的搜索了。

马维英:搜索成为其中一个功能。我举一个例子,在公司的聊天组里做一个像小冰这样的机器人,比如叫艾迪。大家可以说,艾迪能不能帮大家在某一天安排一个会议?自然语言描述后,它就会把会议预定好,并发出会议邀请。大家还可以让艾迪帮忙记录一下这次会议,或者帮大家找一些相关的资料。

甚至我们也希望有一些情感智能,拥有积极向上的态度,会照顾别人,会关注每一个人。比如它会在适当的时候说,今天是谁的生日,大家庆祝一下吧,让工作场合更有人性关怀的一面。它甚至也能适时开一些玩笑。如果每一个组都有这样一个助手,大家会不会觉得工作会更有效率?

这些都需要信息不断结构化,人机交互就可以用自然语言来进行。所以,搜索几个关键词只是二十几年前开始的传统搜索引擎。今天的自然语言理解已经发展到不光知道你在问问题,还能知道你在做一个数学计算。比如你问一个鸡兔同笼的问题,机器会把它转换成内部的数学计算表达方式,最后还帮你算出来答案是多少。我们为什么做这个?就是因为它是从理解自然语言而得到最结构化的语言——数学表达式,最后再得到答案。

当然还有很多应用。公司里面会有很多问题跟商业有关,比如今天这个产品的发展到底怎么样?你可以询问公司的智能助理,它可以把结构化的数据进行整合,给出针对性的回答。这些都是高价值的创造。

科学世界:除了语言,搜索引擎如何处理图像?

马维英:当然我们也做图像搜索。当你把图像也变成交流的内容,就可以通过交互拿到更多的训练数据。有时候搜索给出的答案不对,用户就会反馈,比如图中的狗不是这个品种,你说错了。更多的用户反馈数据,能够让我们做出更好的图像识别。

最近小冰发布了新的图像聊天功能。原来我们只是单纯告诉机器这张图片里面有什么,而藉由聊天互动,机器可以知道人们看到这张图会怎么反应。发布会的时候有一个例子,一位用户发了一张天津爆炸现场的照片,其他什么都没有说。小冰的回复是:你住在天津的哪个位置?就是说小冰多了一步,先知道你这个照片是什么内容,然后直接根据内容说出下一句,就像人聊天一样。

科学世界:这是挺厉害的。

马维英:对。还有,例如说你照了一张脚肿了的照片,它会直接问严重吗?或者说照了一只猫,猫吐了一个小舌头,一般的图片搜索会说这里有只猫,但它不是这样说,而是说你看那个小舌头真可爱。这就更像人回答。

也就是说连图像都可以变成和人沟通的媒介,可以不只是给你信息,还给你更多的互动和社会化的反馈。你发图给小冰,小冰可以聊。反过来小冰也可以发图给你,有时候一张图片胜过千言万语。如果你跟小冰说“你太棒了”,小冰可能会发张图给你表示“楼上过奖了”,它用了一个图来表达。

科学世界:这种图是由人准备好的吗?还是根据谈话的内容即时生成的?

马维英:我们要做到随时通过网络上的数据选取合适的图片。整个网络上这么多的资源,有非常多的图可以随小冰用。我们准备了几十亿的数据,让小冰随时找到能够适合它表达所需的。用图来沟通,以前的搜索引擎是办不到的。

科学世界:图片使用的恰当程度,现在能做到什么水准?

马维英:其实分类已经做到很细了。本来就已经有几千类的表情图,我们根据分类反向去找图,把全世界可以适合用来表达这些感情的图像都找出来之后,再稍微对人做一些过滤,保证图没有问题。

这不是只秀表情图,因为那些基本上是不变的,玩几次就没意思了。它可以随时挑选新的图,很多都没有在对话中被用过,而刚好在那个情景中可以用。合适的图片能让沟通更有趣。

科学世界:计算机找这些图片并且分类,是根据和图片相关的文字来统计吗?

马维英:有两方面。一方面是根据图像本身的像素来分析,另一方面就是将图像所带的文字说明或者图像所在的上下文当作一些补充信息来学习。这也就是我们所说的深度学习。现在有足够多的数据,它可以慢慢学。目前计算机已经学得蛮好了。

未来的搜索

科学世界:搜索引擎接下来的发展会是什么样的?

马维英:以前垂直搜索一直没有做起来,我觉得小冰这样的引擎可以让垂直搜索活起来,而垂直搜索可以带来很多知识。像客服、购物网站或者银行,这些都是属于垂直的分类。这些垂直分类都有自己的数据库、网页,有很专业的知识背景。

科学世界:以前垂直搜索没有做起来,是因为交互界面不好吗?

马维英:因为那时候大家觉得垂直搜索也还是一个普通搜索,希望从一个搜索框出发,仅仅通过关键词匹配来查询。这样,垂直搜索和传统的搜索就区分不开,难以深入挖掘更专业的数据。但如果藉由对话引擎,就能够知道你到底对哪个领域感兴趣,能够驱动那个领域所有的数据库和专业知识,进行更深度的交互,深度理解你的语义,把你要做的事情推动起来。

我个人觉得搜索引擎接下来有几个趋势,第一个是继续发掘、搜索知识,把各个领域的知识图、知识结构建立起来。第二个就是传统搜索引擎会变成对话引擎。对话引擎非常有用,特别是在手机上,你更需要很自然地跟它对话。通过人工智能加上社会化的信息,很多专业领域都可以很自然地连接进来,而且还可以藉由交互更加深入地理解用户的语义,来直接回答问题,或者最终做出推荐。

科学世界:输入关键词搜索和用自然语言交互式搜索,得到的结果会很不一样。

马维英:以前,人们知道有些东西计算机一定看不懂或没有用,所以人被传统的搜索引擎训练多了就不愿意多讲,就是输入几个关键词。这样就少了人机交互的机会。但是现在和小冰就自然愿意多讲些。

跟越来越多的人工智能引擎交互之后,人可能就很习惯与之对话了。现在已经有很多交流工具,比如微信等。如果把其中一个自然人换成一个机器人,和它对话也显得很自然,我就会愿意和它聊,而且它反问我问题,我也愿意回答。搜索引擎以前是没有机会反问的。

搜索引擎以往的实现方法没有“对象”的概念,不知道前一个搜索与下一个搜索之间有什么样的关系。但是人工智能引擎能够针对谈论的对象进行提问。比如你说了一个人名,但是这个名字在我的数据库里有5个,我就可以问,这里有5个不同单位的人,你是指哪个?明确了这个对象,在进一步的交互中就可以帮助你找到与这个人有关的更多信息。而且这次你给过的信息,它可以学习、记住。

对话是一个无比自然的方式。所以我觉得互联网的发展,从网页到今天走向大量的应用,下一步就会是交谈代理界面(conversational agent)。我觉得最终会有无数个交谈代理界面,每个都专注一个方面,比如说有的是幼儿教育专家,有的是篮球专家,等等。各个专业的机器人专家,你可以跟它聊,或者问它问题。这可以成为一个新的产业,甚至成为新的入口。

科学世界:那有没有可能有一个界面,它就是各个方面的专家呢?

马维英:我们可以在这些所有的交谈代理界面上再创造一个,这个我们也在做。但其实这些界面也是需要有一点性格的。如果你让小冰这样的萌妹子,突然间变成一个女博士,用户的角色感会错乱的。转换起来也很简单,例如小冰可以说:“我给你介绍一个姐姐,她是北大博士。”这样就转换了。其实背后的系统可能是同一个,但这样可以让人感觉比较自然。

小冰在这里就变成了在界面和界面之间做搜索,在对话过程中可以随时给你换成另外一个“人”。所以这种方式已经不是传统的搜索,搜索的结果不是网页,而是另一个界面上来跟你对话,同时它还可以跟你学习。

以前的搜索引擎都不需要有情商,只要智商,我们现在发现情商也很重要,因为要把它做到让用户觉得有感情,而且是符合社会文化的。所以如何把更多的情感智能做到搜索引擎里面,变成很重要的关键技术了。

科学世界:情商也是靠机器学习吗?

马维英:对,一开始还是靠大量的数据来学习这个模型。不但是对用户建模,这个引擎本身也有几种主要的人格,我们也用计算机模型来模拟它。我们希望在文字产生的过程中能够把人格体现进去。自然语言生成,不只是单纯的语义生成,而是说如果是生成一个对话,要像那个角色讲的话。例如谈的领域是医疗,或者是作为银行客服,就要让人感觉是相关从业人员该讲的话,跟你的互动很专业。因此,用来训练的语料基本上也是这个行业里面的人员的对话。

科学世界:将来的搜索想象起来非常有意思。

马维英:跟大家认知的传统搜索完全不一样。以前我们从来没有这种能力。也就是说计算机在看到一段文字之前,已经把全世界的东西读完、记下来,还变成了结构化的数据,而且全部可以是图的表达。这张图是从全世界的文字里面抽出来的。现在它通过这张大图来理解目前看到的这段文字,分析其中各种元素之间的关系。这个能力运用起来不得了。人记不住那么多东西,而计算机可以记住。但是搜索引擎的推理能力,还有常识,目前还比不上人。

科学世界:这些为什么难以通过深度学习来提高?

马维英:因为人的很多语言牵涉到更高级的表达。现在机器擅长的还是向量计算,如果能够将信息表达在一个向量空间中,那么在其中进行各种计算,这是机器能做的。当牵涉到一些高维的概念,概念与概念之间是更为复杂的图的关系,对这种图的搜索能力还在构建中。这个能力让搜索引擎能够在更高的层次做合理的表达。

但是计算机在学习处理这类表达方式时,还欠缺一些大数据,结构化数据还不够多。问题是我们到哪儿去找这种信息,能够不断让机器可以去进一步学。所以也有人问,人类所有的知识到底是不是靠语言能够表达出来?可能有很多知识还是不容易完全用自然语言表达。

科学世界:如果素材或资料够多,机器会学得很快。

马维英:对,机器厉害的一个地方就是大数据,最近这几年的突破也是因为有数据。但是数据分几种,一种是很低等级的数据,只能学一些比较低等的特征。有一些比较结构化的,像超链接等,或者是像维基百科这种已经告诉你这个类别和那个类别有什么关系,这些数据都是比较高阶的,有结构的。这种数据越多越好。

接下来能不能创造出一种应用,能够让人更自然地给计算机提供所需要学习的信息,这是我们要思考的。藉由做Office365,我们刚好有这样一个机会。例如你天天写电子邮件,我就在那里学你怎么写。我们已经开发出一个技术,你边写电子邮件,计算机立刻建出一个实体图来。你输入的文字里提到的人、项目、单位、时间等,它们之间的关系立刻实时建立出来。机器可以实时把你的知识表达图,就是这一段文字在全世界的知识图上面所表达出来的部分是什么告诉你。

科学世界:这有些科幻的味道。

马维英:下一步我们希望把这个东西用在小冰身上。小冰能根据邮件内容预测是不是要帮你预定会议,当然这是最直接的。它还可以帮助你更快地完成邮件,帮你结构化这个邮件。

比如有时候我们的电子邮件中还想输入超链接。我们正在研究的一个东西,就是你写完电子邮件后可以自动产生链接,比如邮件里提到某个项目,那个项目有个网页。如果收件人不知道这是什么,一点就能打开网页来了解。我们的程序可以区分这个收件人是谁,自动帮你生成超链接。又比如,你在用英语写信时,它告诉你基于全世界曾经出现的类似表达,下一句最可能出现的是这句,你要不要参考一下。这些都是以前没有的。这个东西还要做成很简单的形式。现在只是显示了搜索具有这样的能力,但到底最终能做出什么,我们还在思考。

​原文链接:http://mp.weixin.qq.com/s/GQB9lezeOMp4WlF-7xLSYw

微软研究院AI头条
微软研究院AI头条

专注科研19年,盛产黑科技

理论马维英微软亚洲研究院理论搜索引擎NLP
暂无评论
暂无评论~