论文部分内容阅读
搜索引擎已经成为人们从浩如烟海的互联网上及时、全面、准确获取信息的有效工具。但其实用性还远没有达到人们的要求,甚至公认技术领先的Google,常常也会大量返回与用户想要结果不相关的内容。准确的说,搜索结果的质量较低是目前突出的问题,这包括查准率和结果相关性两个方面。用户的需求是以最快的速度获得与查询最相关的信息。围绕这个问题涉及高效的组织中文分词,进而开始全新的索引器设计。本课题将后缀数组技术引入搜索引擎中,优化并应用后缀快速排序算法,解决了全文索引的时间问题。全文索引便于统计特定词汇(包括短语)在全文中的词频,位置等附属信息,为精准权重设置,返回给用户最相关的结果提供了数据支持。以倒排文件构建索引器是目前使用的技术,但这第一步就需要中文分词。由于未登录词的大量出现,它的识别成为评价一个分词系统好坏的重要标志。本文应用Manber和Myers提出的同时构造后缀数组与LCP数组算法,给出了基于后缀数组的无词典分词方法,提高了无词典分词的分全率,较好的解决了未登录词切分和歧义消除问题。由于无词典分词的固有缺点,所抽出的部分词条并非真实词条,对只出现一次的词,即使是常用词,也束手无策。考虑到基于词典的分词方法,对于词典中的词有准确的分全率和分准率,但不能够识别未登录词和消除歧义。结合后缀数组统计分词在这方面的优势,给出了词典与后缀数组相结合的中文分词方法,提高了分词的精度,较好的解决了中文分词问题。课题实践部分是研究开源框架Lucene的索引设计和开发模式,开发了2个实际项目。1)实现一个局域网内的桌面搜索工具,检索各种常用类型的文档:局域网内的数据共享和索引,可供网内用户搜索不同节点机上的资源并下载到本地。2)求索在线书店项目,应用封装了Lucene的Compass构建的图书搜索模块。项目获得校大学生科技创新基金的最高资助,并分别获得2007年腾讯创新大赛互联网应用创新设计项目创意优秀奖,2008西安大学生创业大赛优胜奖,软件类第四名。