999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Lucene的中文分詞算法研究與實現(xiàn)

2014-02-22 05:30:00徐有健
電子測試 2014年24期
關(guān)鍵詞:搜索引擎設計

徐有健

(華南理工大學,廣東廣州,510006)

基于Lucene的中文分詞算法研究與實現(xiàn)

徐有健

(華南理工大學,廣東廣州,510006)

本文重點研究了如何改進中文分詞算法,并根據(jù)新的中文算法,設計出可以滿足Hadoop文件系統(tǒng)可視化文件搜索引擎研究的中文分析器MyAnalyzer。

lucene;Hadoop;搜索;中文分詞

1 研究背景

作為中文信息處理的基礎,中文分詞分析器的效率和準確度對搜索引擎研究至關(guān)重要。中文分詞的準確性會直接影響到中文搜索引擎的準確率和工作效率。目前,中文搜索引擎技術(shù)比西文搜索引擎技術(shù)落后一段距離的原因就在于中文搜索需要經(jīng)過分詞程序,西文引擎的分詞分析器不適用于中文分詞。比如Lucene自帶的StandardAnalyzer分析器,英文分詞的效果非常好,但是在中文分詞方面是將每一個漢字當做一個詞,對中文分詞并沒有實用價值。至于Lucene自帶的另外兩種內(nèi)置分析器,SmartChineseAnalyzer和CJKAnalyzer,雖然可以實現(xiàn)中文分詞,但是分詞效率比較低,尤其是CJKAnalyze,會產(chǎn)生大量的無用分詞。由于Hadoop本身不帶有可視化文件系統(tǒng)管理功能,要建立基于Lucene的Hadoop文件系統(tǒng)可視化搜索引擎,就要研究如何改進Lucene中文分詞器,使其滿足項目需要。

2 基于Lucene的Hadoop文件系統(tǒng)可視化文件搜索中的中文分詞算法實現(xiàn)

2.1 中文分詞模塊設計

2.1.1 中文分詞模塊框架設計

設計一個高性能實用化的中文分詞模塊對實現(xiàn)引擎搜索結(jié)果的準確性和快捷性具有重要的意義。設計中文分詞模塊框架時要考慮到分詞速度、分詞精確度和系統(tǒng)維護的便利性。根據(jù)三個考慮要素,設計中文分詞框架如圖1-1所示。設計的分詞框架包括詞典、分詞器和性能評測三個模塊。

圖1 -1

2.1.2 中文分詞算法設計

為了適應人們的日常閱讀習慣與寫作習慣,本中文分詞模塊中文分詞算法設計采用了最佳匹配法的分詞算法。最佳匹配法分為正向的最佳匹配法和逆向的最佳匹配法,以“長詞優(yōu)先”原則為核心,按照在詞頻的大小順序?qū)υ~典中的詞條進行排列。正向最佳匹配算法的形式定義為:對于文本中的字符串ABC,A∈Z,AB∈Z,ABC不屬于Z,Z為字典,那么這串字符就切分為AB/C。例如,一封毛澤東親筆信原稿,采用正向最佳匹配法時則劃分為一封/毛澤東/親筆信/原稿。逆向最佳匹配法與正向最佳匹配法相反,從句子或者文章末尾開始處理。具體的算法設計如下:

(1)正向最佳逐字匹配算法

采用正向最佳逐字匹配算法,要堅持“長詞優(yōu)先”原則,即當一個漢字字符出現(xiàn)多種切分結(jié)果時,取含有長度最長的詞條切分結(jié)果。運用長詞優(yōu)先原則,有利于縮短對分詞詞典的檢索時間,提高分詞速度。運用正向最佳逐字匹配算法進行分詞的設計思路為:首先,在詞典中搜索字符串的最前面的字符,形成以該首字字符節(jié)點為根的詞典樹,將該字符串與詞典樹進行匹配,一次匹配一個字符,匹配成功則繼續(xù)向下匹配,否則就回溯,找到上一個可以成詞的字,即終止標識符為“T”,形成分詞結(jié)果。具體描述如下:

輸出:切分出的單詞集合S

Step1:在首字散列中定位待查詢漢字符串首字據(jù)待查詢字符串的首字的Unicode值。如果字符節(jié)點為根的詞典樹存在,則得到子樹節(jié)點的指針,并通過子樹節(jié)點的指針找到子節(jié)點表,記錄該節(jié)點的層數(shù)k,i=i+1,轉(zhuǎn)Step2。如果不存在,則單獨成詞,將該字添加到單詞集合S中,指向,重復Step1。

Step3:判斷該節(jié)點組詞標識是否為T,如果是,則轉(zhuǎn)Step4;如果不是,則i=i+1,找到該節(jié)點的子節(jié)點表,轉(zhuǎn)Step2。

Step4:判斷該節(jié)點是否為葉子節(jié)點,如果是,若i<n,將添加到單詞表S中,i=i+1,轉(zhuǎn)Step1;若i=n,將添加到單詞表S中,算法結(jié)束。如果不是,i=i+1,記錄該節(jié)點層次 k,轉(zhuǎn) Step2。

與傳統(tǒng)的正向最佳逐字配算法相比,這種正向最佳逐字配算法減少了分詞過程中試探性查詢的次數(shù),無需預知待查詢詞的長度,實現(xiàn)一次匹配完成分詞,極大地提高了分詞的效率。以“今天我們要上學”為例,假設詞典的最長詞長為5。

一般的最大匹配分詞算法的查找過程為:

用本文設計的最大匹配算法的查找過程為:

今天我們要上學我們要上學要上學上學。

通過比較,一般的最大匹配分詞算法的查找次數(shù)為12次,本文的最大匹配算法為4次,大大減少了查找的次數(shù),提高了查找的效率。

(2)逆向最佳逐字匹配算法

逆向最佳逐字匹配算法的原理與正向最佳逐字匹配算法基本相同,因此不以加贅述。與正向最佳逐字匹配算法不同的是,逆向最長匹配的分詞算法是從右至左,從字符串后面進行掃描,需要配合逆向最長匹配的詞典結(jié)構(gòu)進行使用。

2.1.3 詞典設計

為了實現(xiàn)中文分詞模塊的順利使用,要結(jié)合分詞算法設計出詞典。

首先,要統(tǒng)計中文中的詞的字數(shù)個數(shù)的頻率,根據(jù)頻率制定各字數(shù)的詞條。一般來說,中文詞中,字數(shù)為2的詞語數(shù)量比較多,多字(四個字以上)的使用頻率比較低。其次,為了配合正向最佳逐字匹配算法使用,要設計出正序詞典機制。詞典中首字的索引值即為首字的 Unicode 編碼。詞典的第一層要建立起以詞語首字為索引的首字散列表,使各個首字相同的詞語采用同一根節(jié)點的詞典結(jié)構(gòu)。除了詞語的首字外,剩余部分在內(nèi)存中采用樹的形式存放。最后,為了配合逆向最佳匹配算法,要設計出逆序詞典作為使用基礎。逆序詞典結(jié)構(gòu)與正序詞典結(jié)構(gòu)完全相同,但是要將每個詞條的順序顛倒,建立起存儲詞語尾字W以及在每個W下記錄了以尾字W為詞尾的所有詞匯的首字散列表。

2.2 中文分詞機制的實現(xiàn)

實現(xiàn)分詞機制首先要實現(xiàn)分詞預處理,將需要分詞的內(nèi)容轉(zhuǎn)換為分詞模塊可以處理的文本格式。其次,通過Lucene的工具包中的Analayzer類工具,實現(xiàn)設計的中文分詞模塊。由于Lucene自帶的SmartChineseAnalyzer和CJKAnalyze不能滿足引擎中的中文分詞需要,因此要開發(fā)出新的中文分析器。本文將新的分詞算法加入到Lucene當中開發(fā)出適合需要的MyAnalyzer,通過MyAnalyzer實現(xiàn)新設計的中文分詞算法。

2.3 分詞性能測試

2.3.1 分詞速度測試

(1)實驗方法: 以經(jīng)過分詞預處理后得到的純文本為速度測試材料,通過計算分詞的速度與質(zhì)量對分詞模塊的分詞性能進行測試。

(2)實驗方案:文本長度從500字符開始,以1500個字符為一個遞增區(qū)間,分別計算每次分詞所耗的時間。

(3)實驗數(shù)據(jù)測量:由于實驗環(huán)境無法達到理想狀態(tài),同一個文本每次切分所耗費的時間并不完全相同導致記錄時間有誤差,為了使實驗數(shù)據(jù)更加接近標準數(shù)據(jù),要對每個文本進行反復測試,取數(shù)據(jù)的平均值。

(4)實驗結(jié)果:經(jīng)過反復測驗,獲得實驗數(shù)據(jù)如表1-3

(5)數(shù)據(jù)分析:從表1-3可以看出,分析器的分詞速度一直都保持在20字/ms至25字/ms的速度之間。以這個速度,本分詞模塊每秒鐘處理字符數(shù)在20000到250000之間,可以滿足現(xiàn)在中文搜索引擎對速度的要求。

表1 -3

2.3.2 分詞精準度測試

(1)實驗方案:隨機選擇一個句子,通過MyAnalyzer、SmartChineseAnalyzer和CJKAnalyze三種分析器進行分詞,對結(jié)果進行比較,判斷新設計的中文分詞模塊的精準度。

(2)實驗步驟:①選擇了“2008年12月26日,中國海軍首批護航編隊踏上了遠洋護航的漫長征程。”作為分詞文本

②參與實驗的分析器包括MyAnalyzer、SmartChineseAnalyzer和CJKAnalyze

(3)實驗結(jié)果:MyAnalyzer的分詞結(jié)果是 2008/年/12/月/26/日/中國/海軍/首批/護航/編隊/踏上/了/遠洋/護航/的/漫長/征程/

SmartChineseAnalyzer的分詞結(jié)果是年/月/日/中/國/海/軍/首/批/護/航/編/隊/踏/上/了/遠/洋/護/航/的/漫/長/征/程/

