(计算机应用技术专业论文)lucene全文检索技术在专利服务平台中的研究与应用.pdf_第1页
(计算机应用技术专业论文)lucene全文检索技术在专利服务平台中的研究与应用.pdf_第2页
(计算机应用技术专业论文)lucene全文检索技术在专利服务平台中的研究与应用.pdf_第3页
(计算机应用技术专业论文)lucene全文检索技术在专利服务平台中的研究与应用.pdf_第4页
(计算机应用技术专业论文)lucene全文检索技术在专利服务平台中的研究与应用.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

苏州大学学位论文使用授权声明 本人完全了解苏州大学关于收集、保存和使用学位论文的规定, 即:学位论文著作权归属苏州大学。本学位论文电子文档的内容和纸 质论文的内容相一致。苏州大学有权向国家图书馆、中国社科院文献 信息情报中心、中国科学技术信息研究所( 含万方数据电子出版社) 、 中国学术期刊( 光盘版) 电子杂志社送交本学位论文的复印件和电子 文档,允许论文被查阅和借阅,可以采用影印、缩印或其他复制手段 保存和汇编学位论文,可以将学位论文的全部或部分内容编入有关数 据库进行检索。 涉密论文口 本学位论文属在l 月解密后适用本规定。 非涉密论文口 论文作者签名:日凝;矽l o 、弓、l | 导师签 名:乇荭汪址日 0 i i l u c c n e 全文检索技术在专利服务平台中的研究与应用中文摘要 l u c e n e 全文检索技术在专利服务平台中的研究与应用 中文摘要 本文从生物医药专利信息服务平台的实际应用需求出发,在深入研究了l u c e n e 全文检索工具包及相关技术基础之上,扩展了l u c e n e 分词模块,改进了l u c e n e 默认 的排序算法,并扩展了l u c e n e 的多格式文档处理模块,使本文设计的专利系统支持 常用的多种专利文档格式的检索,并最终将以上研究应用于本文介绍的专利服务平台 中,有效地改善了专利检索系统的性能。 本文主要工作如下: ( 1 ) 对l u c e n e 全文检索工具包进行了深入研究,分析了各种常见格式文档处理技 术的现状,着重研究了中文分词技术和l u c e n e 的排序机制,为l u c e n e 全文检索技术 更好的在专利服务平台中的科学应用,提供了充分的理论依据; ( 2 ) 针对专利文献特点及专利文献自动分词的难点,提出了一种基于规则和后缀 数组相结合的自动分词方法,扩展了l u c e n e 分词模块,实验证明该方法有效地提高 了专利分词的查准率和查全率; ( 3 ) 针对专利文献的特点,改进了传统的t f i d f 公式,提出了一种对位置信息进 行加权来计算特征词权重的方法,对检索结果进行了自定义排序,实验证明该排序方 法能很好地匹配更相关的文档; ( 4 ) 为了能够让本文的专利检索系统既不局限于纯文本格式的检索,又不用将文 档转换成中间格式,本文设计了一个通用的接口,借助第三方开发的解析工具对不同 格式的专利文档( 如p d f 文档、w o r d 文档、h t m l 文档等) 进行处理,将其转换成 l u c e n e 能够处理的格式,使本文设计的专利检索系统支持对多种格式专利文献的检 索; ( 5 ) 最后将l u c e n e 全文检索技术应用于专利服务系统中,实验及实际使用证明本 文实现的专利检索系统,在检索结果排序、查全率、查准率、响应时间等方面得到了 有效地提高,极大的改善了专利检索系统的性能。 关键字:专利检索,l u c e n e ,全文检索,中文分词,排序 作者:陈祥荣 指导教师:孙涌 r e s e a r c ha n da p p l i c a t i o no fl u c e n ef u l l - t e x tr e t r i e v a l t e c h n o l o g y i np a t e n ti n f o r m a t i o ns e r v i c ep l a t f o r m a b s t r a c t t h i st h e s i sd e r i v e sf r o mt h er e q u i r e m e n t sf o rb i o m e d i c a lp a t e n ti n f o r m a t i o ns e r v i c e p l a t f o r m b a s e do ni n - d e p t hr e s e a r c h e so n l u c e n ef u l l t e x tr e t r i e v a lt o o lp a c k a g ea n ds o m e r e l a t e dt e c h n o l o g i e s ,w ee x t e n dl u c e n ec h i n e s ew o r ds e g m e n t a t i o nm o d u l e ,a n di m p r o v e t h el u c e n ed e f a u l ts o r t i n ga l g o r i t h m f u r t h e r m o r e ,w ee x t e n dt h em o d u l ef o rm u l t i p l e f o r m a td o c u m e n t ss oa st oe n a b l et h ep a t e n ts y s t e md e s i g n e di nt h i st h e s i ss u p p o r t a b l ef o r p a t e n td o c u m e n t so fd i f f e r e n tf o r m a t s f i n a l l y , w ea p p l yt h er e s e a r c h e sa b o v ei n t o t h e p a t e n ti n f o r m a t i o ns e r v i c ep l a t f o r m ,w h i c hp o s i t i v e l yi m p r o v e st h ep e r f o r m a n c eo ft h e p a t e n tr e t r i e v a ls y s t e m t h em a i nc o n t r i b u t i o n si nt h i st h e s i sa r ea sf o l l o w s : i m a k ea ni n d e p t hr e s e a r c hi n t ot h el u c e n et o o lp a c k a g ea n dt h e nw ea n a l y z et h e s i t u a t i o n so fs o m ef o r m a t so fd o c u m e n t s p r o c e s s i n gt e c h n o l o g i e sw h i c ha r ef r e q u e n t l y u s e di ne v e r y d a yl i f e a n dw ef o c u so nt h er e s e a r c h e si n t ot h ec h i n e s ew o r ds e g m e n t a t i o n a n dt h es o r t i n gm e c h a n i s mo fl u c e n et op r o v i d et h et h e o r e t i c a lb a s i sf o rs c i e n t i f i c a l l y a p p l y i n gt h e s et e c h n o l o g i e si n t ot h ep a t e n ti n f o r m a t i o ns e r v i c ep l a t f o r m i i e x t e n dt h ec h i n e s ew o r d s e g m e n t a t i o nm o d u l e i nl u c e n e ,a n dp r o p o s ea n a u t o m a t i cc h i n e s ew o r ds e g m e n t a t i o nt e c h n o l o g yb a s e do nt h er u l e sa n ds u f f i xa r r a y a c c o r d i n g t ot h e f e a t u r e so fp a t e n t sa n dt h ed i f f i c u l t i e si na u t o m a t i cc h i n e s ew o r d s e g m e n t a t i o n e x p e r i m e n t ss h o wt h a tt h i st e c h n o l o g yc a ng r e a t l y i n c r e a s et h ep r e c i s i o n a n dt h er e c a l lo ft h ec h i n e s ew o r ds e g m e n t a t i o ni np a t e n t s i i i w ep r o p o s eam e t h o df o rc a l c u l a t i n gt h ew e i g h t so fc h a r a c t e r i s t i cw o r d s ,b ym a k i n g s o m ei m p r o v e m e n t so nt h et r a d i t i o n a lt f i d ff o r m u l aa c c o r d i n gt ot h ef e a t u r e so fp a t e n t s , a n dc o n d u c tu s e r - d e f i n e ds o r t i n go nt h er e t r i e v e dr e s u l t s e x p e r i m e n t ss h o wt h a tw i t ht h i s s o r t i n gm e t h o dw ec a ng e tb e t t e rm a t c h e dd o c u m e n t s i v t om a k et h ep a t e n ts y s t e mi nt h i st h e s i sn e i t h e rl i m i t e dt op l a i nt e x ts e a r c h ,n o r i i r e s e a r c ha n da p p l i c a t i o no fl u c e n ef u l l - t e x tr e t r i e v a lt e c h n o l o g yi np a t e n ti n f o r m a t i o ns e r v i c ep l a t f o r ma b s t r a c t n e e dt oc o n v e r ti n t ot h em i d d l ed o c u m e n tf o r m a t ,w ed e s i g nac o m m o ni n t e r f a c e ,w h i c h c a n p r o c e s sd i f f e r e n tf o r m a t so fp a t e n td o c u m e n t s ( s u c ha sp d f , w o r da n dh t m l ) a n d c o n v e r tt h e mt ot h ef o r m a t sl u c e n ec a l lp r o c e s s ,w i t ht h ea s s i s t a n c eo fr e s o l v i n gt o o l s d e v e l o p e db yt h i r d p a r t y i nt h i sw a y , t h ep a t e n ts y s t e mi nt h i st h e s i sc a ns u p p o r tt h e r e t r i e v a lo na l lt h ec o m m o nf o r m a t so f p a t e n td o c u m e n t s v f i n a l l y , w ea p p l yt h el u c e n ef u l l - t e x tr e t r i e v a lt e c h n o l o g yi np a t e n ti n f o r m a t i o n s e r v i c ep l a t f o r m e x p e r i m e n t sa n dp r a c t i c a lu s es h o wt h a tt h ep a t e n ti n f o r m a t i o ns e r v i c e p l a t f o r mi nt h i st h e s i sb e h a v e sb e t t e ri nt h ea s p e c t so fs o r t i n gt h er e t r i e v e dp a t e n t s ,t h e s e a r c h i n gp r e c i s i o nr a t e ,t h es e a r c h i n gr a n g ea n dt h er e s p o n s et i m e ,w h i c hg r e a t l yi m p r o v e t h ep e r f o r m a n c eo ft h ep a t e n tr e t r i e v a ls y s t e m k e y w o r d s :p a t e n tr e t r i e v a l ,l u c e n e ,f u l l t e x tr e t r i e v a l ,c h i n e s ew o r ds e g m e n t a t i o n , s o r t i n go r d e r 1 1 i w r i t t e n b yc h e n x i a n g r o n g s u p e r v i s e db ys u n y o n g 目录 第一章绪论1 1 1 选题背景与意义1 1 2 国内外研究应用现状。2 1 3 本文主要研究内容一3 1 4 本文的组织结构。3 第二章l u c e n e 全文检索工具包及相关技术研究5 2 1l u c e n e 全文检索工具包5 2 1 1l u c e n e 简介5 2 1 2l u c e n e 结构功能分析5 2 1 3l u c e n e 数据流分析7 2 1 4l u c e n e 索引结构9 2 1 5l u c e n e 的应用特点及优势1 1 2 2 各种常见格式文档处理技术1 3 2 3 中文分词技术13 2 3 1 中文分词的必要性1 3 2 3 2 现有分词方法研究1 4 2 3 3 中文自动分词的难点1 6 2 3 4 面向专利的自动分词目标1 8 2 4 检索结果排序1 9 2 4 1l u c e n e 检索机制19 2 4 2l u c e n e 的排序算法介绍2 0 2 5 本章小结2 1 第三章面向专利的中文自动分词技术的研究2 2 3 1 专利文献特点及自动分词的难点分析2 2 3 2 基于规则和后缀数组相结合的自动分词技术2 3 3 2 1 基于规则库的预切分方法2 3 3 2 2 基于后缀数组的专利词汇抽取方法2 7 3 3 实验结果及分析2 9 3 3 1 评测方法2 9 3 3 2 实验结果及分析3 0 3 4 本章小结3 l 第四章检索结果排序3 2 4 1 检索结果排序原理3 2 4 2l u c e n e 相关性因素3 3 4 3 自定义排序3 4 4 3 1 传统的t f i d f 公式3 4 4 3 2 自定义排序公式3 5 4 3 本章小结3 6 第五章生物医药专利服务平台检索子系统设计与实现3 7 5 1 生物医药专利服务平台的简介3 7 5 1 1 平台开发运行环境3 7 5 1 2 服务平台介绍3 7 5 2 基于l u c e n e 的专利信息检索子系统的设计与实现3 9 5 2 1 建立索引库过程4 0 5 2 2 信息查询处理4 6 5 3 系统运行效果及实验对比分析4 8 5 3 1 系统运行效果4 8 5 3 2 实验对比分析4 9 5 4 本章小结5 2 第六章总结与展望5 3 6 1 工作总结5 3 6 2 展望5 4 参考文献5 5 攻读学位期间发表的论文6 0 致谢6 l l u c e n e 全文检索技术在专利服务平台中的研究与应用 第一章绪论 1 1 选题背景与意义 第一章绪论 专利信息广泛存在并渗透于科技、经济和社会生活的各个领域,具有集多种信息 于一体、数量巨大、学科范围广、公布快捷、内容新颖、高度标准化,以及揭示发明 创造内容完整详尽等优点,它己成为人们从事科学研究、技术开发和法律规范等社会 经济活动必不可少的重要信息。世界知识产权组织的统计资料表明:全世界9 0 以上 的最新技术首先以专利的形式表现出来。目前,全世界有专利文献累计约4 0 0 0 万件, 在技术创新飞速发展的今天,每年以1 0 0 多万件的速度增长【i 捌。 针对某一技术领域专利数量和时间分布的检索分析,可以反映该技术的发展现状 和趋势。随着世界科技竞争同益激烈,各国企业越来越重视专利战略研究,通过对专 利说明书、专利公报中大量零碎的专利信息进行加工、组合,将这些信息转化为具有 总揽全局及预测功能的竞争情报,从而为企业的战略决策提供信息支持。随着计算机 与网络技术的飞速发展,可通过i n t e m e t 检索的专利数据库以及与专利有关的各种信 息越来越丰富。如何充分地利用如此巨大的信息资源,使专利在科研和专利业务的诸 多方面发挥重要作用,专利信息检索系统便应运而生。 全文检索技术是一个最普遍的信息查询应用【4 圳,是一种非常高效的信息检索技 术,它是处理非结构化数据的强大工具,也是通用搜索引擎信息检索的手段。它极大 地提高了从浩瀚数据复杂的数据中查找特定信息的效率。l u c e n e 是a p a c h ej a k a r t a 成 员的开源项目,是一个用j a v a 语言实现的、高性能的、可扩展的全文信息检索工具 包,它提供了一套简单、却十分强大的核心a p i ,可以方便快捷地将它融入到应用程 序中以增加索引和搜索功能。 本文从生物医药专利信息服务平台的实际应用需求出发,在深入研究了l u c e n e 全文检索工具包及相关技术基础之上,将l u c e n e 全文检索技术应用于本文介绍的专 利服务平台中,实验证明本文实现的专利检索系统,在检索结果排序、查全率、查准 率、响应时间等方面得到了有效地提高,极大的改善了专利检索系统的性能。 第一章绪论l u c e n e 全文检索技术在专利服务平台中的研究与应用 1 2 国内外研究应用现状 经过了多年的发展,l u c e n e 在全文检索领域已经有了很多的成功案例,并积累 了良好的声誉。基于l u c e n e 的全文检索产品和应用l u c e n e 的项目在世界各地已经非 常之多。 目前,已经有很多j a v a 项目都使用了l u c e n e 作为其后台的全文索引引擎,比较 著名的有: ( 1 ) j i v e :w e b 论坛系统【1 0 1 ,其检索功能是基于l u c e n e ; ( 2 ) e y e b r o w s :邮件列表h t m l 归档浏览查询系统f l l 】,它的主要参考文档“t h e l u c e n es e a r c he n g i n e :p o w e r f u l ,f l e x i b l e ,a n df r e e ”作者就是e y e b r o w s 系统的主要开 发者之一,而e y e b r o w s 已经成为目前a p a c h e 项目的主要邮件列表归档系统; ( 3 ) c o c o o n :基于x m l 的w e b 发布框架【12 1 ,全文检索部分使用了l u c e n e ; ( 4 ) e c l i p s e :主流j a v a 开发工具【13 1 ,帮助部分的全文索引使用了l u c e n e ; ( 5 ) i f i n d e r :出自德国的网站检索系统【1 4 1 ,基于l u c e n e ; ( 6 ) m i td s p a c ef e d e r a t i o n :一个文档管理系统【1 5 】。 国内外采用l u c e n e 作为网站全文检索引擎的也有很多,比较知名的有: ( 1 ) h t t p :w w w b l o g c h i n a c o m w e b l u c e n e ; ( 2 ) h t t p :w w w i o f f e r c o m h ( 3 ) h t t p :s e a r c h s o u f u n c o m ( 4 ) h t t p :w w w t a m i n n c o m 。 在所有的这些案例中,开源应用占了很大一部分,但更多的还是商业化产品和网 站。可以说,l u c e n e 的出现,将推动了全文检索技术在各个行业或领域中的深层次 应用。此外,衡量开源软件是否取得成功的重要指标之一,就是移植为其他编程语言 的版本的个数,在这一指标方面,l u c e n e 显然是非常成功的。虽然l u c e n e 最初是使 用j a v a 语言编定的,但到目前为止,l u c e n e 已经成功地移植到了p e r k 、p y t h o n 、c + + 和n e t 等编程语言的平台上,这对需要使用不同语言编写应用程序来存取l u c e n e 索 引的程序员来说是一个福音【16 1 。 2 l u c e n e 全文榆索技术在专利服务平台中的研究与应用第一章绪论 1 3 本文主要研究内容 本课题的研究内容是l u c e n e 全文检索技术在专利服务平台中的研究与应用,在 基于苏州大学智能信息研究所开发的v l d b 集群计算的生物医药科技专利服务平台 之上,进行了一系列的研究、设计与实现。为了进一步完善专利信息服务平台的检索 模块,根据用户对专利信息的实际需求,在深入研究了l u c e n e 全文检索工具包及相 关技术基础上,将l u c e n e 全文检索技术应用于专利服务系统中,最后通过实验证明 了本文实现的专利检索系统,有效地改善了专利检索系统的性能。 本文的主要研究内容如下: ( 1 ) 对l u c e n e 分词模块进行扩展,针对专利文献特点及专利文献自动分词的难 点,提出了一种基于规则和后缀数组相结合的自动分词方法,实验证明该方法有效地 提高了专利分词的查准率和查全率; ( 2 ) l u c e n e 默认的排序算法不适合文本的专利检索结果排序,本文针对专利文献 特点,改进了传统的t f i d f 公式,通过考虑词的位置对文档的区分度,提出了一种 对位置信息进行加权来计算特征词权重的方法,对检索结果进行了自定义排序,并通 过实验证明该排序方法能很好地匹配更相关的文档: ( 3 ) 在l u c e n e 中扩展多种格式文档处理模块,为了能够让全文检索系统既不局限 于纯文本格式的检索,又不需要将文档转换成中间格式,本文设计了一个通用的接口, 借助第三方开发的解析工具将各种格式的专利文档转换成l u c e n e 能够处理的格式, 使本文设计的专利检索系统支持对多种格式专利文献的检索; ( 4 ) 最后将l u c e n e 全文检索技术应用于专利服务系统中,实验及实际使用证明本 文实现的专利检索系统,在检索结果排序、查全率、查准率、响应时间等方面得到了 有效地提高,极大的改善了专利检索系统的性能。 1 4 本文的组织结构 围绕以上研究内容,详细的论文结构安排如下: 第一章绪论。本章首先介绍了专利及专利信息检索的重要性,然后介绍了全文索 引技术在信息检索领域发挥的重要作用,引出了l u c e n e 全文检索引擎工具包,并介 第一章绪论l u c e n e 全文检索技术在专利服务平台中的研究与膨用 绍了其在国内外的研究应用现状,最后给出了本文的主要研究内容及本文的组织结 构。 第二章l u c e n e 全文检索工具包及相关技术。本章首先介绍了l u c e n e 全文检索工 具包,接着分析了各种常见格式文档处理技术的现状,然后着重分析了中文分词技术 和l u c e n e 的排序机制,为其能够更好的在专利服务平台中的科学应用,提供了充分 的理论依据和技术支持。 第三章面向专利的中文自动分词技术的研究。对l u c e n e 分词模块进行扩展,针 对专利文献特点及专利文献自动分词的难点,提出了一种基于规则和后缀数组相结合 的自动分词方法,实验证明该方法有效地提高了专利分词的查准率和查全率。 第四章检索结果排序。本文针对专利文献特点,改进了传统的t f i d f 公式,通 过考虑词的位置对文档的区分度,提出了一种对位置信息进行加权来计算特征词权重 的方法,对检索结果进行了自定义排序。 第五章生物医药科技信息专利服务平台设计与实现。将l u c e n e 全文检索技术应 用于专利服务系统中,实验证明本文实现的专利检索系统,在检索结果排序、查全率、 查准率、响应时间等方面得到了有效地提高,极大的改善了专利检索系统的性能。 第六章总结与展望。本章对本文所做的工作与贡献进行了总结,并且指出了进一 步完善该系统需要解决的若干问题以及今后的发展方向。 4 l u c e n e 全文榆索技术在专利服务平台中的研究与戍用第二章l u c e n e 全文检索t 具包及相关技术研究 第二章l u c e n e 全文检索工具包及相关技术研究 本章介绍了l u c e n e 全文检索工具包及相关技术,包括l u c e n e 工具包简介、结构 功能分析、数据流分析、索引结构、应用特点及优势等,分析了各种常见格式文档处 理技术的现状,着重研究了中文分词技术和l u c e n e 的排序机制,为了l u c e n e 全文检 索工具包能够更好的在专利服务平台中的科学应用,提供了充分的理论依据。 2 1l u c e n e 全文检索工具包 2 1 1l u c e n e 简介 l u c e n e 是一个纯j a v a 实现的成熟、自由、开源的软件项目,是一个高性能的、 可扩展的全文检索引擎工具包。它提供了一套简单、却十分强大的核心a p i ,可以把 它融入到应用程序中以增加索引和搜索功能。l u c e n e 工具包中大量地使用s t r a t e g y 设计模式,使得应用接口设计灵活,用户可以利用这些接口,定制出适合自己需要的 语言分析器、查询分析器,以及检索器6 1 。 l u c e n e 的作者:l u c e n e 的贡献者d o u gc u t t i n g 是一位资深全文索引检索专家, 曾经是v t w i n 搜索引擎( a p p l e 的c o p l a n d 操作系统的成就之一) 的主要开发者,后在 e x c i t e 担任高级系统架构设计师,目前从事于一些i n t e r n e t 底层架构的研究,他 贡献出的l u c e n e 的目标是为各种中小型应用程序加入全文索引和检索功能。 l u c e n e 的发展历程:一开始,d o u gc u t t i n g 将l u c e n e 发表在自己的个人主页上【1 7 】, 2 0 0 0 年3 月将其转移到了其成员项目s o u r c e f o r g e 上,并于2 0 0 1 年1 0 月将其捐献给 a p a c h e ,使l u c e n e 成为j a k a r t a 的一个子项目【1 8 j 。 2 1 2l u c e n e 结构功能分析 l u c e n e 全文检索系统主要有两个功能f 1 9 】:一是建立索引库,即将待索引的数据 源经过解析器进行解析,将其内容经切分词后索引入库;二是检索索引库,即根据用 户输入的查询条件从索引库中找出符合条件的文档,将结果按照一定的顺序返回给用 第二章l u c e n e 全文检索工具包及相关技术研究l u c e n e 全文榆索技术n i 专利服务,t z 台中的研究与心用 户。图2 1 是上述两大功能的逻辑结构图。 查询入库 上 上 查询分析器 文档结构 查询器语言分析器 0 访问索引 3 存储器 南南南 图2 1l u c e n e 逻辑结构图 l u c e n e 的源码中共有7 个包,每个包完成特定的功能,见表2 1 。其核心类包主 要有3 个:语言分析包、索引管理包和检索包,具体分析如下: 表2 1l u c e n e 包的结构功能表 包名功能 o r g a p a c h e 1u c e n e a n a l y s i s 语言分析器 o r g a p a c h e 1u c e n e d o c u m e n t 索引存储文档结构管理 o r g a p a c h e iu c e n e i n d e x 索引管理 o r g a p a c h e 1u c e n e q u e r y p a r s e r 查询分析器 o r g a p a c h e 1 u c e n e s e a r c h 检索管理 o r g a p a c h e 1u c e n e s t o r e 底层的i 0 数据存储 o r g a p a c h e 1u c e n e u t i l 一些公刚类 ( 1 ) o r g a p a c h e 1 u c e n e a n a l y s i s 语言分析包 此语言分析包主要用来对源文件内容进行切分词,此工作通常由a n a l y z e r 的扩 展类来实现( 如s i m p l e a n a l y z e r 、s t a n d a r d a n a l y z e r 类等) ,切分后返回一个t o k e n s t r e a m , 然后用t o k e n s t r e a m 中的n e x t ( ) 方法取下一个词。按照一定的分词规则,把一篇文章 从头到尾分成一个个的词,并且处理完成后,计算每个词所处文章的位置及在文章中 出现的频率。默认的语言分析器为英文,提供德语与俄语的分析器。 ( 2 ) o r g a p a c h e 1u c e n e i n d e x 索引管理包 6 l u c e n e 全文检索技术在专利服务平台中的研究与应用第二章l u c e n e 全文检索工具包及相关技术研究 此索引管理包是整个系统的核心,主要提供库的读写接口。该包内含有 i n d e x w r i t e r 和i n d e x r e a d e r 两个类,它可以调用其它包内的类,以完成创建索引库、 添加、修改、删除索引以及读取索引等工作。全文检索索引库的初始化和记录加载均 需要通过该类来完成。 ( 3 ) o r g a p a c h e 1 u c e n e s e a r c h 检索包 检索包主要提供检索接口,可以通过调用该包里的s e a r c h e r 类创建搜索器s e a r c h , 当输入查询语句后,检索器通过分析查询语句来检索索引文件,得到查询结果集。主 要使用方法i n d e x s e a r c h e r s e a r c h ( q u e r y ) ,返回h i t s 结果集。另外与查询分析包配合可 以自定义查询规则,支持查询条件间的“与 、“或 、“非、“属于 等复合查询。 l u c e n e 的结构清晰,每个包专职一项,比如o r g a p a c h e 1 u c e n e s e a r c h 负责检索, o r g a p a c h e 1 u c e n e i n d e x 负责索引,o r g a p a c h e 1 u c e n e a n a l y s i s 负责切分词等,且l u c e n e 的主要动作都采用了抽象类,方便扩展。 2 1 3l u c e n e 数据流分析 理解l u c e n e 数据流的走向,摸清楚l u c e n e 系统内部的调用时序,以方便以后在 l u c e n e 系统上的开发工作【2 0 】。这部分的分析,是深入l u c e n e 系统的钥匙,也是进行 重写的基础。l u c e n e 系统中的主要的数据流以及它们之间的关系图如图2 2 。 图2 2 很好的表明了l u c e n e 内部的数据流组织情况,并且沿着数据流的方向可 以对与l u c e n e 内部的执行时序有一个清楚的了解。现在将图中涉及到的流的类型与 各个逻辑对应系统的相关部分的关系说明一下: 图中共存在4 种数据流,分别是文本流、t o k e n 流、字节流与查询语句对象流。 文本流表示了对于索引目标和交互控制的抽象,即用文本流表示了将要索引的文件, 用文本流向用户输出信息,在实际的实现中,l u c e n e 中的文本流采用了u c s 2 作为 编码,以达到适应多种语言文字的处理的目的;t o k e n 流是l u c e n e 内部所使用的概 念,是对传统文字中词的概念的抽象,也是l u c e n e 在建立索引时直接处理的最小单 位,简单来讲,t o k e n 就是一个词和所在域值的组合;字节流则是对文件抽象的直接 操作的体现,通过固定长度的字节( l u c e n e 定义为8 比特位长) 流的处理,将文件操作 解脱出来,做到了与平台文件系统的无关性;查询语句对象流则是对查询语句抽象, 7 第二章l u c e n e 今文检索t 具包及相关技术研究l u c e n e 全文榆索技术在专利服务平台中的研究i 应用 通过类的继承结构反映查询语句的结构,并将之传送到查找逻辑来进行查找的操作。 _ 字节流( 4 ) 查询语句对象流 图2 2 数据流图 图中涉及到了多种逻辑,每种逻辑基本上直接对应于系统某一模块,但也有跨模 块调用的问题发生,这是因为l u c e n e 的重用程度非常好,这在某种程度上是加强了 模块耦合性。词法分析逻辑对应于o r g a p a c h e 1 u c e n e a n a l y s i s 部分;查询语句语法分 析逻辑对应于o r g a p a c h e 1 u c e n e q u e r y p a r s e r 部分,并且调用了o r g a p a c h e 1 u c e n e a n a l y s i s 的代码。查询结束之后向评分排序逻辑输出t o k e n 流,继而由评分排序逻辑 处理之后给出文本流的结果,这部分的实现也包含在了o r g a p a c h e 1 u c e n e s e a r c h 中。 索引构建逻辑对应于o r g a p a c h e 1 u c e n e i n d e x 部分;索引查找逻辑则主要是o r g a p a c h e 1 u c e n e s e a r c h ,但是也大量的使用了o r g a p a c h e 1 u c e n e i n d e x 部分的代码和接口定义; 存储抽象对应于o r g a p a c h e 1 u c e n e s t o r e 。没有提到的模块则是做为系统公共基础设施 存在。 8 l u c e n e 全文检索技术在专利服务平台中的研究与应用第二章l u c e n e 全文榆索工具包及相关技术研究 2 1 4l u c e n e 索引结构 l u c e n e 采用的是倒排索引结构1 6 】,它以词作为索引的中心,建立了词- 文档的 映射关系。在搜索时,它是根据词来搜索文档,而不是通过查找文档来发现词。 l u c e n e 索引文件中,有如下概念: ( 1 ) 段( s e g m e n 0 l u c e n e 索引可能由多个子索引组成,这些子索引称为段( s e g m e n t ) 。每一段都是 完整独立的索引,能够被搜索。索引的方式是:为新加入的文档创建新段,合并已经 存在的段。搜索时可能涉及到多个段或者多个索引,每一个索引又可能由一些段组成。 ( 2 ) 文档( d o c u m e n t ) l u c e n e 用一个整型( i n t e r g e r ) 的文档号来指示文档。第一个被加入到索引中的文档 就是0 号,顺序加入的文档将得到一个由前一个号码递增而来的号码。在删除和插入 时文档号是变的,所以在l u c e n e 外部存储这些号码时必须小心。 ( 3 ) 域( f i e l d ) 域( f i e l d ) 是一个关联的元组,由一个域名和一个域值组成,域名是一个字符串, 域值是一个项( t e r m ) ,比如“标题的项可以组成一个域。标题应该会被用在搜索结 果里,因此它会被作为个字段添加到文档对象里。这些字段可以被索引,也可以不 被索引,而原始的数据也可以选择保存在索引里。保存在索引里的字段在创建检索结 果页面的时候会很有用。域值也可以被切分( t o k e n i z e d ) ,这就意味着一个分析程序会 将输入到域里的内容分解成搜索引擎能够使用的标记( t o k e n ) 。 ( 4 ) 项( t e r m ) 项是最小的索引概念单位,它直接代表了一个字符串以及其在文件中的位置、出 现次数等信息。 l u c e n e 索引由若干段组成,每一段由若干的文档组成,每一个文档由若干的域 组成,每一个域由若干的项组成。项是最小的索引概念单位,它直接代表了一个字符 串以及其在文件中的位置、出现次数等信息。域是一个关联的元组,由一个域名和一 个域值组成,域名是一个字串,域值是一个项。索引文件的结构如图2 3 所示: 9 第二章l u c e n e 伞文检索丁具包及相关技术研究l u c e n e 全文检索技术在专利服务甲台中的研究与应用 2 3 索引结构 索引是检索的基础,全文索引的结构优劣注定了检索性能的高低。l u c e n e 对索 引字段提供了四种索引方式:k e y w o r d 、t e x t 、u n l n d e x e d 和u n s t o r e d 。针对不同的字 段属性和数据输出的需求,字段可以选择不同的索引存储字段规则。如表2 2 所示。 表2 2 索引存

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论