天天看點

NLP之文本分類文本表示特征權重計算方法分類器設計文本分類評測名額

文本自動分類簡稱文本分類(text categorization),是模式識别與自然語言處理密切結合的研究課題。傳統的文本分類是基于文本内容的,研究如何将文本自動劃分成政治的、經濟的、軍事的、體育的、娛樂的等各種類型。

目錄

文本表示

文本向量化

向量的相似性度量(similarity)

文本特征選擇方法

特征權重計算方法

分類器設計

文本分類評測名額

文本分類是在預定義的分類體系下,根據文本的特征(内容或屬性),将給定文本與一個或多個類别相關聯的過程。是以,文本分類研究涉及文本内容了解和模式分類等若幹自然語言了解和模式識别問題。

文本分類任務的最終目的是要找到一個有效的映射函數,準确地實作域D×C到值T或F的映射,這個映射函數實際上就是我們通常所說的分類器。是以,文本分類中有兩個關鍵問題:一個是文本的表示,另一個就是分類器設計。

NLP之文本分類文本表示特征權重計算方法分類器設計文本分類評測名額

根據分類知識擷取方法的不同,文本自動分類系統大緻可分為兩種類型:基于知識工程(knowledge engineering, KE)的分類系統和基于機器學習(machine learning, ML)的分類系統。90年代以後,基于統計機器學習的文本分類方法日益受到重視,這種方法在準确率和穩定性方面具有明顯的優勢。系統使用訓練樣本進行特征選擇和分類器參數訓練,根據選擇的特征對待分類的輸入樣本進行形式化,然後輸入到分類器進行類别判定,最終得到輸入樣本的類别。

文本表示

文本向量化

一個文本表現為一個由文字和标點符号組成的字元串,由字或字元組成詞,由詞組成短語,進而形成句、段、節、章、篇的結構。要使計算機能夠高效地處理真實文本,就必須找到一種理想的形式化表示方法,這種表示一方面要能夠真實地反映文檔的内容(主題、領域或結構等),另一方面,要有對不同文檔的區分能力。

目前文本表示通常采用向量空間模型(vecto rspace model,VSM)。

下面首先給出VSM涉及的一些基本概念。

文檔(document):通常是文章中具有一定規模的片段,如句子、句群、段落、段落組直至整篇文章。

項/特征項(term/feature term):特征項是VSM中最小的不可分的語言單元,可以是字、詞、詞組或短語等。一個文檔的内容被看成是它含有的特征項所組成的集合。

項的權重(term weight):對于含有n個特征項的文檔,每一特征項tk都依據一定的原則被賦予一個權重wk,表示它們在文檔中的重要程度。

這樣一個文檔D可用它含有的特征項及其特征項所對應的權重所表示。

一個文檔在上述約定下可以看成是n維空間中的一個向量,這就是向量空間模型的由來。

是以采用向量空間模型進行文本表示時,需要經過以下兩個主要步驟:

①根據訓練樣本集生成文本表示所需要的特征項序列D={t1,t2,…,td};

②依據文本特征項序列,對訓練文本集和測試樣本集中的各個文檔進行權重指派、規範化等處理,将其轉化為機器學習算法所需的特征向量。

向量的相似性度量(similarity)

任意兩個文檔D1和D2之間的相似系數Sim(D1,D2)指兩個文檔内容的相關程度(degree of relevance)。設文檔D1和D2表示VSM中的兩個向量:

D1=D1(w11,w12,…,w1n)

D2=D2(w21,w22,…,w2n)

那麼,可以借助于n維空間中兩個向量之間的某種距離來表示文檔間的相似系數,常用的方法是使用向量之間的内積來計算。

NLP之文本分類文本表示特征權重計算方法分類器設計文本分類評測名額

如果考慮向量的歸一化,則可使用兩個向量夾角的餘弦值來表示相似系數:

NLP之文本分類文本表示特征權重計算方法分類器設計文本分類評測名額

文本特征選擇方法

在向量空間模型中,表示文本的特征項可以選擇字、詞、短語,甚至“概念”等多種元素。但是,如何選取特征,各種特征應該賦予多大的權重,選取不同的特征對文本分類系統的性能有什麼影響等,很多問題都值得深入研究。目前已有的特征選取方法比較多,常用的方法有:基于文檔頻率(document frequency, DF)的特征提取法、資訊增益(information gain, IG)法、χ2統計量(CHI)法和互資訊(mutual information, MI)方法等。

1.基于文檔頻率的特征提取法

文檔頻率(DF)是指出現某個特征項的文檔的頻率。基于文檔頻率的特征提取法通常的做法是:從訓練語料中統計出包含某個特征的文檔的頻率(個數),然後根據設定的門檻值,當該特征項的DF值小于某個門檻值時,從特征空間中去掉該特征項,因為該特征項使文檔出現的頻率太低,沒有代表性;當該特征項的DF值大于另外一個門檻值時,從特征空間中也去掉該特征項,因為該特征項使文檔出現的頻率太高,沒有區分度。

