Google 全面转向人工智能,机器学习高管接管搜索引擎

2016年2月4日,Google 搜索业务负责人 Amit Singhal 即将退休,公司机器学习业务高管 John Giannandrea 将接任其职位。

文/新智元(微信号:AI_era)编译  编译:王嘉俊 李宏菲

Amit Singhal 从 2000 年加入 Google,并且改写了 Google 创始人 Larry Page 和 Sergey Brin 最开始写好的搜索引擎算法。自那时以来,Singhal 就一直负责 Google 的搜索引擎业务。

在 Amit Singhal 负责 Google 搜索引擎期间,一个很出名的故事是 2013 年仅一年,就对搜索引擎进行了超过 890 次的改进,这里包括算法、用户界面调整、自动填充、Google Now 等,其中核心算法是一天一改。

从 Amit Singhal 到 John Giannandrea,很多人把这个举动看作是机器学习引领搜索引擎未来的信号。就解决 Google 搜索引擎发展过程中所遇到的问题而言, Google 的这一举动既是领导权的转移,同时也是领导者所属部门的转移。

怀念 Amit Singhal

自从 Singhal 于2000年加入 Google ,他已经成为Google 搜索引擎发展的主要推动力。回想Singhal刚刚加入Google 的时候,Google 的规模还比较小,Singhal又是一个肯亲自动手去做一些事情的执行官,为什么这样说呢?因为当Singhal 刚刚加入 Google 的搜索引擎部门时,他重写了由 Google 联合创始人Larry Page 和 Sergey Brin 最开始创造的判定为了响应搜索, Google 应该返回什么结果的算法。

自那时以来,Singhal就一直负责 Google 的搜索引擎业务。通过不断转换导向 Google 搜索,例如 Google 收集和处理的文件量的大幅增加,垂直搜索的发展,结合社会信号的实验(并不总是成功),提供直接的答案,也许最重要的是,一个总是移动搜索的世界推动了 Google 的成功。

事实上,值得注意的是,有一年多的时间,Singhal一直致力于移动设备上搜索算法的研发,就如我上个月在与他进行长时间的采访之后所报道的那样。恰巧这几天 Google 大多数的搜索逐渐基于移动设备,

从一个高层的角度来说,这是一个承诺,即保证搜索团队所期望事情会发生。

Singhal 还负责 Google 搜索算法第二次重大的重写工作,这一举动被称为“蜂鸟的努力”,这是短短两年多前发生的事情。与他第一次重写搜索算法的时候不同,“蜂鸟”不是Singhal直接努力的结果。他更像是一个乐队的指挥,监督和指导所有参与其中的人。

过去的 Google 搜索引擎

蜂鸟是重要的,因为它的目的是确保 Google 有一个能够接收新的信号以及相对于过去能够更好回应变化的基本搜索装置。蜂鸟常常被误解为 Google 仅仅开发出了某种语义智能,一个能够更好的理解自然语言查询的能力。但是它远不止于此。

将机器学习算法用在搜索引擎中(关于机器学习,可以看我们推荐的机器学习入门课程,来获取更多的关于机器学习的背景知识),意味着计算机能学会哪些事物与他们自己是一个好的匹配。人类不用写代码来鉴别所有那些构造起来像一只猫的事物。他们此时写代码的目的是帮助机器自己学会如何鉴别一只猫。

直到最近, Google 开发的大多数算法的目的是:找出其他人认为在使用搜索引擎时什么样的搜索结果才是好的查询结果。从一个网页的链接跳转到另一个网页的链接的行为,反映的是人类对所支持网页的一种投票行为。写代码的目的是以一种方式来计算和权衡那些看起来有用的链接。 文字在网页上的使用,被使用的频率以及在哪一页,是另一种可以反映人类感知搜索结果质量的东西。 因此,写代码的又一目的即是分析上述这一过程。

简单来说,那就像是叫搜索引擎根据数字来画画,而不是教它怎样让它自己成为一个伟大的艺术家。

