ML基础——搜索引擎与图书管理,百度与李彦宏
本文始发于个人公众号:TechFlow
谈及机器学习,大家想必会有许多联想,比如最近火热的人工智能,再比如战胜李世石的AlphaGo,甚至还会有人联想起骇客帝国或者是机械公敌等经典机器人 
搜索引擎的功能主要分为两个部分,第一个部分是爬虫相关,第二个部分是搜索和排序。我们将这两个部分分开,分别介绍。
首先是爬虫部分,即上图当中左边的部分。
虽然每次我们百度的时候,它都会告诉我们搜索到了数以百万计甚至更多的结果,但是实际上真正通过粗排召回来的,可能只有一两千条。 既然有粗排,那么自然也有精排。其实也很好理解,经过了粗排,数据从数千万减少到了一两千。
接下来要做的就是对这一两千条数据进行进一步排序。排序的主要依据往往不止一个,首要的当然是匹配度,如果返回的网站和用户的诉求不匹配,显然会损伤用户体验,甚至导致用户流失。所以无论什么搜索引擎,质量永远是第一位。之后的依据各个引擎均有所不同,有些网站可能更加看重收益,所以会把收钱多的网站摆在前面,有些网站则更看重权威,会把热度比较高的,或者是比较官方的网站置顶。经过一系列的调整和过滤之后,结果才会真正返回给用户。
后来我了解到李彦宏最早是北大图书馆学出身,再一看这个搜索引擎的架构和索引的结构, 不就和图书管理一模一样吗?
在搜索引擎出现之前,图书馆中的书籍也是根据类别、关键字以及作者进行归类存放的。这样在检索的时候,才可以快速地找到相应的书籍。这个思想计算机出现之前就已经非常成熟了,如果我们更换一下概念,把互联网当中的网页当做是书籍,把网页的title当做是书籍的标题,正文当中的关键字当做是书籍的关键字,那么搜索网页和搜索书籍的技术在思想上其实是相通的。那么当年图书馆学出身的李彦宏在学了计算机之后,想到在互联网世界当中应用图书检索的技术,也就水到渠成了。