當前位置:成語大全網 - 新華字典 - 第4章 談談分詞

第4章 談談分詞

利用統計語言模型進行自然語言處理是建立在詞的基礎上的,因為詞是表達語義的最小單位。對於西方拼音語言來講,詞之間有明確的分界符( Delimit),統計和使用語言模型非常直接。而對於壹些亞洲語言(如中、日、韓、泰等),詞之間沒有明確的分界符。因此, 需要先對句子進行分詞,才能做進壹步的自然語言處理 。

分詞的輸入是壹串胡子連著眉毛的漢字,例如壹個句子:“數據組請到壹樓會議室開會”,而分詞的輸出則是用分界符分割的壹串詞:數據組 / 請到 / 壹樓 / 會議室 / 開會。

最容易想到的分詞方法,就是“查字典”的方法:其實就是把壹個句子從左向右掃描壹遍,遇到字典裏有的詞就標識出來,遇到復合詞(比如“上海大學”)就找最長的詞匹配,遇到不認識的字串就分割成單字詞,於是簡單的分詞就完成了。

這個最簡單的方法可以解決七八成以上的分詞問題。但是,它畢竟太簡單,壹個明顯的不足是當遇到有二義性(有雙重理解意思)的分割時就無能為力了。比如,對短語“發展中國家”,正確的分割是“發展 / 中 / 國家”,而采用從左向右查字典的辦法會將它分割成“發展 / 中國 / 家”,顯然是錯了。另外,並非所有的最長匹配都壹定是正確的。比如“上海大學城書店”的正確分詞應該是“上海-大學城-書店”,而不是“上海大學-城-書店”。

斷句和說文解字從根本上講,就是消除歧義性,分詞的二義性是語言歧義性的壹部分 。20世紀90年代以前,海內外不少學者試圖用壹些文法規則來解決分詞的二義性問題,都不是很成功。當然也有壹些學者開始註意到統計信息的作用,但是並沒有找到有完善理論基礎的正確方法。1990年前後,當時在清華大學電子工程系工作的郭進博士用統計語言模型成功解決了分詞二義性問題,將漢語分詞的錯誤率降低了壹個數量級。

利用統計語言模型分詞的方法,可以用幾個數學公式簡單概括。假定個句子S可以有3種分詞方法,如下:

A1 / A2 / A3... / Ai

B1 / B2 / B3... / Bj

C1 / C2 / C3... / Ck

那麽,如果A1,A2,A3...,Ai是最好的分詞組合,那麽其概率同時滿足

P(A1 / A2 / A3... / Ai) > P(B1 / B2 / B3... / Bj)

P(A1 / A2 / A3... / Ai) > P(C1 / C2 / C3... / Ck)

因此,只要利用上壹章提到的統計語言模型 計算出每種分詞在訓練模型中出現的概率,並找出其中概率最大的,就能找到最好的分詞方法 。

需要指出的是任何方法都有它的局限性,雖然利用統計語言模型進行分詞,可以取得比人工更好的結果,但是也不可能做到百分之百準確 。因為統計語言模型很大程度上是依照“大眾的想法”,或者“多數句子的用法”,而在特定情況下可能是錯的。另外,有些人為創造出的“兩難”的句子,比如對聯“此地安能居住,其人好不悲傷”,用什麽方法都無法消除二義性(它的兩種分詞方法“此地-安能-居住,其人-好不-悲傷”和“此地安-能居住,其人好-不悲傷”意思完全相反。)好在真實文本中,這些情況幾乎不會發生。

如何衡量分詞的結果?看似容易,其實不那麽簡單。說容易,是因為只要用計算機分詞的結果與人工分詞的結果進行比較就可以了。說它不那麽簡單,是因為 不同的人對詞切分看法上的差異遠比我們想象的大得多 。人工分詞產生不壹致的 原因主要在於人們對詞的顆粒度的認識問題 。詞匯是表達意思的最基本的單位,在小就沒意思了。這就如同在化學裏分子是保持化學性質的最小單位壹樣,再往下分到原子,化學特性就變了。 好的做法是讓壹個分詞器能夠支持不同層次的詞的切分,讓不同的應用場景自行決定切分的顆粒度 。

中文分詞以統計語言模型為基礎,經過幾十年的發展和完善,今天基本上可以看做是壹個已經解決的問題。當然不同的分詞器也有質量差異,主要的差別在於數據的使用和工程實現的精度。