编写代码的目的是确定网站的权限,来帮助理解单词和其他因素之间的联系。但是这一切举动的核心,实质上都是人类想试图了解其他人,而不是教机器去理解人类。简单来说,那就像是教搜索引擎根据数字来画画,而不是教他让它自己成为一个伟大的艺术家。

我毫不犹豫地去与那个进行类比,因为它暗示着现在的 Google 搜索引擎不是非常智能。并且许多参与其中的杰出人士表示: Google 的搜索引擎是一个每天被百万人使用的、可靠的、惊人的资源。但是一个引入机器学习算法的搜索引擎可能会更加智能。可能,无论是从工程的角度还是从保持人类代码更新不断维护的角度来说,它可以更便宜地运行。最重要的是,它可能更适应可能发生的变化。

搜索引擎新变化:RankBrain

随着Giannandrea接管 Google 搜索引擎部门,许多人可能将把 Google 的这一举动作为机器学习革命是现在搜索引擎未来的信号。就解决 Google 搜索引擎发展过程中所遇到的问题而言, Google 的这一举动既是领导权的转移也是领导者所属部门的转移。

那可能是一个比较公正的评价了。机器学习算法已经被 Google 发展地成熟了很多,并且 Google 明确表示还要继续完善机器学习算法。然而,当它涉及到 Google 搜索时,它不可能是是一朝一夕就能完成的革命。取而代之的是,他可能是更加累人的但是是真实的“进化,不是革命”的展示,让我们拭目以待。

据统计,每天向 Google 提交的查询中有约 15%是其未曾见过的。公司的资深研究科学家 Greg Corrado 透露,为了更好回答这些问题,Google 利用了 RankBrain 来将海量的书面语嵌入到计算机可以理解的向量里面。

如果 RankBrain 看到自己不熟悉的单词或短语,它会去猜测其类似的意思并对结果进行相应过滤,从而有效地处理一些从未见过的搜索查询。比方说 RankBrain 能够有效回答 “What’ s the title of the consumer at the highest level of a food chain?(食物链当中最高级的消费者的头衔叫做什么?)” 这样的问题。

对于 Google 的搜索处理机制来说,RankBrain 只是为其搜索算法提供输入的数百个信号之一,但这种信号跟别的信号的不同之处在于它懂得学习,而别的只是别人在信息获取中的发现和洞察。正是因为 RankBrain 具备了学习能力,几个月后它就已经成为对搜索第三大重要的信号,其效果之好甚至出乎 Google 人员的预料。Google 内部曾让做算法的工程师人工去猜测搜索算法会选择哪个页面作为排名第一的结果,其准确率为 70%,然后 RankBrain 去做了同样的事情,准确率达到了 80%,超过了那帮做算法的工程师的平均水平。

随着时间的推移,RankBrain可能能够处理越来越多的当前通过手写代码分析来改善 Google 算法的各种各样的信号。就目前 Google 的情况来看,它理应做一些这方面的改进。但是让机器接管人在 Google 搜索引擎改进中所做的这些事情,不是一朝一夕就能完成的。

预计Google 的各项业务会发展地越来越智能。预计机器学习将会以各种有意义的方式整合进 Google 的搜索引擎中。预计 Google 这所有的举动将会继续保持其搜索引擎的领头地位。但是不要指望仅仅在一朝一夕之间,所有的搜索结果将发生改变。

预计,Google 将继续增长更聪明。预计,机器学习将继续在有意义的各种方式集成到搜索。希望这一切将继续向 Google 堆作为搜索巨头的顶部。但是,不要指望一夜之间,所有的搜索结果将发生改变。

随着时间的推移,RankBrain可能能够处理的处理当前通过手写代码进行分析,以提高 Google 的算法的各种信号的越来越多。目前,根据 Google ,它理应做一些这方面,但似乎不太可能在一夜之间被机器接管。