基于文檔頻率的特征選擇方法可以降低向量計算的複雜度,并可能提高分類的準确率,因為按這種選擇方法可以去掉一部分噪聲特征。這種方法簡單、易行。但嚴格地講,這種方法隻是一種借用算法,其理論根據不足。根據資訊論我們知道,某些特征雖然出現頻率低,但往往包含較多的資訊,對于分類的重要性很大。對于這類特征就不應該使用DF方法将其直接排除在向量特征之外。

2.資訊增益法

資訊增益(IG)法依據某特征項ti為整個分類所能提供的資訊量多少來衡量該特征項的重要程度,進而決定對該特征項的取舍。某個特征項ti的資訊增益是指有該特征或沒有該特征時,為整個分類所能提供的資訊量的差别,其中,資訊量的多少由熵來衡量。是以,資訊增益即不考慮任何特征時文檔的熵和考慮該特征後文檔的熵的內插補點

NLP之文本分類文本表示特征權重計算方法分類器設計文本分類評測名額

從資訊增益的定義可知,一個特征的資訊增益實際上描述的是它包含的能夠幫助預測類别屬性的資訊量。從理論上講,資訊增益應該是最好的特征選取方法,但實際上由于許多資訊增益比較高的特征出現頻率往往較低,是以,當使用資訊增益選擇的特征數目比較少時,往往會存在資料稀疏問題,此時分類效果也比較差。是以,有些系統實作時,首先對訓練語料中出現的每個詞(以詞為特征)計算其資訊增益,然後指定一個門檻值,從特征空間中移除那些資訊增益低于此門檻值的詞條,或者指定要選擇的特征個數,按照增益值從高到低的順序選擇特征組成特征向量。

3.χ2統計量

 χ2統計量(CHI)衡量的是特征項ti和類别Cj之間的相關聯程度,并假設ti和Cj之間符合具有一階自由度的χ2分布。特征對

于某類的χ2統計值越高,它與該類之間的相關性越大,攜帶的類别資訊也較多,反之則越少。

4.互資訊法

互資訊(MI)法的基本思想是:互資訊越大,特征ti和類别Cj共現的程度越大。

NLP之文本分類文本表示特征權重計算方法分類器設計文本分類評測名額

以上是文本分類中比較經典的一些特征選取方法,實際上還有很多其他文本特征選取方法,例如,DTP(distance to transition point)方法,期望交叉熵法、文本證據權法、優勢率方法,以及國内學者提出的“類别區分詞”的特征提取方法,組合特征提取方法,基于粗糙集(rough set)的特征提取方法TFACQ,以及利用自然語言文本所隐含規律等多種資訊的強類資訊詞(strong information class word, SCIW)的特征選取方法等等。

另外需要指出的是,無論選擇什麼作為特征項,特征空間的維數都是非常高的,在漢國文本分類中問題表現得更為突出。這樣的高維特征向量對後面的分類器存在不利的影響,很容易出現模式識别中的“維數災難”現象。而且,并不是所有的特征項對分類都是有利的,很多提取出來的特征可能是噪聲。是以,如何降低特征向量的維數,并盡量減少噪聲,仍然是文本特征提取中的兩個關鍵問題。

特征權重計算方法

特征權重用于衡量某個特征項在文檔表示中的重要程度或者區分能力的強弱。權重計算的一般方法是利用文本的統計資訊,主要是詞頻,給特征項賦予一定的權重。

我們将一些常用的權重計算方法歸納為表13-2所示的形式。表中各變量的說明如下:wij表示特征項ti在文本Dj中的權重,tfij表示特征項ti在訓練文本Dj中出現的頻度;ni是訓練集中出現特征項ti的文檔數,N是訓練集中總的文檔數;M為特征項的個數,nti為特征項ti在訓練語料中出現的次數。

NLP之文本分類文本表示特征權重計算方法分類器設計文本分類評測名額
NLP之文本分類文本表示特征權重計算方法分類器設計文本分類評測名額

倒排文檔頻度(inverse document frequency, IDF)法是1972年Spark Jones提出的計算詞與文獻相關權重的經典計算方法,其在資訊檢索中占有重要地位。該方法在實際使用中,常用公式L+log ((N-ni)/ni)替代,其中,常數L為經驗值,一般取為1。IDF方法的權重值随着包含 某個特征的文檔數量ni的變化呈反向變化,在極端情況下,隻在一篇文檔中出現的特征含有最高的IDF值。TF-IDF方法中公式有多種表達形式,TFC方法和ITC方法都是TF-IDF方法的變種。

