不知不觉,已经进入web2.0时代好几年了,还没反应过来,周围的一切就已经变了。随着网络的发展,我们的世界越来越小,人与人之间沟通越来越多,以前是闭门造车,现在成了集思广益,信息的交流充斥着我们生活的每一个角落。然而,在这个信息大爆炸的时代,什么样的信息最重要?怎样去获取我们想要的信息?这都成了我们需要解决的问题。

       有幸听了一场讲座,题为“Search Engine Overview – System, Algorithms and Challenges”,是由微软亚研院的文继荣博士带来的,主要是关于搜索引擎的一些介绍。信息怎么获取?当然就是搜索。但至于怎么搜索,怎么才能搜的准,搜的快?这就要靠我们的搜索引擎了。

       摘录维基百科一段话:“搜索引擎指自动从因特网搜集信息,经过一定整理以后,提供给用户进行查询的系统。因特网上的信息浩瀚万千,而且毫无秩序,所有的信息像汪洋上的一个个小岛,网页链接是这些小岛之间纵横交错的桥梁,而搜索引擎,则为用户绘制一幅一目了然的信息地图,供用户随时查阅。”通过这段话,我们可以知道,搜索引擎是什么。但是,你有想过它里面的算法和原理吗,知道他是怎么工作的吗?现在,就由我来谈谈自己的一个认识,虽然我也只是个门外汉罢。

       为了建立一个搜索引擎的基本概念,我们可以先从历史谈起。搜索引擎起源于图书馆查询系统,不记得是哪个年代发明出这样的系统的,许多古老的图书馆在一个个小抽屉里装着着各种图书卡片。当我们要查(Query)一本书, 就去相应的抽屉里找(Indexing)相应的卡片, 根据拿到的卡片去管理员那借书(Documents),如果想要的书有几个不同的版本,就选择自己喜欢的借阅(Ranking),这就是以前图书馆整个借书的流程。这个过程非常的简单,而现代搜索引擎正是采用的这样一种Query -> Indexing -> Documents -> Ranking的流程。但是,其中却存在着很多的问题,比如需要我们明确自己的信息需求。当我们想买一辆汽车时,我们必须输入车的信息才行,那么能不能我只输入“我要买一辆多少钱最好的汽车”,然后直接告诉我哪些车最好呢。可能是由于这个模式太过古老传统,许多人正在尝试寻找一种新的模式来替代,让我们一起期待新模式的诞生。

 

 

       介绍完基本结构,再谈谈数据的问题。数据库中的数据是结构化的数据,因此在我们搜索时,可以获取精确的结构。但互联网上的信息,就不是如此了。不论是网页上的普通文本,图像,视频等等,这些都是一个非结构化的,不能获得精确的定义,这样就为搜索引擎增加了很大的难度。现在互联网发展的一个重要方向就是将非结构化的信息结构化。如果信息的结构化能够很分明,通过机器学习,将网络上的信息以更合理的方式分类整理并缓存,建立搜索索引。那么,在我们递交搜索请求时,服务器首先会进行语义分析,再根据结构、内容去搜索,则能够提供给用户更好的信息搜索体验。

       有了基本结构和数据相关性的介绍,整个搜索引擎框架也就架起了,剩下的,就要我们自己去充实了。所以在这里,我想问一下,大家觉得现在的搜索引擎做的怎么样?在讲座的过程中,经过一个举手投票,不少人认为现在的搜索引擎已经很好了,没有必要再怎么发展了。可是,真的是这样吗?当你开着小车因为找不到停车位而在大街上乱转的时候,你为什么不用搜索引擎呢?当你去饭店吃饭却因为人满而需要等待时,为什么不事先用搜索引擎看看有无空位呢?是的,因为搜索引擎做不到,这说明了什么?他们看起来很好是因为我们没有去问他们那些他们现在解决不了的问题。或许现代搜索引擎能够帮助我们找到想看的论文,想听的音乐,想玩的游戏,但它还有许许多多力所不能及的地方,这些地方都需要人们去探索,去研究,去完善。对研究人员来说,许多人都在尝试将某种搜索模式的性能从80%的提高到81%,然而对于更自然的搜索模式,其目前只有10%的性能,却很少有人尝试去提高,哪怕是提高到50%,也是难以想象的巨大成功。搜索引擎的目标就是满足人们的一切信息需求,因此当你觉得搜索引擎很好的时候,你不妨想想,他还有什么做不到的,或许,这就是机遇。

 

Foster

2011年7月28日

posted on 2011-07-28 22:11  Preman  阅读(1797)  评论(7编辑  收藏  举报