【編者按】:隨著互聯(lián)網技術的迅速發(fā)展與普及,如何對浩如煙海的數據進行分類、組織和管理,已經成為一個具有重要用途的研究課題。而在這些數據中,文本數據又是數量最大的一類。以統(tǒng)計理論為基礎,利用機器學習算法對已知的訓練數據做統(tǒng)計分析從而獲得規(guī)律,再運用規(guī)律對未知數據做預測分析,已成為文本分類領域的主流。InfoQ聯(lián)合“達觀數據“共同策劃了《文本大數據的機器學習自動分類方法》系列文章,為您詳細闡述機器學習文本分類的基本方法與處理流程。
本文為第二部分,著重介紹特征向量權重的影響因素以及樣本訓練和分類評估方法。
隨著互聯(lián)網技術的迅速發(fā)展與普及,如何對浩如煙海的數據進行分類、組織和管理,已經成為一個具有重要用途的研究課題。而在這些數據中,文本數據又是數量最大的一類。首先來回顧一下上一篇所提到的文本分類的流程,如圖1所示,包括訓練、特征抽取、訓練模型、分類預測等幾個主要環(huán)節(jié)。
圖 1 文本分類流程圖
(一):特征向量權重的影響因素
特征權重用于衡量某個特征項在文檔表示中的重要程度或區(qū)分能力的強弱。選擇合適的權重計算方法,對文本分類系統(tǒng)的分類效果能有較大的提升作用。影響特征詞權值的因素包括以下幾點:
1. 詞頻和文檔頻度
詞頻和文檔頻度,是特征項最重要的影響因素。文本內中的中頻詞往往具有代表性,高頻詞區(qū)分能力較小,而低頻詞或者示出現(xiàn)詞也常??梢宰鰹殛P鍵特征詞。而對于文檔頻度這一角度,出現(xiàn)文檔多的特征詞,分類區(qū)分能力較差,出現(xiàn)文檔少的特征詞更能代表文本的不同主題。結合詞頻和文檔頻度來評估特征的重要性有較強的區(qū)分能力,它們在不同方法中有不同的應用公式,這些方法包括:絕對詞頻(TF)、倒排文檔頻度(IDF)、TF-IDF、TFC、ITC、TF-IWF,如下:
2. 詞性
漢語言中,能標識文本特性的往往是文本中的實詞,如名詞、動詞、形容詞等。而文本中的一些虛詞,如感嘆詞、介詞、連詞等,對于標識文本的類別特性并沒有貢獻,也就是對確定文本類別沒有意義的詞。如果把這些對文本分類沒有意思的虛詞作為文本特征詞,將會帶來很大噪音,從而直接降低文本分類的效率和準確率。因此,在提取文本特征時,應首先考慮剔除這些對文本分類沒有用處的虛詞,而在實詞中,又以名詞和動詞對于文本的類別特性的表現(xiàn)力最強,所以可以只提取文本中的名詞和動詞作為文本的一級特征詞。
3. 標題
標題是作者給出的提示文章內容的短語,特別在新聞領域,新聞報道的標題一般都要求要簡練、醒目,有不少縮略語,與報道的主要內容有著重要的聯(lián)系,對摘要內容的影響不可忽視。統(tǒng)計分析表明,小標題的識別有助于準確地把握文章的主題。主要體現(xiàn)在兩個方面:正確識別小標題可以很好地把握文章的整體框架,理清文章的結構層次;同時,小標題本身是文章中心內容的高度概括。因此,小標題的正確識別能在一定程度上提高文摘的質量。
4. 位置
美國的EE.Baxendale的調查結果顯示:段落的論題是段落首句的概率為85%,是段落末句的概率為7%。而且新聞報道性文章的形式特征決定了第一段一般是揭示文章主要內容的。因此,有必要提高處于特殊位置的句子權重,特別是報道的首旬和末句。但是這種現(xiàn)象又不是絕對的,所以,我們不能認為首句和末句就一定是所要摘要的內容,因此可以考慮一個折衷的辦法,即首句和末句的權重上可通過統(tǒng)計數字擴大一個常數倍。首段、末段、段首、段尾、標題和副標題、子標題等處的句子往往在較大程度上概述了文章的內容。對于出現(xiàn)在這些位置的句子應該加大權重。Internet上的文本信息大多是HTML結構的,對于處于Web文本結構中不同位置的單詞,其相應的表示文本內容或區(qū)別文本類別的能力是不同的,所以在單詞權值中應該體現(xiàn)出該詞的位置信息。
5. 句法結構
句式與句子的重要性之間存在著某種聯(lián)系,比如摘要中的句子大多是陳述句,而疑問句、感嘆句等則不具內容代表性。而通?!翱傊薄ⅰ熬C上所述”等一些概括性語義后的句子,包含了文本的中心內容。
6. 專業(yè)詞庫
通用詞庫包含了大量不會成為特征項的常用詞匯,為了提高系統(tǒng)運行效率,系統(tǒng)根據挖掘目標建立專業(yè)的分詞表,這樣可以在保證特征提取準確性的前提下,顯著提高系統(tǒng)的運行效率。用戶并不在乎具體的哪一個詞出現(xiàn)得多,而在乎泛化的哪一類詞出現(xiàn)得多。真正起決定作用的是某一類詞出現(xiàn)的總頻率。基于這一原理,我們可以先將詞通過一些方法依主題領域劃分為多個類,然后為文本提取各個詞類的詞頻特征,以完成對文本的分類??梢酝ㄟ^人工確定領域內的關鍵詞集。
7. 信息熵
熵(Entropy)在信息論中是一個非常重要的概念,它是不確定性的一種度量。信息熵方法的基本目的是找出某種符號系統(tǒng)的信息量和多余度之間的關系,以便能用最小的成本和消耗來實現(xiàn)最高效率的數據儲存、管理和傳遞。我們將可以將信息論中的熵原理引入到特征詞權重的計算中。
8. 文檔、詞語長度
一般情況下,詞的長度越短,其語義越泛。一般來說,中文中詞長較長的詞往往反映比較具體、下位的概念,而短的詞常常表示相對抽象、上位的概念一般說來,短詞具有較高的頻率和更多的含義,是面向功能的;而長詞的頻率較低,是面向內容的,增加長詞的權重,有利于詞匯進行分割,從而更準確地反映出特征詞在文章中的重要程度。詞語長度通常不被研究者重視,但是本文在實際應用中發(fā)現(xiàn),關鍵詞通常是一些專業(yè)學術組合詞匯,長度較一般詞匯長??紤]候選詞的長度,會突出長詞的作用。長度項也可以使用對數函數來平滑詞匯間長度的劇烈差異。通常來說,長詞匯含義更明確,更能反映文本主題,適合作為關鍵詞,因此將包含在長詞匯中低于一定過濾閾值的短詞匯進行了過濾。所謂過濾閾值,就是指進行過濾短詞匯的后處理時,短詞匯的權重和長詞匯的權重的比的最大值。如果低于過濾閾值,則過濾短詞匯,否則保留短詞匯。根據統(tǒng)計,二字詞匯多是常用詞,不適合作為關鍵詞,因此對實際得到的二字關鍵詞可以做出限制。比如,抽取5個關鍵詞,本文最多允許3個二字關鍵詞存在。這樣的后處理無疑會降低關鍵詞抽取的準確度和召回率,但是同候選詞長度項的運用一樣,人工評價效果將會提高。
9. 詞語間關聯(lián)
詞匯間的關聯(lián)關系對提升文本理解的深度有非常重要的影響,例如中文中存在大量的同義詞,近義詞,中文簡稱,指代等。在前文中計算詞頻、出現(xiàn)位置時,如果沒有很好的考慮詞語間關聯(lián),則很容易錯誤的識別文章的核心關鍵詞,影響文本分類精度。
10. 單詞的區(qū)分能力
在TF*IDF公式的基礎上,又擴展了一項單詞的類區(qū)分能力。新擴展的項用于描述單詞與各個類別之間的相關程度。
11. 詞語直徑(Diameter(t))
詞語直徑是指詞語在文本中首次出現(xiàn)的位置和末次出現(xiàn)的位置之間的距離。詞語直徑是根據實踐提出的一種統(tǒng)計特征。根據經驗,如果某個詞匯在文本開頭處提到,結尾又提到,那么它對該文本來說,是個很重要的詞匯。不過統(tǒng)計結果顯示,關鍵詞的直徑分布出現(xiàn)了兩極分化的趨勢,在文本中僅僅出現(xiàn)了1次的關鍵詞占全部關鍵詞的14.184 %。所以詞語直徑是比較粗糙的度量特征。
12. 首次出現(xiàn)位置(FirstLoc(t))
Frank在Kea算法中使用候選詞首次出現(xiàn)位置作為Bayes概率計算的一個主要特征,他稱之為距離(Distance)。簡單的統(tǒng)計可以發(fā)現(xiàn),關鍵詞一般在文章中較早出現(xiàn),因此出現(xiàn)位置靠前的候選詞應該加大權重。實驗數據表明,首次出現(xiàn)位置和詞語直徑兩個特征只選擇一個使用就可以了。由于文獻數據加工問題導致中國學術期刊全文數據庫的全文數據不僅包含文章本身,還包含了作者、作者機構以及引文信息,針對這個特點,使用首次出現(xiàn)位置這個特征,可以盡可能減少全文數據的附加信息造成的不良影響。
13. 詞語分布偏差(Deviation(t))
詞語分布偏差所考慮的是詞語在文章中的統(tǒng)計分布。在整篇文章中分布均勻的詞語通常是重要的詞匯。詞語的分布偏差計算公式如下:其中,CurLoc(tj)是詞匯t在文章中第j次出現(xiàn)的位置;MeanLoc(t)是詞匯t在文章中出現(xiàn)的平均位置。
特征權重計算方法沒有最好的選擇,往往要依據現(xiàn)實的具體場景來選取適合的方法。在進行特征權重的計算之后,已經可以把測試集數據采用機器學習方法進行分類訓練。但是實際操作會遇到一些問題。單詞并不都包含相同的信息。如果在一部分文件中有些單詞頻繁地出現(xiàn),那將擾亂分類系統(tǒng)的分析。我們想要對每一個詞頻向量進行比例縮放,使其變得更具有代表性。換句話說,我們需要進行向量標準化,譬如標準化向量使其L2范數為1。某種程度上,我們得到了一個在該詞的信息價值上衰減的結果。所以我們需要按比例縮小那些在一篇文檔中頻繁出現(xiàn)的單詞的值 。
(二):樣本訓練和分類評估方法
1.樣本訓練
1.1 文本分類算法
由于文本分類本身是一個分類問題,所以一般的模式分類方法都可以用于文本分類應用中。常用的分類算法包括:
(1) Rocchio分類器
Rocchio分類器的基本思想是,首先為每一個訓練文本C建立一個特征向量,然后使用訓練文本的特征向量為每個類建立一個原型向量(類向量)。當給定一個待分類文本時,計算待分類文本與各個類別的原型向量之間的距離,然后根據計算出來的距離值決定待分類文本屬于哪一類別。一個基本的實現(xiàn)方法就是把一個類別里的樣本文檔各項取個平均值,作為原型變量。
(2) 樸素貝葉斯分類器
利用特征項和類別的列和概率來估計給定文檔的類別概率。假設文本是基于詞的一元模型,即文本中當前詞的出現(xiàn)依賴于文本類別,但不依賴于其他詞及文本的長度,也就是說,詞與詞之間是獨立的。根據貝葉斯公式,文檔Doc屬于Ci類別的概率為P(Ci|Doc)=P(Doc|Ci)*P(Ci)/P(Doc)。
(3) 基于支持向量機的分類器
基于支持向量機(SVM)的分類方法主要用于解決二元模式分類問題。SVM的基本思想是在向量空間中找到一個決策平面,這個平面能夠“最好”地分割兩個分類中的數據點。支持向量機分類法就是要在訓練集中找到具有最大類間界限的決策平面,如圖2。
圖 2 基于支持向量機分類器原理圖
(4) k-最近鄰法
k-最近鄰方法的基本思想是:給定一個測試文檔,系統(tǒng)在訓練集中查找離它最近的k個鄰近文檔,并且根據這些鄰近文檔的分類來給該文檔的候選類別評分。把鄰近文檔和測試文檔的相似度作為鄰近文檔所在類別的權重,如果這k個鄰近文檔中的部分文檔屬于同一個類別,那么將該類別中每個鄰近文檔的權重求和,并作為該類別和測試文檔的相似度。然后,通過對候選分類評分的排序,給出一個閾值。
(5) 基于神經網絡的分類器
神經網絡是人工智能中比較成熟的技術之一,基于該技術的分類器的基本思想是:給每一類文檔建立一個神經網絡,輸入通常是單詞或者更加復雜的特征向量,通過機器學習方法獲得從輸入到分類的非線性映射。
(6) 決策樹
決策樹分類器把文本處理過程看作是一個等級分層分解完成的復雜任務。如圖3,決策樹是一棵樹,樹的根節(jié)點是整個數據集合空間,每個分結點是對一個單一變量的測試,該測試將數據集合空間分割成兩個或更多個類別,即決策樹可以是二叉樹也可以是多叉樹。每個葉結點是屬于單一類別的記錄。構造決策樹分類器時,首先要通過訓練生成決策樹,然后再通過測試集對決策樹進行修剪。一般可通過遞歸分割的過程構建決策樹,其生成過程通常是自上而下的,選擇分割的方法有很多種,但是目標都是一致的,就是對目標文檔進行最佳分割。
圖 3 決策樹實例
1.2 Ensemble方法
我們使用上述的經典分類算法的過程中,很自然的想到一點,我們是否能夠整合多個算法優(yōu)勢到解決某一個特定分類問題中去?答案是肯定的。通過聚合多個分類器的預測來提高分類的準確率,這種技術稱為Ensemble方法。Ensemble方法是提升機器學習精度的有效手段。它的基本思想是充分利用不同分類器的優(yōu)勢,取長補短,最后綜合多個分類器的結果。
Ensemble可以設定一個目標函數(組合多個分類器),通過訓練得到多個分類器的組合參數(而不是簡單的累加或者多數)。在Ensemble框架下將分類器分為兩個Level:L1層和L2層。L1層是基礎分類器,前面提到的分類器均可以作為L1層分類器來使用;L2層基于L1層,將L1層的分類結果形成特征向量,再組合一些其他的特征后,形成L2層分類器(如SVM,AdaBoost等)的輸入。這里需要特別留意的是用于L2層的訓練的樣本必須沒有在訓練L1層時使用過。
圖 4 Ensemble框架
2.文本分類評估
針對不同的目的,多種文本分類器性能評價方法被提出,包括召回率、正確率和F-測度值。設定a表示分類器將輸入文本正確分類到某個類別的個數;b表示分類器將輸入文本錯誤分類到某個類別的個數;c表示分類器將輸入文本錯誤地排除在某個類別之外的個數;d表示分類器將輸入文本正確地排除在某個類別之外的個數。
該分類器的召回率、正確率和F-測度值分別采用以下公式計算:
召回率 r = a / (a + c) * 100%
正確率 p = a / (a + b) * 100%
F-測度值 F = (2 * p * r) /(p + r)
由于在分類結果中,對應每個類別都會有一個召回率和正確率,因此,可以根據每個類別的分類結果評價分類器的整體性能,通常方法有兩種:微平均和宏平均。微平均是根據正確率和召回率計算公式直接計算出總得正確率和召回率值。宏平均是指首先計算出每個類別的正確率和召回率,然后對正確率和召回率分別取平均得到總的正確率和召回率。不難看出,宏平均平等對待每一個類別,所以它的值主要受到稀有類別的影響,而微平均平等考慮文檔集中的每一個文檔,所以它的值受到常見類別的影響比較大。
結語
如今我們正處在一個信息爆炸的時代,如何在這樣一個巨大的信息海洋中更加有效的發(fā)現(xiàn)和使用信息以及如何利用這個信息寶庫為人們提供更高質量和智能化的信息服務,是值得探討的問題。自動文本分類技術作為處理和組織大量文本數據的關鍵技術,已經成為關注焦點,具有廣泛的應用場景。
作者簡介:張健,復旦大學計算機軟件與理論碩士,現(xiàn)任達觀數據聯(lián)合創(chuàng)始人,曾在盛大創(chuàng)新院負責相關推薦模塊,在盛大文學數據中心負責任務調度平臺系統(tǒng)和集群維護管理,數據平臺維護管理和開發(fā)智能審核系統(tǒng)。對大數據技術、機器學習算法有較深入的理解和實踐經驗。