TF-IWF(inverse word frequency)權重算法也是在TF-IDF算法的基礎上由Basili et al.(1999)提出來的。TF-IWF與TF-IDF的不同主要展現在兩個方面:①TF-IWF算法中用特征頻率倒數的對數值IWF代替IDF; ②TF-IWF算法中采用了IWF的平方,而不像IDF中采用的是一次方。R.Basili等認為IDF的一次方給了特征頻率太多的倚重,是以用IWF的平方來平衡權重值對于特征頻率的倚重。

除了上面介紹的這些比較常用的方法以外,還有很多其他權重計算方法。例如:Dagan et al.(1997)提出的基于錯誤驅動的(mistake-driven)特征權重算法,這種算法的類權重向量不是通過一個表達式直接計算出來的,而是首先為每個類指定一個初始權重向量,不斷輸入訓練文本,并根據對訓練文本的分類結果調整類權重向量的值,直到類權重向量的值大緻不再改變為止。

方法。例如:Dagan et al.(1997)提出的基于錯誤驅動的(mistake-driven)特征權重算法,這種算法的類權重向量不是通過一個表達式直接計算出來的,而是首先為每個類指定一個初始權重向量,不斷輸入訓練文本,并根據對訓練文本的分類結果調整類權重向量的值,直到類權重向量的值大緻不再改變為止。

分類器設計

文本分類本身是一個分類問題,是以,一般的模式分類方法都可用于文本分類研究。常用的分類算法包括:樸素的貝葉斯分類法

(naΪve Bayesian classifier)、基于支援向量機(support vector machines, SVM)的分類器、k-最近鄰法(k-nearest neighbor, kNN)、神經網絡法(neural network, NNet)、決策樹(decision tree)分類法、模糊分類法(fuzzy classifier)、Rocchio分類方法和Boosting算法等。

1.樸素貝葉斯分類器

樸素貝葉斯分類器的基本思想是利用特征項和類别的聯合機率來估計給定文檔的類别機率。

假設文本是基于詞的一進制模型,即文本中目前詞的出現依賴于文本類别,但不依賴于其他詞及文本的長度,也就是說,詞與詞之間是獨立的。根據貝葉斯公式,文檔Doc屬于Ci類的機率為 

NLP之文本分類文本表示特征權重計算方法分類器設計文本分類評測名額

在具體實作時,通常又分為兩種情況:

(1)文檔Doc采用DF向量表示法,即文檔向量V的分量為一個布爾值,0表示相應的特征在該文檔中未出現,1表示特征在文檔中出現。

(2)若文檔Doc采用TF向量表示法,即文檔向量V的分量為相應特征在該文檔中出現的頻度。

2.基于支援向量機的分類器

基于支援向量機(support vector machine, SVM)的分類方法主要用于解決二進制模式分類問題。

SVM的基本思想是在向量空間中找到一個決策平面(decision surface),這個平面能“最好”地分割兩個分類中的資料點。支援向量機分類法就是要在訓練集中找到具有最大類間界限(margin)的決策平面。

由于支援向量機算法是基于兩類模式識别問題的,因而,對于多類模式識别問題通常需要建立多個兩類分類器。與線性判别函數一樣,它的結果強烈地依賴于已知模式樣本集的構造,當樣本容量不大時,這種依賴性尤其明顯。此外,将分界面定在最大類間隔的中間,對于許多情況來說也不是最優的。對于線性不可分問題也可以采用類似于廣義線性判别函數的方法,通過事先選擇好的非線性映射将輸入模式向量映射到一個高維空間,然後在這個高維空間中構造最優分界超平面。

根據Yang and Liu (1999)的實驗結果,SVM的分類效果要好于NNet、貝葉斯分類器、Rocchio和LLSF(linear least-square fit)分類器的效果,與kNN方法的效果相當。

3.k-最近鄰法

kNN方法的基本思想是:給定一個測試文檔,系統在訓練集中查找離它最近的k個鄰近文檔,并根據這些鄰近文檔的分類來給該文檔的候選類别評分。把鄰近文檔和測試文檔的相似度作為鄰近文檔所在類别的權重,如果這k個鄰近文檔中的部分文檔屬于同一個類别,則将該類别中每個鄰近文檔的權重求和,并作為該類别和測試文檔的相似度。然後,通過對候選分類評分的排序,給出一個門檻值。

4.基于神經網絡的分類器

神經網絡(NNet)是人工智能中比較成熟的技術之一,基于該技術的分類器的基本思想是:給每一類文檔建立一個神經網絡,輸入通常是單詞或者是更為複雜的特征向量,通過機器學習獲得從輸入到分類的非線性映射。

根據Yang and Liu (1999)的實驗結果,NNet分類器的效果要比kNN分類器和SVM分類器的效果差,而且訓練NNet的時間開銷遠遠超過其他分類方法,是以,實際應用并不廣泛。

