中文分詞技術屬於自然語言處理技術範疇,對於一句話,人可以通過自己的知識來明白哪些是詞,哪些不是詞,但如何讓計算機也能理解?其處理過程就是分詞演算法。
現有的分詞演算法可分為三大類:基於字串匹配的分詞方法、基於理解的分詞方法和基於統計的分詞方法。
1、基於字串匹配的分詞方法
這種方法又叫做機械分詞方法,它是按照一定的策略將待分析的漢字串與乙個「充分大的」機器詞典中的詞條進行配,若在詞典中找到某個字串,則匹配成功(識別出乙個詞)。按照掃瞄方向的不同,串匹配分詞方法可以分為正向匹配和逆向匹配;按照不同長度優先匹配的情況,可以分為最大(最長)匹配和最小(最短)匹配;按照是否與詞性標註過程相結合,又可以分為單純分詞方法和分詞與標註相結合的一體化方法。常用的幾種機械分詞方法如下:
1)正向最大匹配法(由左到右的方向);
2)逆向最大匹配法(由右到左的方向);
3)最少切分(使每一句中切出的詞數最小)。
還可以將上述各種方法相互組合,例如,可以將正向最大匹配方法和逆向最大匹配方法結合起來構成雙向匹配法。由於漢語單字成詞的特點,正向最小匹配和逆向最小匹配一般很少使用。一般說來,逆向匹配的切分精度略高於正向匹配,遇到的歧義現象也較少。統計結果表明,單純使用正向最大匹配的錯誤率為1/169,單純使用逆向最大匹配的錯誤率為1/245。但這種精度還遠遠不能滿足實際的需要。實際使用的分詞系統,都是把機械分詞作為一種初分手段,還需通過利用各種其它的語言資訊來進一步提高切分的準確率。
對於機械分詞方法,可以建立乙個一般的模型,在這方面有專業的學術**,這裡不做詳細論述。
2、基於理解的分詞方法
這種分詞方法是通過讓計算機模擬人對句子的理解,達到識別詞的效果。其基本思想就是在分詞的同時進行句法、語義分析,利用句法資訊和語義資訊來處理歧義現象。它通常包括三個部分:分詞子系統、句法語義子系統、總控部分。在總控部分的協調下,分詞子系統可以獲得有關詞、句子等的句法和語義資訊來對分詞歧義進行判斷,即它模擬了人對句子的理解過程。這種分詞方法需要使用大量的語言知識和資訊。由於漢語語言知識的籠統、複雜性,難以將各種語言資訊組織成機器可直接讀取的形式,因此目前基於理解的分詞系統還處在試驗階段。
3、基於統計的分詞方法
從形式上看,詞是穩定的字的組合,因此在上下文中,相鄰的字同時出現的次數越多,就越有可能構成乙個詞。因此字與字相鄰共現的頻率或概率能夠較好的反映成詞的可信度。可以對語料中相鄰共現的各個字的組合的頻度進行統計,計算它們的互現資訊。定義兩個字的互現資訊,計算兩個漢字x、y的相鄰共現概率。互現資訊體現了漢字之間結合關係的緊密程度。當緊密程度高於某乙個閾值時,便可認為此字組可能構成了乙個詞。這種方法只需對語料中的字組頻度進行統計,不需要切分詞典,因而又叫做無詞典分詞法或統計取詞方法。但這種方法也有一定的侷限性,會經常抽出一些共現頻度高、但並不是詞的常用字組,例如「這一」、「之一」、「有的」、「我的」、「許多的」等,並且對常用詞的識別精度差,時空開銷大。實際應用的統計分詞系統都要使用一部基本的分詞詞典(常用詞詞典)進行串匹配分詞,同時使用統計方法識別一些新的詞,即將串頻統計和串匹配結合起來,既發揮匹配分詞切分速度快、效率高的特點,又利用了無詞典分詞結合上下文識別生詞、自動消除歧義的優點。
到底哪種分詞演算法的準確度更高,目前並無定論。對於任何乙個成熟的分詞系統來說,不可能單獨依靠某一種演算法來實現,都需要綜合不同的演算法。筆者了解,海量科技的分詞演算法就採用「複方分詞法」,所謂複方,相當於用中藥中的複方概念,即用不同的藥才綜合起來去醫治疾病,同樣,對於中文詞的識別,需要多種演算法來處理不同的問題。
Git三大分割槽的概念解析
很多 git 的初級教程,幾乎都有說先執行 git add 然後 git commit。那麼為什麼要先add然後commit呢?git commit執行時,會提交暫存區的內容 git add 命令會將我們做的修改新增到暫存區中。這就是為什麼 git commit 之前要先執行 git add 的原因...
Git三大分割槽的概念解析
很多 git 的初級教程,幾乎都有說先執行 git add 然後 git commit。那麼為什麼要先add然後commit呢?git commit執行時,會提交暫存區的內容 git add 命令會將我們做的修改新增到暫存區中。這就是為什麼 git commit 之前要先執行 git add 的原因...
現有的分詞演算法,主要分為哪三大類?
1 基於字串匹配的分詞方法 這種方法又叫做機械分詞方法,它是按照一定的策略將待分析的漢字串與乙個 充分大的 機器詞典中的詞條進行配,若在詞典中找到某個字串,則匹配成功 識別出乙個詞 按照掃瞄方向的不同,串匹配分詞方法可以分為正向匹配和逆向匹配 按照不同長度優先匹配的情況,可以分為最大 最長 匹配和最...