不同的Web信息检索系统在工作原理上各不一样,下面就结合搜索引擎来具体说明一下一般Web信息检索系统的特点。虽然各个搜索引擎的具体实现不尽相同,但一般包含爬虫程序、分析程序、索引程序、检索程序和用户接口界面5个基本部分,而且大致的工作原理是相同的。
Web搜索引擎主要是通过爬虫程序定期遍历互联网,将网页的统一资源定位符(URL)、内容和采集时间等相关信息收集到Web服务器上,然后通过必要的信息索引和存储优化处理,利用特定的检索界面对Web用户直接提供服务。这种处理方式在很多方面适应了Web信息的特点。例如,爬虫程序的定期遍历可以将不断动态变化的Web网页信息采集过来,既能有效反映新的网页信息,又能将分布于各地的Web信息统一存储在搜索引擎的本地服务器上,实现信息资源的本地化,以实现对用户查询的快速响应;同时,搜索引擎提供了基于关键词的全文检索方式,避免了不必要的词语分析和语义处理,适应半结构化网页信息的处理特点,而且还能提高信息的查全率。
它的具体工作流程包括以下几步:
步,由爬虫程序采用一定的搜索策略对Web网络进行遍历并下载网页,系统中维护一个超链队列或者堆栈,其中包含一些起始URL;爬虫程序从这些URL出发,下载相应的页面,并从中抽取出新的超链加入到队列或者堆栈中。上述过程不断重复直到堆栈为空。为提高效率,搜索引擎中可能会有多个爬虫程序进程同时遍历不同的Web子空间。为了便于将来扩展服务,爬虫程序应能改变搜索范围和搜索策略,一般采用以宽度优先搜索策略为主、深度优先搜索策略为辅的搜索策略。
第二步,由分析程序对爬虫程序下载的网页进行分析以用于索引,网页分析技术一般包括分词(有些仅从文档某些部分抽词,如Altavista)或者使用停用词表(stop list)来过滤网页信息,同时还提供诸如单复数转换、词缀去除和同义词替换等词语转换,这些技术的具体实现往往与处理方式以及系统的索引模型密切相关。
第三步,索引程序将网页信息表示为一种便于检索的方式并存储在索引数据库中。索引的质量是Web信息检索系统成功的关键因素之一。一个好的索引模型应该易于实现和维护、检索速度更快、空间需求更低。搜索引擎普遍借鉴了传统信息检索中的索引模型,包括倒排文档、向量空间模型和概率模型等。
第四步,检索程序从索引中找出与用户查询请求相关的网页信息,采用与分析网页文档相似的方法来处理用户查询请求,后将相关度大于阈值的所有网页按照相关度递减的顺序排列并返还给用户,当然搜索引擎的相关度判断并不一定与用户的需求完全吻合。传统的方式只是利用词频和词语出现的标记和位置来设置权重,新的设置权重方式主要利用基于超链分析的方法,然而只有在系统中引入用户特征模式信息后才能终为用户提供个性化的信息检索服务。
后,用户接口为用户提供可视化的查询输入和结果输出界面。在查询界面中,用户按照搜索引擎的查询语法使用检索词语及各种简单、高级的检索条件,构造自己的查询表达式。在输出界面中,搜索引擎将检索结果展现为一个线性的网页列表,其中包含了网页的标题、摘要和相关超链等信息。由于Web信息是动态变化的,因此,Robot分析器和索引器模块要定期更新数据库,时间通常约为一个月。索引数据库越大,更新也越困难。这就使得这种传统的被动服务方式其实不是非常及时有效,借鉴信息推送服务的思想可以极大地提高Web信息检索系统的及时性。
AAAE4T45UY75T