SharpICTCLAS 1.0 發(fā)布 (感謝工控網發(fā)現了一個問題,問題出在字符串比較上,目前已經修正,請重新下載。2007年4月20日)
一、SharpICTCLAS 1.0 版相對于測試版的改進
1、修改了原子分詞代碼,使得對于全角字母有較好的識別
2、修改了部分詞性標注部分的代碼
因為詞性標注部分的代碼存在問題(應當是從ICTCLAS就存在的問題),主要表現在如果某個漢字沒有詞性,則在詞性標注時會出現異常。例如:“這些是永遠也沒有現成的答桉的”其中“答案”寫錯了,當對這個有錯別字的句子分詞時,“桉”字是沒有詞性的,程序在此時將出現錯誤。
目前的解決辦法是對于這些沒有詞性的詞在最終標注時標注為“字符串”。
2、修改了地名識別的一些問題
這個問題出現在Span類的PlaceRecognize方法中,nStart與nEnd在某些時候會計算錯誤。在測試版SharpICTCLAS中,句子“明定陵是明十三陵中第十座陵墓”在分詞時會因為這個問題導致異常。
3、修改了基于CCID的字符串比較代碼
原有代碼沒有很好考慮對全角、半角混合字符串的比較問題,現在修正過來了。
4、修改了向詞庫添加詞匯的代碼
原有代碼存在錯誤,現在改正了過來。
二、仍然有待改進的地方
現在的程序仍然有很多地方有待改進,例如原子分詞部分的代碼對電子郵件、URL等識別還不是很好,日后可利用正則表達式加以改進;除此之外,對于詞性標注以及人名地名識別部分代碼 ,我除了修改了部分問題代碼外,沒有做任何改進和調整,這使得整個代碼顯得凌亂,有待做一次全面重構。
三、SharpICTCLAS使用時的一些示例代碼
為了能夠更好的使用SharpICTCLAS,現提供一些示例代碼,主要完成的工作包括:1)向詞庫中添加新詞匯;2)對文件的預處理,實現繁體向簡體的轉換、全角字符向半角字符的轉換、利用正則表達式過濾多余HTML標記以及斷句等。具體可以訪問我的文章《SharpICTCLAS分詞系統(tǒng)簡介(9)詞庫擴充》。
目前經過調整后的SharpICTCLAS運行效果還算不錯。在對博客園一萬五千篇文章進行分詞測試過程中,向詞庫中添加了一千三百多個詞匯然后進行分詞,效果還不錯, 分詞異常一共發(fā)生了15次,其中有9處是因為存在大量日文字符,另外6處是一句話中單詞過多,超出了軟件限制(200詞)。分詞效率也比較令人滿意(盡管總體還是比較慢),15000篇文章總用時2.5小時,但這不只是分詞的時間,還包括了繁體轉簡體、利用正則表達式去掉HTML符號,統(tǒng)計詞頻(這需要進行重復詞的判別,我使用了AVL樹 ,共統(tǒng)計得到16萬詞匯)、將分詞結果寫入SQL Server 2005數據庫。如果不考慮這些因素的話,感覺應當和C++程序效率差不多,當然這是沒有經過嚴格測試的結論。
如果大家在使用時發(fā)現什么新問題,還請及時告知,我會繼續(xù)修正這些問題。
- ICTCLAS簡介:
計算所漢語詞法分析系統(tǒng)ICTCLAS(Institute of Computing Technology, Chinese Lexical Analysis System),功能有:中文分詞;詞性標注;未登錄詞識別。分詞正確率高達97.58%(973專家評測結果),未登錄詞識別召回率均高于90%,其中中國人名的識別召回率接近98%;處理速度為31.5Kbytes/s。
著作權: Copyright(c)2002-2005中科院計算所 職務著作權人:張華平
遵循協(xié)議:自然語言處理開放資源許可證1.0
Email: zhanghp@software.ict.ac.cn
Homepage: http://www.i3s.ac.cn
- SharpICTCLAS:
.net平臺下的ICTCLAS,是由河北理工大學經管學院呂震宇根據Free版ICTCLAS改編而成,并對原有代碼做了部分重寫與調整。
Email: zhenyulu@163.com
Blog: http://www.cnblogs.com/zhenyulu
來源:http://www.cnblogs.com/zhenyulu/category/85598.html