在PHPE.net論壇上給網友的回貼。 現在的搜索引擎技術主要包括四個環(huán)節(jié),網頁抓取、超鏈分析、網頁檢索和搜索服務。分詞就是把一句完整的話分成幾個詞,搜索引擎找出其中的關鍵詞進行檢索。中文分詞是搜索服務的入口點,是中文搜索引擎的基礎所在。有了良好的分詞技術,才能真正讓搜索引擎了解用戶所需要的信息是什么。 寫寫中文分詞的PHP實現思路(因為最近正在寫個項目,暫時不能提供源代碼,不過難度不大),雖然在各方面都還有待完善,但是整個流程還是比較完整的。 首先有關分詞的基礎知識: 分詞技術研究報告 http://www./lunwen/computer/ai/3818.html 中文搜索引擎技術揭密:中文分詞 http://www./286.html 推薦看些課件(北大中文系研究生的課程): http://ccl.pku.edu.cn/doubtfire/Course/Chinese%20Information%20Processing/2002_2003_1.htm http://ccl.pku.edu.cn/doubtfire/Course/Chinese%20Information%20Processing/contents/Chapter_07_1.ppt 第二. 語料庫的準備 可以選用《人民日報》語料庫,是北京大學計算語言學研究所與富士通公司(Fujitsu)合作的產品,加工2700萬字的《人民日報》語料庫,加工項目包括詞語切分、詞性標注、專有名詞(專有名詞短語)標注。在網上可以下載,不過不清楚是否免費,請自行搜索。 語料庫要加工為詞典,供PHP程序使用。 第三. 分詞算法原理 最常用的是最大匹配法和最大概率法,為了加強精確度,避免歧義,可以結合多種算法。多種算法結合會導致速度下降,視項目要求采用。 第四. 分詞的PHP實現 原理見上面推薦的PPT幻燈片,只不過是用PHP加載詞典文件,再實現字符串的搜索而已。目前來看,效果還是不錯的,但是效率不太高。沒有辦法,像PHP這種腳本語言,要求不能太高。接下來試試先用C寫分詞部份,再用PHP調用,測試一下效率。 |
|