日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

文本分類簡介

 qqcat5 2019-07-15

 一.概述

 

文本分類在文本處理中是很重要的一個模塊,它的應(yīng)用也非常廣泛,比如:垃圾過濾,新聞分類,詞性標注等等。它和其他的分類沒有本質(zhì)的區(qū)別,核心方法為首先提取分類數(shù)據(jù)的特征,然后選擇最優(yōu)的匹配,從而分類。但是文本也有自己的特點,根據(jù)文本的特點,文本分類的流程為:1.預(yù)處理;2.文本表示及特征選擇;3.構(gòu)造分類器;4.分類。下面分別介紹每個模塊。

1. 預(yù)處理

大家知道,中文書寫時,不像英文,中間用空格隔開,而是字和字連著的,這樣的話,第一步就要進行分詞,把文本分成詞(或字),而且分詞的好壞對后續(xù)操作影響較大(分詞方法有詞典法,統(tǒng)計方法等,見我的概率統(tǒng)計模型在搜索引擎中的應(yīng)用)。緊接著第二步就是要去掉常用且意義不大的詞(稱之為去停用詞),比如:的、是、了等等。這樣,我們的預(yù)處理階段就完成了。

2. 文本表示及特征選擇

目前常用的文本表示是向量空間模型,即把文本分詞后的每個詞看成一個向量中的一個元素。但是,用什么表示這個元素呢?最先想到的就是詞出現(xiàn)的頻率,比如:“走進/搜索引擎,學(xué)習(xí)/搜索引擎”,我們就可以表示成(0,…,2,…,0,1,…,0,1,0…)。為什么向量里面那么多…呢,那是因為我們必須把所有的向量都要統(tǒng)一起來,意思就是說,哪個詞在向量的哪個位置上,都必須是確定的。要想確定,那就必須把所有的漢字都按字典序排出來,然后各個詞對號入座。假設(shè)漢字有10000個,那么我要分類“走進搜索引擎,學(xué)習(xí)搜索引擎”這個短文本,我至少要給它生成一個10000維的向量,而且這10000維的向量只用到3個位置。但是用頻率會出現(xiàn)不公平的現(xiàn)象,比如,“我們”這個詞,它出現(xiàn)的頻率就比較高,那它的向量就比較大,所以,詞頻幾乎不用做特征,常用的特征有TF/IDF,互信息量,信息增益,χ2統(tǒng)計量等方法。剛才提到我們的向量維數(shù)很大,就算去掉停用詞也是很大的,既然,維數(shù)太大,我們的處理方法一般有兩種:特征選擇和特征提取,特征選擇就是選擇一部分具有代表性的特征來表示文本,比如,用TF/IDF時,去掉很大的和一些很小的值,剩下的作為特征。特征提取是從現(xiàn)在的特征重構(gòu)出來一個新的特征,當(dāng)然,這個新的特征維數(shù)要小于原特征維數(shù),就是降維,最常用的方法就是潛在語義分析,用的是奇異值分解(SVD),我們知道在信號處理中一種常用的處理方法,就是把空間域的信號映射到頻率域(比如FFT,wavelet),到了頻率域,信號能量更集中,便于處理。它的思想和信號處理其實一樣。

3. 構(gòu)造分類器

接下來的工作就是要構(gòu)造分類規(guī)則,也就是分類器,主要就是對許多數(shù)據(jù)進行訓(xùn)練,產(chǎn)生一套模型。常用的方法有kNN,樸素貝葉斯,支持向量機,神經(jīng)網(wǎng)絡(luò),決策樹,Rocchio,線性最小平方擬合等等。

4. 分類

分類器模型產(chǎn)生后,我們只要來一個文本,往分類器一仍,它就會產(chǎn)生該文本的類別。

 

二.特征選擇

 

上面對文本分類進行了概要性的介紹,下面深入文本分類中的每個模塊,從特征選擇開始,常用的特征計算有TF/IDF,互信息量,信息增益,χ2統(tǒng)計量等方法。

1、 TF/IDF

TF/IDF的思想就是越是出現(xiàn)次數(shù)多(詞頻高)且罕見的詞匯(文檔頻率低)貢獻越大。

