一、中文分詞技術綜述 ‘、全文檢索技術 所謂全文檢索是指計算機索引程序通過掃描文章中的每一個詞,對每一個詞建立一個索引,指明該詞在文章中出現的次數和位置,當用戶查詢時,檢索程序就根據事先建立的索引進行查找,並將查找的結果反饋給用戶的檢索方式。在中文文檔中根據是否采用分詞技術,索引項可以是字、詞或詞組,由此可分爲基于字的全文索引和基于詞的全文索引。
基于字的全文索引是指對于文章中的每一個字都建立索引,檢索時將詞分解爲字的組合。對于各種不同的語言而言,字有不同的含義,比如英文中字與詞實際上是合一的,而中文中字和詞有很大分別。此方法查全率較高,但查准率較低。有時會出現令人啼笑皆非的檢索結果,如檢索貨幣單位“馬克”時,會把“馬克思”檢索出來。基于詞的全文索引是指對文章中的詞,即語義單位建立索引,檢索時按詞檢索,並且可以處理同義項等。英文等西方文字由于按照空白切分詞,因此實現上與按字處理類似,添加同義處理也很容易。中文文字則需要切分字詞,以達到按詞索引的目的。對中文文檔進行切詞,提高分詞的准確性,抽取關鍵詞作爲索引項,實現按詞索引可以大大提高檢索的准確率。 ;
中文分詞技術 中文分詞與英文分詞有很大的不同,對英文而言,一個單詞就是一個詞,而漢語是以字爲基本的書寫單位,詞語之間沒有明顯的區分標記,需要人爲切分。中文分詞系統是利用計算機對中文文本進行詞語自動識別的系統,對其研究已經取得了很多成果,出現了衆多的算法。根據其特點,可以將現有的分詞算法分爲四大類:基于字符串匹配的分詞方法、基于理解的分詞方法、基于統計的分詞方法和基于語義的分詞方法等。
二、中文分詞方法 中文分詞方法的基本原理是針對輸入文字串進行分詞、過濾處理,輸出中文單詞、英文單詞和數字串等一系列分割好的字符串。中文分詞模塊的輸入輸出如下圖’所示。 詳解中文分詞系列
基于字符串匹配的分詞方法 這種方法又叫作機械分詞方法、基于字典的分詞方法,它是按照一定的策略將待分析的漢字串與一個“充分大的”機器詞典中的詞條進行匹配。若在詞典中找到某個字符串,則匹配成功(識別出一個詞)。該方法有三個要素,即分詞詞典、文本掃描順序和匹配原則。文本的掃描順序有正向掃描、逆向掃描和雙向掃描。匹配原則主要有最大匹配、最小匹配、逐詞匹配和最佳匹配。 最大匹配法(MM)。
基本思想是:假設自動分詞詞典中的最長詞條所含漢字的個數爲i,則取被處理材料當前字符串序列中的前i 個字符作爲匹配字段,查找分詞詞典,若詞典中有這樣一個i 字詞,則匹配成功,匹配字段作爲一個詞被切分出來;若詞典中找不到這樣的一個i 字詞,則匹配失敗,匹配字段去掉最後一個漢字,剩下的字符作爲新的匹配字段,再進行匹配,如此進行下去,直到匹配成功爲止。統計結果表明,該方法的錯誤率爲’/’。 逆向最大匹配法(RMM)。
該方法的分詞過程與MM 法相同,不同的是從句子(或文章)末尾開始處理,每次匹配不成功時去掉的是前面的一個漢字。統計結果表明,該方法的錯誤率爲’/;。 逐詞遍曆法。把詞典中的詞按照由長到短遞減的順序逐字搜索整個待處理的材料,一直到把全部的詞切分出來爲止。不論分詞詞典多大,被處理的材料多麽小,都得把這個分詞詞典匹配一遍。 設立切分標志法。切分標志有自然和非自然之分。自然切分標志是指文章中出現的非文字符號,如標點符號等;非自然標志是利用詞綴和不構成詞的詞(包括單音詞、複音節詞以及象聲詞等)。
設立切分標志法首先收集衆多的切分標志,分詞時先找出切分標志,把句子切分爲一些較短的字段,再用MM、RMM 或其它的方法進行細加工。這種方法並非真正意義上的分詞方法,只是自動分詞的一種前處理方式而已,它要額外消耗時間掃描切分標志,增加存儲空間存放那些非自然切分標志。 最佳匹配法(OM)。
此法分爲正向的最佳匹配法和逆向的最佳匹配法,其出發點是:在詞典中按詞頻的大小順序排列詞條,以求縮短對分詞詞典的檢索時間,達到最佳效果,從而降低分詞的時間複雜度,加快分詞速度。實質上,這種方法也不是一種純粹意義上的分詞方法,它只是一種對分詞詞典的組織方式。OM 法的分詞詞典每條詞的前面必須有指明長度的數據項,所以其空間複雜度有所增加,對提高分詞精度沒有影響,分詞處理的時間複雜度有所降低。
由上面的算法,不難看出基于字符串匹配的分詞方法的優缺點: 優點:簡單,易于實現。 缺點:’)匹配速度慢;;)存在交集型和組合型歧義切分問題;)詞本身沒有一個標准的定義,沒有統一標准的詞集;)不同詞典産生的歧義也不同;)缺乏自學習的智能性。 ;、基于理解的分詞方法 該方法又稱基于人工智能的分詞方法,其基本思想就是在分詞的同時進行句法、語義分析,利用句法信息和語義信息來處理歧義現象。它通常包括三個部分:分詞子系統、句法語義子系統和總控部分。
在總控部分的協調下,分詞子系統可以獲得有關詞、句子等的句法和語義信息來對分詞歧義進行判斷,即它模擬了人對句子的理解過程。這種分詞方法需要使用大量的語言知識和信息。目前基于理解的分詞方法主要有專家系統分詞法和神經網絡分詞法等。由于漢語語言知識的籠統、複雜性,難以將各種語言信息組織成機器可直接讀取的形式,因此目前基于理解的分詞系統還處在試驗階段。 專家系統分詞法。從專家系統角度把分詞的知識(包括常識性分詞知識與消除歧義切分的啓發性知識即歧義切分規則)從實現分詞過程的推理機中獨立出來,使知識庫的維護與推理機的實現互不幹擾,從而使知識庫易于維護和管理。
它還具有發現交集歧義字段和多義組合歧義字段的能力和一定的自學習功能。 神經網絡分詞法。該方法是模擬人腦並行,分布處理和建立數值計算模型工作的。它將分詞知識所分散隱式的方法存入神經網絡內部,通過自學習和訓練修改內部權值,以達到正確的分詞結果,最後給出神經網絡自動分詞結果。 神經網絡專家系統集成式分詞法。
該方法首先啓動神經網絡進行分詞,當神經網絡對新出現的詞不能給出准確切分時,激活專家系統進行分析判斷,依據知識庫進行推理,得出初步分析,並啓動學習機制對神經網絡進行訓練。該方法可以較充分發揮神經網絡與專家系統二者優勢,進一步提高分詞效率。 、基于統計的分詞方法 該方法的主要思想:詞是穩定的組合,因此在上下文中,相鄰的字同時出現的次數越多,就越有可能構成一個詞。因此字與字相鄰出現的概率或頻率能較好反映成詞的可信度。
可以對訓練文本中相鄰出現的各個字的組合的頻度進行統計,計算它們之間的互現信息。互現信息體現了漢字之間結合關系的緊密程度。當緊密程度高于某一個阈值時,便可以認爲此字組可能構成了一個詞。該方法又稱爲無字典分詞。 該方法所應用的主要的統計模型有:N 元文法模型、隱Markov 模型和最大熵模型等。在實際應用中一般是將其與基于詞典的分詞方法結合起來,既發揮匹配分詞切分速度快、效率高的特點,又利用了無詞典分詞結合上下文識別生詞、自動消除歧義的優點。
基于語義的分詞方法 語義分詞法引入了語義分析,對自然語言自身的語言信息進行更多的處理,如擴充轉移網絡法、知識分詞語義分析法、鄰接約束法、綜合匹配法、後綴分詞法、特征詞庫法、矩陣約束法、語法分析法等。 擴充轉移網絡法。該方法以有限狀態機概念爲基礎。有限狀態機只能識別正則語言,對有限狀態機作的第一次擴充使其具有遞歸能力,形成遞歸轉移網絡(RTN)。在RTN 中,弧線上的標志不僅可以是終極符(語言中的單詞)或非終極符(詞類),還可以調用另外的子網絡名字分非終極符(如字或字串的成詞條件)。這樣,計算機在運行某個子網絡時,就可以調用另外的子網絡,還可以遞歸調用。詞法擴充轉移網絡的使用, 使分詞處理和語言理解的句法處理階段交互成爲可能,並且有效地解決了漢語分詞的歧義。 矩陣約束法。其基本思想是:先建立一個語法約束矩陣和一個語義約束矩陣, 其中元素分別表明具有某詞性的詞和具有另一詞性的詞相鄰是否符合語法規則, 屬于某語義類的詞和屬于另一詞義類的詞相鄰是否符合邏輯,機器在切分時以之約束分詞結果。
三、中文分詞算法中的難點 詳解中文分詞系列
1、歧義問題 歧義切分字段處理一個漢語句子是以連續字串的形式書寫的。由于可能存在歧義,分詞並不是一個簡單的從輸入串中發現合法詞的過程。一個句子經常對應幾個合法詞序列,因此,漢語分詞中的一個重要問題就是在所有這些可能的序列中選出一個正確的結果。歧義切分是自動分詞中不可避免的現象,是自動分詞中一個比較棘手的問題。對歧義切分字段的處理能力,嚴重影響到漢語自動分詞系統的精度。實踐表明,只用機械匹配進行分詞,其精度不可能高,雖然有時也能滿足一些標准不高的需要,但不能滿足中文信息處理高標准的要求。2.未登錄詞識別問題 未登錄詞辨別未登錄詞包括中外人名、中國地名、機構組織名、事件名、貨幣名、縮略語、派生詞、各種專業術語以及在不斷發展和約定俗成的一些新詞語。
是種類繁多,形態組合各異,規模宏大的一個領域。對這些詞語的自動辨識,是一件非常困難的事。 四、自動分詞的評價准則 自動分詞系統的最主要的工作是進行分詞。對于分詞而言,不僅要求所研制的軟件在分詞的正確率和速度方面滿足一定的要求,而且要象開發大型傳統軟件那樣,在各個階段不斷地進行評價,其目的主要是檢查它的准確性和實用性,分詞的評價主要有以下幾個方面:1.分詞正確率 書面漢語的文本可以看成是字符序列,分詞的正確率直接影響更高一級的處理。
現有的分詞系統切分錯誤主要集中在歧義字段和專有名詞(如人名、地名、機構名和未登錄詞等)。爲了獲得分詞系統切分正確率,應該進行整體測試,歧義測試和專業詞測試。因此,自動分詞系統的切分正確率的基本公式爲: 詳解中文分詞系列 其中,S’,S;,S。分別爲總體測試、歧義測試和專業詞測試的正確率;Bi(i=’,;,)爲三種測試加的權值。 ;、切分速度 切分速度是指單位時間內所處理的漢字個數。在分詞正確率基本滿足要求的情況下,切分速度是另一個很重要的指標,特別對于算法不單一,使用輔助手段,諸如聯想,基于規則,神經網絡,專家系統等方法更應注意這一點。通常中文信息處理的文本數量是相當大的,因此必須考慮方法是否能使系統總開銷合理。
在人機交互方式下處理歧義問題的策略和人機接口的設計,有時會嚴重地 影響切分速度,這也是應考慮的因素。 、功能完備性 自動分詞方法除了完成分詞功能外,還應具備詞庫增刪、修改、查詢和批處理等功能。 、易擴充性和可維護性 這是提供數據存儲和計算功能擴充要求的軟件屬性,包括詞庫的存儲結構,輸入/輸出形式的變化等方面的擴展和完善。這項指標與系統清晰性、模塊性、簡單性、結構性、完備性以及自描述性等軟件質量准則有直接的聯系,對于研究實驗性質的軟件是非常重要的,因爲這類軟件需要不斷提高與改進,使之適應中文信息處理的各種應用。 、可移植性 可移植性是指方法能從一個計算機系統或環境轉移到另一個系統或環境的容易程度。一個好的分詞方法不應該只能在一個環境下運行,而應該稍作修改便可在另一種環境下運行,使它更便于推廣。