让搜索引擎更智能需要经历什么?
当你有问题需要解答的时候,你通常会选择去问谁呢?如今在不知不觉中,很多人的选择已经变成了搜索引擎。天气、交通路线、图片、视频、作业答案等等,搜索引擎能够回答人们日常生活中遇到的许多问题。甚至对很多人来说,如果在搜索引擎上找不到答案,那可能这个世界上就没有对这个问题的现成答案了,才需要我们自己去探索。
这么看来,搜索引擎仿佛是一种最强大的人工智能,它从二十年前就开始生活在我们的身边。搜索引擎是如何一步一步变得如此强大,而它接下来又会往哪个方向进化呢?这篇文章就简单的从搜索引擎的发展历程开始进行解读。
搜索引擎的诞生与发展
搜索引擎的诞生,来源于早期人们对高效寻找互联网上信息的需求。采用传统的图书馆信息检索技术的早期搜索引擎并不能满足大家的需求。无论是网页排序的准确度,反应速度和索引网页的数目都不能满足互联网用户的需求。新需求下,产生了目前常见的几个大通用搜索引擎:谷歌、微软必应、雅虎(Yahoo采用微软必应作为其搜索技术的提供商)和百度。它们大都创立于2000年左右。在这些搜索引擎诞生之初,大数据,机器学习,分布式系统这些词就和它们紧密相连。
首先,现代搜索引擎充分利用了互联网数据的特点。网页之间的超链接,网民自发的在网页上留下的足迹,比如商品评论、点赞等,都成为搜索引擎更好的对网页进行排序的依据。同时搜索引擎的系统设计也将其变为一个可以不断自我学习和改善的系统。搜索引擎根据用户对相关结果的点击行为,进行评估自己算法的好坏。
微软基于机器学习算法的排序系统不断的学习,以及总结不同用户对搜索引擎的反馈,于2005年提出了一系列使用神经网络、决策树等为基础的网页排序算法:RankNet, LambdaRank 和LambdaMART。这些算法以大规模机器学习系统为基础,将搜索引擎的排序精度不断的提升。同时,机器学习算法也有其他多个方面的应用,例如检测垃圾网页、提高搜索广告相关性等等。
除了上述算法上的进步以外,系统层面的不断创新也为搜索引擎的进步添砖加瓦。谷歌在创始之初,就开创性的提出了尽量将所有的网页信息保存在计算机内存而不是磁盘上的系统革新,这样可以将回答用户问题的时间从秒级减少到毫秒级。
微软必应搜索引擎在2008年开始,针对固态硬盘的特点,重新设计了网页索引结构。新的多级索引结构不仅能保证和全内存系统相当的查询速度,单台机器支持的网页数目及查询吞吐量得到了几十倍的提升,这样保证搜索引擎可以索引和服务互联网上更多的网页。
大数据系统更是和搜索引擎的发展紧密相连。为了更方便的存储和处理网页信息,谷歌推出的MapReduce, BigTable, GFS等著名分布式系统,掀开了大数据时代的帘幕。与此同时,微软公司也部署了Cosmos, Dryad, Scope, Kirin等系统。其中Dryad和Scope系统由于其更加前瞻的设计理念,成为新一代大数据处理系统的参考设计范本。
更人工智能的搜索体验
机器学习算法的不断进步,搜索引擎巧妙的人机交互设计,分布式系统的革新让搜索引擎在不知不觉中成为人们生活中不可或缺的一部分。同时,随着人们新需求的不断涌现,搜索引擎也没有停下变革的步伐。一方面,搜索引擎尝试以不一样的形式展示在你面前,比如Cortana, Siri, Google Now这类对话式的智能交互技术背后都离不开搜索引擎的支持。同时它也在不停的扩展它新的能力。
如果你够细心的话,你可能会发现当下的搜索引擎可以更加直接的回答你搜索的某个具体问题。比如在搜索结果页面的右边,会有和你搜索相关的其他相近实体的信息。在页面的顶部,某些结果(例如天气,航班等信息)会以更丰富的形式提供答案。最近,一个更加引人关注的变化是,对很多知识性的问题,搜索引擎开始尝试给出直接的答案,而不是某几个网页链接。比如:当你问如何做一份美味的节日点心,如何安装某个新的软件时,微软必应搜索都可以直接给出答案。
搜索引擎是如何做到这一点的呢?要回答这个问题,就不得不提到过去一段时间以来深度学习领域的研究进展。搜索引擎通过大量的数据,利用DNN/RNN等新算法来更加充分的理解网页内容和用户问题之间的关系,从而可以帮助用户在网页中直接找到和问题相关的答案。微软最近收购的由著名深度学习专家Yoshua Bengio 指导的深度学习创业公司Maluuba也旨在加强微软在深度阅读理解领域的实力。而在深度文本理解方面,微软的研究小组也都处于领先位置。
随着算法的发展,搜索引擎的后台也在飞速进化。为了支持以深度学习为代表的新一代机器学习算法,GPU,FPGA以及定制的ASIC芯片已经逐渐走入搜索引擎的数据中心。索引和排序服务系统也在进一步进化以满足算法对处理能力的要求。为了更加实时的处理更大规模的数据,超低延迟网络也正被广泛应用。
智能搜索引擎的下一个目标
以上提到的所有这些努力,都是为了更好的满足人们对搜索引擎的需求。但是搜索引擎真的能完全理解人类的所有知识体系吗?它下一步的任务是什么?
显然,目前搜索引擎已经能够较好的总结互联网的信息用于满足大家的搜索请求,可以直接回答一些常见问题。但是搜索引擎是否能够真正理解这些信息的内在含义,是否可以创造性的解决以前从未出现的问题,以及能否高效的进行自我推演,还不得而知。但是有一点是肯定的,更富创造性的机器学习算法,更加强大的计算能力,以及创新性的人机交互是一切的基础,这些也是工业界和学术界共同努力的方向。
你也许还想看: