北京赛车单双技巧 北京赛车pk10黑客软件 北京pk10计划免费软件 pk10前二做号工具 pk10专业预测 pk10民间高手 北京pk10挂机选号经验分享模式 pk10冠军3码倍投计划 北京赛车计划app手机版 北京赛车开奖软件 pk10最牛稳赚模式最新 pk10全天免费计划 易算北京pk10准不准 pk10赛车7码技巧 pk10八码滚雪球3期一收

基于字典的中文分詞算法RMM

3/8/2017來源:ASP.NET技巧人氣:640

引言:目前針對中文分詞一般有基于字典,基于統計(HMM等),基于規則的分詞方法,然而其中基于字典的中文分詞是最基礎,同時也是最高效的方式,但分詞精度取決與字典的規模。 一.基于字典的中文算法簡介 1.定義:按照一定策略將帶分析的漢字串與一個大機器字典中的詞條進行匹配,若在詞典中找到某個字符串,則匹配成功.所以也稱為機械匹配。 按照掃描方向的不同:正向匹配和逆向匹配 按照長度不同:最長匹配和最小匹配 2.正向最大匹配算法MM 1)從左向右取待切分汗語句的m個字符作為匹配字段,m為大機器字典中最長詞條個數。 2)查找打機器詞條并進行匹配, 若匹配成功,則將這個匹配字段作為一個詞切分出來。 3)若匹配不成功,則將這個匹配字段的最后一個字去掉,剩下來的字符串作為新的匹配字段, 繼續進行再次匹配,重復以上過程,直到切分出所有詞為止. 3.逆向最大匹配算法RMM 該算法是正向最大匹配的逆向思維(最大匹配的順序不是從首字母開始,而是從末尾開始),匹配不成功, 將匹配自大un的最前一個字去掉,實驗表明,逆向最大匹配算法要優于正向匹配算法。 (RMM產生歧義的可能性比MM低,你將會從以下案例中體會) 4.更多關于中文分詞算法,請看網上中文分詞算法 二.RMM實現(效果比MM好, MM交給讀者實現)

public class analyzer{ String Words=""; int words_len=0; //分詞的最大長度 PRivate int max_length=4; //簡易詞典(簡單模擬) Vector<String> dict=new String[]{"服裝","有限公司","和服","有限公司"} public analyzer(String words){ this.words=words; words_len=this.words.length(); } public int getWordsLength(){ return words.length(); } //逆向匹配 public String RMMSplit(){ int words_len=getWordsLength(); if(words_len==0){ return ""; } String si=""; //詞匹配的最大長度 int pattern_len=words_len>=max_length?max_length:words_len; for(int i=pattern_len;i>=1;i--){ si=words.substring(words_len-i); if(Find(si)||i==1){ words=words.substring(0,words_len-i); results.add(si); break; } } return si; } //是否在詞典找到 public boolean Find(String str){ for(int i=0;i<dict.length;i++){ if(str.equals(dict[i])){ return true; } return false; } } public static void main(String[]args){ String str="永和服裝有限公司"; analyzer a=new analyzer(); String isFinish=a.RMMSplit(); while(""!=isFinish){ isFinish=a.RMMSplit(); } while(a.results.size()!=0){ System.out.println(a.results.remove(a.results[0])+","); } } } //執行結果如下:永,和,服裝,有限公司 //正向最大匹配算法的結果為永,和服,裝,有限公司 //由此可知,RMM比MM在處理歧義等語言方面更有優勢,出錯率更低。

pk10有什么方法平刷
北京赛车单双技巧 北京赛车pk10黑客软件 北京pk10计划免费软件 pk10前二做号工具 pk10专业预测 pk10民间高手 北京pk10挂机选号经验分享模式 pk10冠军3码倍投计划 北京赛车计划app手机版 北京赛车开奖软件 pk10最牛稳赚模式最新 pk10全天免费计划 易算北京pk10准不准 pk10赛车7码技巧 pk10八码滚雪球3期一收
三期计划怎么倍投 pt电子网络游戏 倍投彩票可靠吗 新强时时彩三星和值走势图 河内分分彩历史开奖查询 赛车北京pk10稳计划 3分11选五任选三技巧 重庆时时历史开奖记录 三肖八码中特