具體請看Google黑板報上吳軍寫的通俗易懂的介紹TF/IDF的文章吧,如果還看不懂的話,那就沒轍了。

2、 信息增益

信息增益的思想就是看特征能夠為分類系統(tǒng)帶來多少信息量,帶來的信息量越多,該特征越重要。信息量的多少由熵來衡量,一個變量X,取值有n中,每種的概率為Pi,則X的熵為:H(X) = -∑Pi·log2 Pi。

對分類系統(tǒng)來說,類別C是變量,它可能的取值是C1,C2,……,Cn,而每一個類別出現(xiàn)的概率是P(C1),P(C2),……,P(Cn), n就是類別的總數(shù)。此時分類系統(tǒng)的熵為:H(C) = -∑P(Cj)·log2 P(Cj)。信息增益是針對一個一個的特征而言的,就是看一個特征ti,系統(tǒng)考慮它和不考慮它的時候信息量各是多少,兩者的差值就是這個特征給系統(tǒng)帶來的信息量。顯然,不考慮任何特征的信息量就是H(C),而考慮某特征又分兩種情況:該特征出現(xiàn)和該特征沒有出現(xiàn)。

該特征ti出現(xiàn)的信息量為:P(ti)H(C|ti)

該特征ti不出現(xiàn)的信息量為:P(ti’)H(C|ti’)

因此,考慮該特征ti的信息量為:

H(C|ti)= P(ti)H(C|ti)+ P(ti’)H(C|ti’)

             = -P(ti) ∑P(Cj|ti)·log2 P(Cj|ti) - P(ti’) ∑P(Cj|ti)·log2 P(Cj|ti’)

其中,∑是j從1…n。

最后,特征ti的信息增益:

IG=H(C)-H(C|ti)

=-∑P(Cj)·log2 P(Cj) –{P(ti) ∑P(Cj|ti)·log2 P(Cj|ti) + P(ti’) ∑P(Cj|ti)·log2 P(Cj|ti’)}

有了以上公式,其他的就比較好計算了,P(Ci),表示類別Ci在語料庫中出現(xiàn)的概率,其實只要用1除以類別總數(shù)n就得到了(前提是每個類別平等);P(ti),就是特征ti在語料庫中出現(xiàn)的概率,只要用出現(xiàn)過ti的文檔數(shù)除以總文檔數(shù)就可以了,再比如P(Ci|ti)表示出現(xiàn)ti的時候,類別Ci出現(xiàn)的概率,只要用出現(xiàn)了ti并且屬于類別Ci的文檔數(shù)除以出現(xiàn)了ti的文檔數(shù)就可以了;P(ti’) 表示語料中不包含特征項ti的文檔的概率;P(Cj|ti’)表示文檔不包含特征項ti時屬于Ci的條件概率。

 

3、χ2統(tǒng)計量

χ2統(tǒng)計量衡量的是特征值ti和類別Cj之間的相關(guān)聯(lián)程度,并假設(shè)ti和Cj之間符合具有一階自由度的χ2分布。特征對于某類的χ2統(tǒng)計值越高,它與該類之間的相關(guān)性越大,攜帶的類別信息也就較多。

現(xiàn)假設(shè)N為訓(xùn)練語料文檔總數(shù),A表示包含特征ti且屬于Cj類的文檔數(shù);B表示包含特征ti且不屬于Cj類的文檔數(shù);C表示不包含特征ti且屬于Cj類的文檔數(shù);D表示既不包含特征ti且不屬于Cj類的文檔數(shù)。那么,可以計算一下,理論上包含特征ti且屬于Cj類的文檔數(shù)是多少:EA=(A+C)(A+B)/N,(A+C為屬于Cj類的文檔數(shù),(A+B)/N為特征ti的出現(xiàn)概率),則其開方檢驗DA=(A-EA)2/EA。同理,可以算出其他三種情況的開方檢驗,則

χ2(ti,Cj) = DA+DB+DC+DD= { N×(A×D-C×B) } / { (A+C)×(B+D)×(A+B)×(C+D) }

  