5.線性最小平方拟合法

線性最小平方拟合(linear least-squares fit, LLSF)是一種映射方法其出發點是從訓練集和分類文檔中學習得到多元回歸模型

(multivariate regression model)。其中訓練資料用輸入/輸出向量表示,輸入向量是用傳統向量空間模型表示的文檔

(詞和對應的權重),輸出向量則是文檔對應的分類(帶有0-1權重)。通過在向量的訓練對上求解線性最小平方拟合,得到一個“單詞-分類”的回歸系數矩陣。

根據Yang and Liu (1999)的實驗結果,LLSF算法的分類效果稍遜于kNN和SVM算法的效果。

6.決策樹分類器

決策樹分類器也是模式識别研究的基本方法之一,其出發點是:大量複雜系統的組成普遍存在着等級分層現象,或者說複雜任務是可以通過等級分層分解完成的,文本處理過程也不例外。

決策樹是一棵樹,樹的根結點是整個資料集合空間,每個分結點是對一個單一變量的測試,該測試将資料集合空間分割成兩個或更多個類别,即決策樹可以是二叉樹也可以是多叉樹。每個葉結點是屬于單一類别的記錄。構造決策樹分類器時,首先要通過訓練生成決策樹,然後再通過測試集對決策樹進行修剪。一般可通過遞歸分割的過程建構決策樹,其生成過程通常是自上而下的,選擇分割的方法有多種,但是目标都是一緻的,就是對目标文檔進行最佳分割。從根結點到葉結點都有一條路徑,這條路徑就是一條決策“規則”。

在決定哪個屬性域(field)作為目前最佳的分類屬性時,一般的做法是窮盡所有的屬性域,對每個屬性域分裂的好壞進行量化,進而計算出最佳分裂。資訊增益是決策樹訓練中常用的衡量給定屬性區分訓練樣本能力的定量标準。

7.模糊分類器

按照模糊分類方法的觀點,任何一個文本或文本類都可以通過其特征關鍵詞來描述其内容特征,是以,可以用一個定義在特征關鍵詞類上的模糊集來描述它們。

判定分類文本T所屬的類别可以通過計算文本T的模糊集FT分别與其他每個文本類的模糊集Fk的關聯度SR實作,兩個類的關聯度越大說明這兩個類越貼近。

8.Rocchio分類器

Rocchio分類器是情報檢索領域經典的算法,其基本思想是,首先為每一個訓練文本C建立一個特征向量,然後使用訓練文本的特征向量為每個類建立一個原型向量(類向量)。當給定一個待分類文本時,計算待分類文本與各個類别的原型向量(類向量)之間的距離,其距離可以是向量點積、向量之間夾角的餘弦值或者其他相似度計算函數,根據計算出來的距離值決定待分類文本屬于哪一類别。

Rocchio分類方法的特點是計算簡單、易行,其分類效果僅次于kNN方法和SVM方法。

9.基于投票的分類方法

基于投票的分類方法是在研究多分類器組合時提出的,其核心思想是:k個專家判斷的有效組合應該優于某個專家個人的判斷結果。

投票算法主要有兩種:Bagging算法和Boosting算法。

Bagging算法

訓練R個分類器fi(i=1,2,…,R),其中,fi是利用從訓練集(N篇文檔)中随機抽取(取出後再放回)N次文檔構成的訓練集訓練得到的。對于新文檔D,用這R個分類器分别對D劃分類别,得到的最多的那個類别作為D的最終判别類别。

Boosting算法

與Bagging算法類似,該算法需要訓練多個分類器,但訓練每個分量分類器的訓練樣本不再是随機抽取,每個分類器的訓練集由其他各個分類器所給出的“最富資訊”的樣本點組成。基于Boosting方法有許多不同的變形,其中最流行的一種就是AdaBoost方法,該方法在文本分類領域中有着非常廣泛的應用。

文本分類評測名額

針對不同的目的,人們提出了多種文本分類器性能評價方法,包括召回率、正确率、F-測度值、微平均和宏平均、平衡點(break-even point)、11點平均正确率(11-point average precision)等。

NLP之文本分類文本表示特征權重計算方法分類器設計文本分類評測名額

一般地講,正确率和召回率是一對互相沖突的實體量,提高正确率往往要犧牲一定的召回率,反之亦然。在很多情況下,單獨考慮正确率或者召回率來對分類器進行評價都是不全面的。是以,1999提出了通過調整分類器的門檻值,調整正确率和召回率的值,使其達到一個平衡點的評測方法。

Taghva et al.(2004)為了更加全面地評價一個分類器在不同召回率情況下的分類效果,調整門檻值使得分類器的召回率分别為:0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1,然後計算出對應的11個正确率,取其平均值,這個平均值即為11點平均正确率,用這個平均正确率衡量分類器的性能。

繼續閱讀