RankBrain 运行原理解析

RankBrain 的运行原理来自于 Bloomberg 的报道。

RankBrain是 Google 蜂鸟搜索算法的一部分。蜂鸟是整个搜索算法,就好比车里面有个引擎。引擎本身可能由许多部分组成,比如滤油器,燃油泵,散热器等。同理,蜂鸟也由多个部分组成,RankBrain就是其中一个最新组成部分。

特别指出,我们知道RankBrain是整个蜂鸟算法的一部分是因为Bloomberg文章明确指出RankBrain不能处理所有的搜索,只有整个算法可以。

蜂鸟同时包含其他的部分,这些名字对 SEO圈的人来说已经耳熟能详了,比如 Panda, Penguin和Payday,用于垃圾邮件过滤, Pigeon用于优化本地结果, Top Heavy用于给广告太多的页面降级,Mobile Friendly用于给移动友好型页面加分, Pirate用于打击版权侵犯。

我认为 Google 算法曾被称为PageRank

PageRank是整个蜂鸟算法的一部分,它使用特定的方式给网页信用排序,基于其他页面指向此页面的链接来计算。

PageRank比较特别,因为它是 Google 有史以来给它的排序算法赋予的第一个名字,这个名字早在1998年 Google 创立的时候就有了。

Google 用于排序的“信号”是什么?

Google 使用信号来决定如何为网页排序。比如,它会读取网页上的词语,那么词语就是一个信号。如果某些词语是粗体,那么这又是一个值得注意的信号。计算的结果作为PageRank的一部分,给一个网页设定一个PageRank分数,这作为一个信号。如果一张网页被检测到是移动友好型的,那么这又会成为一个信号。

所有的这些信号都由蜂鸟算法中的各个部分处理,最后决定针对不同搜索返回哪些网页。

一共有多少种信号?

Google 称进行评估的主要排序信号大约有 200多种,反过来, 可能有上万种变种信号或者子信号。但通常是说几百种,正如昨天Bloomberg文章中说的那样。

如果你想有一个更直观的排序信号向导,来看看我们的 SEO成功因素元素周期表:

我们认为这是个非常好的向导,说明了类似 Google 的搜索引擎对网页排序使用的东西。

RankBrain是第三个最重要的信号?

没错。这个新的系统突然冒出来,已经成为网页排序第三个最重要的因素。以下摘自Bloomberg 文章:

Corrado说,RankBrain是上百个信号中的一个,用于在算法中决定哪些结果该展示在 Google 搜索页面,该排在第几位。他还表示,在RankBrain部署的这几个月里,它已经成为为搜索查询提供结果的第三个最重要的信号。

第一和第二个最重要的信号是什么?

我们询问了两次,但是 Google 还是不愿意告诉我们第一和第二个最重要的信号是什么。

这很烦人而且有点误导人。Bloomberg文章也不出意外没能得到答案。 Google 想要提高一些性能需求来作为机器学习的突破。

但是真正评估这种突破,有助于了解 Google 现在使用的其他最重要的因素,包括被RankBrain超过的因素。这就是为什么 Google 要来解释这些因素来衬托前两个最重要的信号的性能。

顺便提一下,我个人猜测链接仍然是最重要的信号。 Google 以投票的形式统计这些链接。这也是一个非常老的系统,我在以前的一篇文章里做了介绍: The Broken “Ballot Box” Used By Google & Bing。

至于第二个最重要的信号,我认为是“词语”,词语将会包含一切信息,从网页上的词语到RankBrain分析之外的人们字搜索框输入的关键字。

RankBrain到底做什么?

从与 Google 的来往电子邮件之中,我了解到RankBrain主要用于翻译人们可能不清楚该输入什么确切词语的搜索词条。

难道 Google 之前没有处理没有确切查询词条的方式吗?