4、互信息量

互信息(MI)的思想是:互信息量越大,特征值ti和類別Cj之間的共現(xiàn)的程度越大。

I(ti, Cj) = log{P(ti, Cj) / P(ti)P(Cj)}

        =log{P(ti|Cj) / P(ti)}

        ≈log{(A×N) / (A+C)×(A+B)}

其中,符號表示同上。

  

最常用的選擇特征的方法就是:對每個詞根據(jù)以上四種方法之一計算一個值,并且從大到小排序,然后設(shè)定一個閾值,取出所有大于閾值的詞作為特征值組成特征向量。

 

三.分類器

 

下面來說說文本分類中的分類器,常用的方法有kNN,樸素貝葉斯,支撐向量機,神經(jīng)網(wǎng)絡(luò),決策樹,Rocchio,線性最小平方擬合等等,在這里只介紹性能比較好的四個分類器:kNN,樸素貝葉斯,Rocchio,支撐向量機(SVM)。


 

1.k-近鄰算法(kNN)

   kNN算法的基本思想是:給定一個測試文檔,系統(tǒng)在訓(xùn)練集中查找離它最近(最相似)的k個文檔,然后根據(jù)這k個文檔的類別來判定測試文檔的類別。具體步驟如下:

(1)對訓(xùn)練文檔和測試文檔進行特征選擇,將它們表示成文本向量。

(2)在訓(xùn)練集中選出與測試文檔最相似的k個文本,公式如下(cos):

        Sim(T, D)= ∑i=1..N(Ti×Di) / {(∑i=1..N Ti2)×( ∑i=1..N Di2)}1/2

其中T為測試文檔,D為訓(xùn)練文檔。

(3)在計算得到的k個最近鄰文檔中,依次計算每類的權(quán)重,公式如下:

             p(T, Cj) = ∑dikNNSim(T, d i) y(d i,Cj)

其中T為測試文檔,d i為選出的k個訓(xùn)練文檔中的第i個,y(d i,Cj)為隸屬函數(shù),如果文檔d i,屬于Cj類,則其值為1,反之為0。

(4)比較類的權(quán)重,將文本分到權(quán)重最大的那一類。

2.樸素貝葉斯

樸素貝葉斯分類器的基本思想是利用特征項和類別的聯(lián)合概率來估計給定文檔的類別概率。而且假設(shè)文本是基于詞的一元模型,也就是說,詞與詞之間是獨立的。根據(jù)貝葉斯公式,文檔D屬于Cj類的概率為:

P(Cj|D) = P(D|Cj)×P(Cj) / P(D)

又,P(D|Cj)= P(D(t1)|Cj)×…×P(D(tn)|Cj),P(D)是個常數(shù),P(Cj)=N(Cj)/N,P(D(ti)|Cj)=(N(ti, Cj)+1) / (N(Cj)+M),其中N(Cj)表示訓(xùn)練文本中屬于Cj類的文本數(shù)量,N為訓(xùn)練文本集總數(shù)量,N(ti, Cj)表示類別Cj中包含特征ti的訓(xùn)練文本數(shù)量,M表示訓(xùn)練文本集中特征項的總個數(shù)。

只要計算出所有類別的P(Cj|D),然后哪個大,該文檔就屬于哪一類了。

3.Rocchio分類器

Rocchio分類器的基本思想是,首先為每一個訓(xùn)練文本D建立一個特征向量,然后使用訓(xùn)練文本的特征向量為每個類建立一個原型向量。當(dāng)給定一個待分類文本時,計算待分類文本與各個類別的原型向量之間的距離,其距離可以是向量點積、向量之間夾角的余弦值或其他函數(shù),根據(jù)計算出來的距離值來決定待分類文本屬于哪一類別。這個原型向量的計算方法有幾種,其中最簡單的就是把該類的所有文本的特征向量求平均值。該分類器的效果僅次于kNN和SVM方法。

4.支撐向量機(SVM)

    SVM的分類方法的基本思想是在向量空間中找到一個決策平面,這個平面能最好地分割兩個分類中的數(shù)據(jù)點。

 

 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多