论文部分内容阅读
当今网络技术飞速发展,随之而来的是信息量的爆炸式增长,人类已经进入了信息时代,互联网在提供人们海量信息的同时,也带来了搜索信息的困难。如何才能在如此浩瀚的信息海洋中寻找自己想要的信息,一直是互联网用户关心的问题。搜索引擎正是解决这一问题的有利工具,搜索引擎技术是根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。但是由于搜索引擎技术涉及到数据库、信息检索、人工智能、自然语言处理等技术,所以众多商业公司都不愿将自己的搜索引擎核心技术公之于众。Lucene是一个开放源代码的全文检索引擎工具包,即它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎。本人在公司实习期间的主要工作为设计公司网站的站内全文搜索引擎,因此本人对搜索引擎技术进行了较为深入的了解和研究,本文是通过对全文搜索引擎工具包Lucene的架构的分析,实现和更新了Lucene中的部分模块以满足实际的需要。1.针对Lucene的原有中文分析器具有检索查全率、查准率不够理想的缺点,重新设计实现了Lucene的中文分词模块。首先对Lucene中的词典机制进行了优化设计,之后利用简易词典对字符串搜索范围进行了有效的缩减。与原Lucene的检索模块相比,提高了一定的检索效率。2.在本文中设计并实现了一种基于词典的中文分词算法,并采用了词前缀哈希算法来进行中文匹配。3.本文通过对词频位置加权算法、PageRank算法、Direct Hit这三种网页搜索结果排序经典算法的研究,将这三种优秀算法的思想融合到Lucene排序算法中,并通过实验证明了本文设计的排序算法的具有一定的优越性。