分詞介紹:算法
英文的單詞是具備含義的最小單位,且以空格爲界限。 中文的詞語纔是具備意義的最小單位,可是沒有界限,須要咱們對一句話進行分詞,再對詞進行處理。
經常使用的分詞手段爲:匹配規則,機率統計。其餘如語義句意則不夠成熟。網絡
基於匹配規則的有(主要匹配詞典或者詞表):架構
按照掃描方向的不一樣:正向匹配和逆向匹配 按照長度的不一樣:最大匹配和最小匹配 正向最大匹配思想MM 1從左向右取待切分漢語句的m個字符做爲匹配字段,m爲大機器詞典中最長詞條個數。 2查找大機器詞典並進行匹配。 3若匹配成功,則將這個匹配字段做爲一個詞切分出來。 4若匹配不成功,則將這個匹配字段的最後一個字去掉,剩下的字符串做爲新的匹配字段,進行再次匹配, 5重複以上過程,直到切分出全部詞爲止。 逆向最大匹配算法RMM 是正向最大匹配的逆向,匹配不成功將匹配字段的最前一個字去掉,實驗代表逆向最大匹配算法要優於正向最大匹配算法。 雙向最大匹配法(Bi-directction Matching method,BM) 雙向最大匹配法是將正向最大匹配法獲得的分詞結果和逆向最大匹配法的到的結果進行比較,從而決定正確的分詞方法。 據SunM.S.和Benjamin K.T.(1995)的研究代表,中文中90.0%左右的句子,正向最大匹配法和逆向最大匹配法徹底重合 且正確,只有大概9.0%的句子兩種切分方法獲得的結果不同,但其中必有一個是正確的(歧義檢測成功),只有不到1.0%的句子, 或者正向最大匹配法和逆向最大匹配法的切分雖重合倒是錯的,或者正向最大匹配法和逆向最大匹配法切分不一樣但兩個都不對 (歧義檢測失敗)。這正是雙向最大匹配法在實用中文信息處理系統中得以普遍使用的緣由所在。 設立切分標誌法 收集切分標誌,在自動分詞前處理切分標誌,再用MM、RMM進行細加工。 最少切分法(使每一句中切出的詞數最小) 最佳匹配(OM,分正向和逆向) 對分詞詞典按詞頻大小順序排列,並註明長度,下降時間複雜度。 優勢:易於實現 缺點:匹配速度慢。對於未登陸詞的補充較難實現。缺少自學習。 一般是多種算法合用,或者一種爲主、多種爲輔,同時還會加入詞性、詞頻等屬性來輔助處理(運用某些簡單的數學模型)。 這類算法優勢是速度塊,時間複雜度較低,實現簡單,如mmseg算法(不少分詞工具基於mmseg)。 基於統計的分詞(無字典分詞) 主要思想:上下文中,相鄰的字同時出現的次數越多,就越可能構成一個詞。所以字與字相鄰出現的機率或頻率能較好的反映詞的可信度。 主要統計模型爲:N元文法模型(N-gram)、隱馬爾科夫模型(Hidden Markov Model, HMM) 通常主要是運用機率統計、機器學習等方面的方法,目前常見的是CRF,HMM等。 這類分詞事先對中文進行建模,根據觀測到的數據(標註好的語料)對模型參數進行估計(訓練)。 在分詞階段再經過模型計算各類分詞出現的機率,將機率最大的分詞結果做爲最終結果.這類算法對未登陸詞識別效果較好,可以根據使用領域達到較高的分詞精度,可是實現比較複雜,一般須要大量的前期工做。 1N-gram模型思想(n-gram見其餘博文) 模型基於這樣一種假設,第n個詞的出現只與前面N-1個詞相關,而與其它任何詞都不相關,整句的機率就是各個詞出現機率的乘積 . 可是這種方法:一個缺陷是參數空間過大;另一個缺陷是數據稀疏嚴重。 爲了解決這個問題,引入了馬爾科夫假設:一個詞的出現僅僅依賴於它前面出現的有限的一個或者幾個詞。 隱馬爾科夫模型思想 基於規則的分詞(基於語義) 經過模擬人對句子的理解,達到識別詞的效果,基本思想是語義分析,句法分析,利用句法信息和語義信息對文本進行分詞。自動推理,並完成對未登陸詞的補充是其優勢。不成熟. 具體概念:有限狀態機\語法約束矩陣\特徵詞庫 基於字標註的中文分詞方法 以往的分詞方法,不管是基於規則的仍是基於統計的,通常都依賴於一個事先編制的詞表(詞典)。自動分詞過程就是經過詞表和相關信息來作出詞語切分的決策。 與此相反,基於字標註的分詞方法其實是構詞方法。即把分詞過程視爲字在字串中的標註問題。 因爲每一個字在構造一個特定的詞語時都佔據着一個肯定的構詞位置(即詞位),假如規定每一個字最多隻有四個構詞位置: 即B(詞首),M (詞中),E(詞尾)和S(單獨成詞),那麼下面句子(甲)的分詞結果就能夠直接表示成如(乙)所示的逐字標註形式: (甲)分詞結果:/上海/計劃/N/本/世紀/末/實現/人均/國內/生產/總值/五千美圓/ (乙)字標註形式:上/B海/E計/B劃/E N/S 本/s世/B 紀/E 末/S 實/B 現/E 人/B 均/E 國/B 內/E生/B產/E總/B值/E 五/B千/M 美/M 元/E 。/S 首先須要說明,這裏說到的字不僅限於漢字,也包括外文字母、阿拉伯數 字和標點符號等字符。全部這些字符都是構詞的基本單元。 把分詞過程視爲字的標註問題的一個重要優點在於,它可以平衡地看待詞表詞和未登陸詞的識別問題。 在這種分詞技術中,文本中的詞表詞和未登陸詞都是用統一的 字標註過程來實現的。在學習架構上,既能夠沒必要專門強調詞表詞信息, 也不用專門設計特定的未登陸詞(如人名、地名、機構名)識別模塊。這使得分詞系統的設 計大大簡化。 在字標註過程當中,全部的字根據預約義的特徵進行詞位特性的學習,得到一個機率模型。 而後,在待分字串上,根據字與字之間的結合緊密程度,獲得 一個詞位的標註結果。 最後,根據詞位定義直接得到最終的分詞結果。 總而言之,在這樣一個分詞過程當中,分詞成爲字重組的簡單過程。然而這一簡單處理帶來的分詞結果倒是使人滿意的。
中文分詞的難點機器學習
一、歧義消除,結合上下文語義 「表面的」->「表面 的」or「表 面的」 「中將」->「一名中將」OR「在幾年中將超越。。。」 「乒乓球拍賣完了」->「乒乓 球拍 賣 完 了」OR「乒乓球 拍賣 完 了」 二、未登錄詞識別 新詞,人名,地名,機構名,術語,網絡新詞