有, Google 很早就找到不根据具体词条搜索页面的方式。比如,许多年前,如果你输入“鞋”(shoe), Google 可能不会找到那些有“鞋”(shoes)的页面,因为从技术上来说这是两个不同的词汇,但是“stemming”使得 Google 变得更聪明,让引擎了解shoes的词根是shoe,就像“running”的词根是“run”。 Google 同样了解同义词,因此,如果你搜索“运动鞋”,它可能知道你想找“跑鞋”。它甚至有概念性的知识,知道哪些网页是关于“苹果”公司,哪些是关于水果“苹果”的。

 

Knowledge Graph是什么?

Knowledge Graph在2012年推出,使 Google 在处理词汇关联方面更出色。更重要的是, Google 说它学会如何搜索事物而不是苍白的字符串。

字符串意味着只按照字符串本身搜索,比如搜索匹配“Obama”字符串的网页。而事物则是 Google 知道当某人搜索“Obama”的时候,他们可能想找的是美利坚总统巴拉克奥巴马,一个与其他人物和事物关联的实实在在的人物。

Knowledge Graph是一个事实数据库,包含世上万物的内在联系。这就是为什么当你输入“when was the wife of obama born”的时候,你可以在下面看到关于米歇尔奥巴马的信息,而不需要特定输入她的名字:

RankBrain如何帮助提炼搜索?

Google 目前提炼搜索的方法一般都是由人工处理,无论是创建词干列表或者同义词列表或者创建事物关联数据库。当然,这其中有一些自动化的操作,但是很多时候都是靠人工来完成。

问题是,  Google 每天要处理30亿条搜索。2007年,  Google 表示,有20%至25%的搜索是从来没见过的。2013年这个数字 降至15%,这也引用在了昨天的Bloomberg 文章中,我们也得到了 Google 的重新证实。但是30亿之中,15%的从未搜索过的词条仍然是非常大的数目——每天4.5亿条。

这些可能是很复杂的搜索,多字查询,或者是“long-tail”查询。RankBrain旨在帮助更好地解释这些查询,并有效地翻译它们,通过查询关键字背后的信息,找到最合适的网页。

Google 告诉我们,它可以观察到看似无关复杂搜索之间的模式,并理解它们实际上是如何彼此关联的。这种学习方式,又让它更好地理解未来复杂搜索,以及知道它们是否与特定主题相关。最重要的是,它还可以将这些搜索组与它认为最匹配的搜索结果关联起来。

Google 并没有给出搜索组的例子,也没详细说明RankBrain如何猜到哪些是最匹配的页面。后者可能是因为如果它可以将模糊搜索转化成某些更具体的东西,那么它就可以得到更好的答案。

来看看一个例子?

虽然 Google 并没有给出搜索组的例子,但是Bloomberg文章里有一个单个搜索的例子,假设得到了RankBrain的帮助。如下:

What’s the title of the consumer at the highest level of a food chain

像我这样的外行,“consumer”听起来像是买东西的人。然而,这也是个科学术语,表示消耗食物的东西。在食物链中同样有不同等级的消费者。最高等级的消费者?就叫做“捕食者”(predator)。

把这个输入 Google 中,我们得到了不错的答案,虽然这个查询语句本身看起来十分古怪:

现在来看看搜索“top level of the food chain”的结果相似性,如下:

设想下,RankBrain将原本那条冗长且复杂的查询关联到了这条更短的上面,这可能是最常见的做法。它知道它们非常相似。所以结果是, Google 可以利用它所知的一切,从更常见的查询中寻找答案,然后将它提供给不常见的查询。

我要强调,我并不知道RankBrain关联了这两条查询。我只知道 Google 给出了第一个例子。而这只是对RankBrain如何将不常见搜索与常见搜索联系来提高搜索质量的一种说明而已。

Bing使用RankNet同样可以达到这种效果吗?

回到2005年,微软开始使用自己的机器学习系统,名叫RankNet,如今已是Bing搜索引擎的一部分。事实上,RankNet的首席研究员和创始人最近才被肯定。但这些年来,微软几乎没有谈到RankNet。

