![](https://csdnimg.cn/release/download_crawler_static/19607251/bg1.jpg)
第24卷 第 3 期
2 0 1 1 年 8 月
青 岛 大 学 学 报 (自 然 科 学 版 )
JOURNAL OF QINGDAO UNIVERSITY (Natural Science Edition)
Vol .24 No .3
Aug .2 0 1 1
文章编号 :1006 1037(2011)03 0053 06
doi :10 .3969 /
j
.issn .1006 1037 .2011 .08 .012
一 种 基 于 LUCEN E 的 中 文 分 词 算 法 研 究
倡
戴 洪 ,蒋 静 ,樊 程 ,于雪丽
(青岛大学信息工程学院 ,山东 青岛 266071)
摘 要 :由于 Lucene 自带的 ChineseAnalyzer 和 CJKAnalyzer 两种中文分析器不能够满
足全文检索系统的应用 ,本文给出了一种新的中文分词算法 ,用于改进 Lucene 中文分析
器 。 该算法基于字符串匹配原理 ,实现了正向和逆向相结合的最大增字匹配分词算法 。
通过实验仿真 ,比较改进后的分析器与 Lucene 自带的两种分析器在分词效果和效率上的
差异 。 结果显示 ,改进后的分析器分词效果明显优于 Lucene 自带的两种分析器 ,提高了
全文检索系统的中文处理能力 ,系统的查全率和查准率都达到用户的需求 。
关键词 :全文检索 ;Lucene ;中文分词
中图分类号 :T P391 文献标志码 :A
全文检索是以各种计算机数据诸如文字 、声音 、图像等为处理对象 ,提供按照数据资料的内容而不是外
在特征来实现的信息检索手段
[1]
。 Lucene 作为实现全文检索的组件之一 ,虽然已经被广泛地应用 ,但是国
内对 Lucene 的研究和应用多数是将 Lucene 直接应用到全文检索系统中
[2]
,Luncene 自带的语言分析器只
能对汉字进行单字切分和双字切分 ,不能很好的对中文信息进行处理 。 本文针对 Luncene 的这一不足进行
了改进 ,提出了一个新的中文分词算法 ,用以构建高效的中文分析器 。 改进后的分析器提高了中文信息处理
能力 。
1 相关技术研究
Lucene 是一个免费开放源码的全文检索引擎工具包
[3 ,4]
,来源于 Apache 下 Jakarta 项目组开发的 JA‐
VA A PI 接口 。 它不是一个完整的全文检索引擎 ,而是一个面向全文检索的引擎架构 ,要开发基于 Lucene
的全文检索系统 ,需要在其基础上进行二次开发
[5]
。 Lucene 主要提供了索引引擎 、检索引擎和存储管理接
口等模块 。 它为开发人员提供了一个简单易用的全文检索类包 ,可以方便地嵌入到各种应用中以实现全文
检索功能 。
1 .1 LUCENE 系统架构
Lucene 系统架构有着明显的面向对象特点 ,它将系统核心功能部分设计为抽象类 ,具体的实现部分设
计为抽象类的实现 ,设计一种与平台无关的索引格式类 ,与平台相关操作也设计为抽象类 ,通过层层面向对
象设计 ,使 Lucene 成为一个高内聚 、低耦合 、容易进行二次开发的检索引擎 。 Lucene 系统架构主要由基本
封装结构 、索引核心和外部接口三部分组成 ,其中索引核心是 Lucene 架构的关键部分 。 Lucene 系统架构如
图 1 所示(org .apache .Lucene 简写为 Lucene) 。
通过图 1Lucene 系统架构可见 ,Lucene 系统结构清晰 ,每个包分工明确 ,用来完成特定的功能 。 每个功
能模块都设计为抽象类 ,便于维护和扩展
[6]
。
倡
收稿日期 :2011‐07‐23
基金项目 :国家支撑计划项目 (2006BA111B07)
作者简介 :戴 洪 (1988‐) ,男 ,硕士研究生 ,主要研究方向 :分布式计算 。