文本的特征属性选择
今天,來學(xué)習(xí)文本的特征屬性選擇,在機器學(xué)習(xí)中,特征屬性的選擇通常關(guān)系到訓(xùn)練結(jié)果的可靠性,一個好的
特征屬性通常能起到滿意的分類效果。凡是特征選擇,總是在將特征的重要程度量化后再進行選擇,而如何量
化特征的重要性,就成了各種方法間最大的不同。接下來就介紹如何有效地進行文本的特征屬性選擇。
?
Contents
?
???1. TF-IDF與特征屬性選擇
?? 2. 信息增益與特征屬性選擇
?? 3. 卡方檢驗與特征屬性選擇
?? 4. 互信息與特征屬性選擇
?
?
文本分類作為一種有效的信息檢索和信息過濾的關(guān)鍵技術(shù),能按預(yù)定義的類別將待分類的文本進行歸類。文本
分類中常用到向量空間模型(VSM),然而高維的向量空間模型嚴重影響了計算機的處理速度,因此需要對文
本的向量進行降維,那么就需要對文本進行特征屬性選擇。
?
目前在文本分類領(lǐng)域中常用的文本特征屬性選擇算法有:TF-IDF,信息增益,卡方檢驗,互信息等。
?
?
1. TF-IDF與特征屬性選擇
?
?? TF即詞頻(Term Frequency),表示詞條在某個文檔d中出現(xiàn)的頻率。
?? IDF即逆向文件頻率(Inverse Document Frequency),如果包含詞條t的文檔越少,那么IDF值
?? 越大,則說明詞條t具有很好的類別區(qū)分能力。
?
???TF-IDF算法的主要思想是:如果某個詞或短語在某一篇文章中的出現(xiàn)頻率TF越高,而且在其它文章中很
?? 少出現(xiàn),那么認為此詞或者短語具有很好的類別區(qū)分能力,適合用來分類。舉個例子
?
???假設(shè)某篇文檔的總詞語數(shù)為100個,而“蜜蜂”出現(xiàn)了5次,那么“蜜蜂”的詞頻就是0.05。如果“蜜蜂”這個
?? 詞在100份文檔中出現(xiàn),而文檔總數(shù)為1000000,那么逆向文件頻率就是log10(1000000/100)=4。最
?? 后TF-IDF的值為0.05 * 4 = 0.2。具體公式如下
?
???
?
???當(dāng)然在統(tǒng)計之前必須要過濾掉文檔中的停用詞。當(dāng)然TF-IDF的精確度有時候可能不太高,它仍有不足之處,
?? 單純地認為文本頻率越小的單詞就越重要,而文本頻率越大的單詞就越無用,顯然這并不完全正確。
?
?? 接下來就可以用上面所學(xué)的TF-IDF來對文本進行特征屬性選擇了。計算出文檔中每個詞的TF-IDF的值,然
?? 后按照降序排列,取前面的幾個詞作為特征屬性。這里由于只取前K大的,有比較優(yōu)秀的算法。
?
?? 在文本分類中單純地用TF-IDF來判斷一個特征屬性是否具有區(qū)分度是不夠的,原因主要有如下兩個
?
??(1)沒有考慮特征詞在類間的分布
?
????? 如果一個特征詞在各個類之間分布都比較均勻,那么這樣的詞對分類沒有任何貢獻;而如果一個特征
????? 詞集中分布在某個類中,在其它類中都出現(xiàn)但是出現(xiàn)的頻率很小很小,那么這個詞能很好地代表這個
????? 類的特征屬性,但是TF-IDF不能很好地區(qū)別這兩種情況。
?
??(2)沒有考慮特征詞在類內(nèi)部文檔中的分布
?
????? 在類內(nèi)部文檔中,如果特征詞均勻分布在其中,那么這個特征詞能夠很好地代表這個類的特征,如果
????? 只在幾篇文檔中出現(xiàn),那么不能夠代表這個類的特征。
?
?
2. 信息增益與特征屬性選擇
?
?? 關(guān)于信息增益的概念,在之前的《決策樹之ID3算法》中已經(jīng)說過。在信息增益中,重要的衡量標準就是
?? 看這個特征能夠為分類系統(tǒng)帶來多少信息,帶來的信息越多,那么該特征就越重要。
?
???通過信息增益選擇的特征屬性只能考察一個特征對整個系統(tǒng)的貢獻,而不能具體到某個類別上,這就使得
???它只能做全局特征選擇,即所有的類使用相同的特征集合。
?
?
3. 卡方檢驗與特征屬性選擇
?
???卡方檢驗是數(shù)理統(tǒng)計中一種常用的檢驗兩個變量是否獨立的方法。在卡方檢驗中使用特征與類別間的關(guān)聯(lián)
???性來進行量化,關(guān)聯(lián)性越強,特征屬性得分就越高,該特征越應(yīng)該被保留。
?
?? 卡方檢驗最基本的思想是觀察實際值和理論值的偏差來確定理論的正確性。通常先假設(shè)兩個變量確實是獨
?? 立的,然后觀察實際值與理論值的偏差程度,如果偏差足夠小,那么就認為這兩個變量確實是獨立的,否
?? 則偏差很大,那么就認為這兩個變量是相關(guān)的。
?
?? 在文本特征屬性選擇階段,一般用“詞t與類別c不相關(guān)”作出假設(shè),計算出的卡方值越大,說明假設(shè)偏離就
?? 越大,假設(shè)越不正確。文本特征屬性選擇過程為:計算每個詞與類別c的卡方值,然后排序取前K大的即可。
?
?? 接下來,就來學(xué)習(xí)如何計算卡方值。
?
???假設(shè)個樣本的觀測值分別為,它們的均值(期望)為,那么卡方值計算如下
?
??????????
?
???如果計算出的值與事先設(shè)定的閥值進行比較,如果小于閥值,則原假設(shè)成立,否則原假設(shè)不成立。
?
?? 在文本特征選擇階段,我們關(guān)心的是一個詞t與一個類別c之間是否獨立,如果獨立,則詞t對類別c完全
?? 沒有表征作用。下面以一個例子來推導(dǎo)文本特征選擇中卡方值得計算公式
?
?? 假設(shè)現(xiàn)在有N篇文檔,其中有M篇是關(guān)于體育的,我們想知道詞“籃球”與類別“體育”的相關(guān)性。接下來設(shè)
?
?????? 包含“籃球”且屬于“體育”類別的文檔數(shù)為A
?????? 包含“籃球”但不屬于“體育”類別的文檔數(shù)為B
?????? 不包含“籃球”但屬于“體育”類別的文檔數(shù)為C
?????? 不包含“籃球”也不屬于“體育”類別的文檔數(shù)為D
?
???即得到如下表格
?
???????
?
???那么,很明顯有A + B + C + D = N,A + C = M。假設(shè)詞“籃球”與“體育”不相關(guān),那么“籃球”這
?? 個詞在所有的文檔中以等概率的形式出現(xiàn),這個概率值接近
?
????????
?
???而屬于“體育”類的文章數(shù)為A + C,在這些文檔中,應(yīng)該有
?
????????
?
???篇文章包含“籃球”這個詞,這是假設(shè)條件下的理論值,而實際值從表格中可以看出是A,那么偏差為
?
????????
?
???同理,可以計算出
?
????????
?
???那么繼續(xù)得到
?
???
?
?
???而對于同一類別文檔中的所有詞來說,N = A + B + C + D,M = A + C,N - M = B + D這
?? 三個值不變,那么只需要計算如下值,然后從大到小取前K大的就行了。
?
?????????
?
???卡方檢驗也有缺陷,因為A和B在統(tǒng)計詞t在文章中出沒出現(xiàn)過,卻不管詞t在文檔中出現(xiàn)了幾次,這
?? 樣的話會對低頻詞有所偏袒,甚至?xí)霈F(xiàn)有些情況,一個詞在一類文章的每篇文檔中都只出現(xiàn)了一次,
?? 其卡方值卻大過了在該類文章99%的文檔中出現(xiàn)了10次的詞,其實后面的詞才是更具代表性的,但只
?? 因為它出現(xiàn)的文檔數(shù)比前面的詞少了“1”,特征選擇的時候就可能篩掉后面的詞而保留了前者。這就
?? 是開方檢驗著名的“低頻詞缺陷“。因此開方檢驗也經(jīng)常同其他因素如詞頻綜合考慮來揚長避短。
?
?
4. 互信息與特征屬性選擇
?
???接下來,開始學(xué)習(xí)互信息與特征選擇,其實互信息相比前面幾種特征屬性選擇方法來說,效果是最差
?? 的。互信息是事件A和事件B發(fā)生相關(guān)聯(lián)而提供的信息量,在處理分類問題提取特征的時候就可以用互
?? 信息來衡量某個特征和特定類別的相關(guān)性,如果信息量越大,那么特征和這個類別的相關(guān)性越大。反
???之也是成立的。計算方法如下
?
???
?
???低詞頻對于互信息的影響還是蠻大的,一個詞如果頻次不夠多,但是又主要出現(xiàn)在某個類別里,那么就
?? 會出現(xiàn)較高的互信息,從而給篩選帶來噪音。所以為了避免出現(xiàn)這種情況可以采用先對詞按照詞頻排序
?? 取然后按照互信息大小進行排序,然后再選擇自己想要的詞,這樣就能比較好的解決這個問題。
??
?
推薦文章:http://blog.csdn.net/chl033/article/details/2731701
搜狗語料庫:http://www.sogou.com/labs/dl/c.html
總結(jié)
- 上一篇: filter,map,reduce,ap
- 下一篇: Kaggle债务违约预测冠军经验分享