你可以打赌,这将有可能改变。有趣的是,当我在Bing中输入同样的词条的时候,Bing得到了不错的结果,其中一条与 Google 返回的结果一致。

一条查询并不意味着Bing的RankNet和 Google 的RankBrain同样出色,反之亦然。不幸的是,很难拿出一份清单来做这种比较。

还有更多的例子吗?

Google 的确给出了一个新的案例:“How many tablespoons in a cup?”

Google 表示,对来自于澳大利亚和美国搜索会有不同的结果,因为两个国家的度量标准不同,尽管名称类似。

为了测试这点,我在Google.com和澳大利亚版本的Google上分别搜索。我并没有发现太多的不同。即使没有RankBrain,结果通常会不同,仅仅因为使用“老土”的方式,从澳大利亚网站中为使用澳大利亚版本Google搜索的用户呈现页面。

RankBrain真的有帮助吗?

尽管我上面给出的两个例子不足以说明RankBrain的强大,但我确实相信它可能正在产生巨大的影响,正如 Google 宣称的那样。 Google 在选择什么算法来排序方面相当保守。 Google 总是在做小测试。但是当对此算法有很大信心时,使用这个算法会带来极大的突破。

整合RankBrain,把它作为第三个最重要的信号,是一个巨大的变化。我认为,如果它没有帮助的话 Google 也不会使用它。

RankBrain什么时候开始的?

Google 告诉我们,在2015年初的时候就在逐步推出RankBrain,现已全面部署了好几个月了。

哪些查询受到影响?

Google 告诉Bloomberg说,有相当一部分的查询将由RankBrain来处理。我们询问具体数字,但还是得到同样的答案。

RankBrain一直在学习吗?

Google 说,RankBrain所有的学习都是离线完成的。输入多批次历史搜索记录,然后学习使用这些数据做出预测。

测试这些预测,如果预测效果准确,那么学习之后的RankBrain版本就上线。然后离线学习测试的过程重复进行。

RankBrain除了做查询优化还做了其他的吗?

通常情况下,一条查询如何优化的——无论是通过提取词根,同义词还是RankBrain——不会作为排序因素或信号。

信号是绑定内容的典型因素,比如网页上的词语,指向页面的链接,网页是否部署在安全的服务器上等。它们也可以绑定用户,比如用户地理位置信息或搜索浏览历史。

那么当 Google 提及RankBrain是第三个最重要的信号时,它真的是一个排序信号吗?是的, Google 再次确认说,他们有一个组件,RankBrain以某种方式直接来计算网页的排名。

具体如何做的呢?是否有某种“RankBrain分数”的因子可能来评估网页质量呢?有可能吧,但RankBrain似乎更可能基于网页包含的内容以某种方式帮助 Google 更好地分类页面。RankBrain可能比 Google 已有的系统更好地总结网页内容。

或许也不是这样, Google 只是说有某种排序组件。

我怎么了解RankBrain更多的信息?

Google 告诉我们说,如果想要了解词语“向量”——单词和短语用数学连接的方式——应该看看这个 博客,这篇博客讲述了系统(文章中没有说明是RankBrain)如何仅仅通过扫描新闻学习到国家的省会城市:

有一篇更长的研究论文,基于 此。你可以使用 Google 的 word2vec工具玩转自己的机器学习工程。另外, Google 有 一整块区域是关于人工智能和机器学习论文的,微软也一样。

·氧分子网(http://www.yangfenzi.com)延伸阅读:

人工智能,面临两大根本性问题

贝叶斯定理:人工智能的进化论?

吴恩达加盟百度背后:基于人工智能的共同愿景

霍金:人工智能不一定是好事 或导致人类灭亡

陈根:人工智能恐惧症,源自人类内心的“恶”

为帮你更机智地对话,Google在即时通信应用里加了个聊天机器人

您可能还喜欢…

发表评论

邮箱地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>