規則式(stanford-segmenter)
先到 http://nlp.stanford.edu/software/segmenter.shtml 抓個新版的 ,目前是stanford-segmenter-2013-04-04解壓後進入 stanford-segmenter-2013-04-04 目錄,執行個範例程式
./segment.sh ctb test.simp.utf8 UTF-8 0
若是要對正體中文文檔斷字,需用類似iconv的程式作轉換,例如以utf-8格式儲存的繁體文檔fan.txt要斷字的話,執行以下指令:
iconv -c -f utf-8 -t big5 fan.txt | iconv -c -f big5 -t gb2312 | iconv -f gb2312 -t utf8
試用結果感覺,對於科學詞彙較多的文檔,似乎斷得有點不好,而且有類似的句子斷出來的結果卻明顯不同的情況。
統計式
http://ckipsvr.iis.sinica.edu.tw/ 中有對中文的類統計方式斷詞步驟的說明,可分為:
- 初步斷詞
- 未知詞偵測
- 中國人名擷取
- 歐美譯名擷取
- 複合詞擷取
- bottom-up merging algorithm
- 重新斷詞
改寫的步驟為:
while (未知詞比重<閥值 && 迭代次數<閥值) {
標示已知詞(可能有多個解)
產生候選詞,加入詞庫,調整權重
}
沒有留言:
張貼留言