CJKAnalyze的分詞結(jié)果是2008/年/12/月/26/日中/中國/國海/海軍/軍首/首批/批護/護航/航編/編隊/踏上/上了/了遠/遠洋/洋護/護航/航的/的漫/漫長/長征/征程/

(4)實驗結(jié)論:通過對分詞結(jié)果進行對比,可以發(fā)現(xiàn)MyAnalyzer的分詞準確性最高,具體體現(xiàn)在:SmartChineseAnalyzer將中文外的其他字符種類都給過濾掉了。CJKAnalyze保留了其他種類的字符,但是產(chǎn)生了許多無用的切分。相比之下,MyAnalyzer保留了中文外的其他字符種類,并且分詞字數(shù)不限于兩個字數(shù),準確率較高。因此,MyAnalyzer可以滿足Hadoop文件系統(tǒng)可視化文件搜索引擎設計的需要。

3 結(jié)束語

關(guān)于中文分詞的算法,目前仍然沒有完美的設計方案,可以完美兼顧中文分詞的準確性與高效率,而是或多或少會存在一定的局限性。但是,通過比較各種分詞算法的優(yōu)劣,并不斷對分詞算法加以改善,取長補短,終有一日可以整合出一個效率高、準確率高的分詞方法,推動中文引擎技術(shù)的發(fā)展。

[1] 戴洪,蔣靜,樊程,等.一種基于LUCENE的中文分詞算法研究[J].青島大學學報:自然科學版,2011(3):53-58.

[2] 趙珂,逯鵬,李永強.基于Lucene的搜索引擎設計與實現(xiàn)[J].計算機工程,2011(16):39-41.

[3] 趙旭,王慶樺.向LUCENE搜索引擎中加入中文同義詞查詢[J].科技信息,2011(7):60-61.

Lucene the Chinese word segmentation algorithm and implementation of research-based

Xu Youjian
(South China University of Technology,Guangzhou,510006)

This paper is aimed at improving Chinese word segmentation module.According to the new Chinese word segmentation module,an analyzer named MyAnalyzer that can process Hadoop file System research is developed.

lucene;Hadoop;search;Chinese word

猜你喜歡
搜索引擎設計
何為設計的守護之道?
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
瞞天過海——仿生設計萌到家
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
網(wǎng)絡搜索引擎亟待規(guī)范
Nutch搜索引擎在網(wǎng)絡輿情管控中的應用
基于Nutch的醫(yī)療搜索引擎的研究與開發(fā)
廣告主與搜索引擎的雙向博弈分析
知識漫畫
百科知識(2012年11期)2012-04-29 08:30:15
主站蜘蛛池模板: 中文字幕在线日本| 日韩小视频在线播放| 动漫精品中文字幕无码| 18禁影院亚洲专区| 免费毛片视频| 国产成本人片免费a∨短片| 精品久久人人爽人人玩人人妻| 国产精品欧美激情| 毛片手机在线看| 亚洲成年人片| 在线观看国产精品一区| 视频二区中文无码| 欧美激情综合| 中文字幕第4页| 91免费观看视频| 亚洲精品在线91| 亚洲an第二区国产精品| 成人午夜视频免费看欧美| 91国内在线视频| 日韩国产黄色网站| 91毛片网| 精品久久久久无码| 国产成人免费| 黄色片中文字幕| 波多野吉衣一区二区三区av| 女人18毛片一级毛片在线 | 91色在线观看| 国产精品一区在线观看你懂的| 天天躁夜夜躁狠狠躁躁88| 国产白浆一区二区三区视频在线| 中国一级特黄视频| 经典三级久久| 免费国产小视频在线观看 | 欧美怡红院视频一区二区三区| 午夜国产精品视频黄| 国产爽妇精品| 亚洲人成网7777777国产| 偷拍久久网| 99热线精品大全在线观看| 激情亚洲天堂| 中文字幕亚洲精品2页| 久久久噜噜噜| 日韩福利视频导航| 久久这里只精品国产99热8| 992tv国产人成在线观看| 天天激情综合| 伊人久综合| 国产成人喷潮在线观看| 国模视频一区二区| 国产一区二区三区夜色 | 亚洲国内精品自在自线官| 色窝窝免费一区二区三区| 国产午夜不卡| 久久婷婷五月综合色一区二区| 欧美亚洲一二三区| 一级毛片无毒不卡直接观看| 欧美在线导航| 91国内外精品自在线播放| 18禁影院亚洲专区| 成人一级免费视频| 欧美无专区| 精品视频第一页| 91激情视频| 一级毛片不卡片免费观看| 亚洲品质国产精品无码| 亚洲综合欧美在线一区在线播放| 一区二区理伦视频| 亚洲av无码久久无遮挡| 黄色成年视频| 色综合婷婷| 一个色综合久久| 日本成人一区| av无码一区二区三区在线| 国产亚洲美日韩AV中文字幕无码成人 | 国产精品无码AV片在线观看播放| 亚洲日本一本dvd高清| 无码视频国产精品一区二区| 亚洲精品片911| 欧美不卡视频在线观看| 久久青青草原亚洲av无码| 亚洲欧美自拍中文| 91无码人妻精品一区二区蜜桃|