概覽
自動文本分類(Automatic Text Categorization),或者簡稱為文本分類,是指計算機將一篇文章歸于預(yù)先給定的某一類或某幾類的過程。
文本分類是指按照預(yù)先定義的主題類別,為文檔集合中的每個文檔確定一個類別.文本分類是文本挖掘的一個重要內(nèi)容。
所謂文本分類,是指對所給出的文本,給出預(yù)定義的一個或多個類別標號,對文本進行準確、高效的分類.它是許多數(shù)據(jù)管理任務(wù)的重要組成部分。
文本分類是指按預(yù)先指定的標準對文檔進行歸類這樣用戶不僅可以方便地瀏覽文檔而且可以通過類別來查詢所需的文檔。
文本分類是指在給定的分類體系下,根據(jù)文語義元是統(tǒng)計語義方法中的原子,是不可分本的內(nèi)容自動確定文本類別的過程.當前的文本割的最小單位,在文本分類中語義元是詞。
文本分類(Text categorization)是指在給定分類體系下,根據(jù)文本內(nèi)容自動確定文本類別的過程.20世紀90年代以前,占主導地位的文本分類方法一直是基于知識工程的分類方法,即由專業(yè)人員手工進行分類.人工分類非常費時,效率非常低.90年代以來,眾多的統(tǒng)計方法和機器學習方法應(yīng)用于自動文本分類,文本分類技術(shù)的研究引起了研究人員的極大興趣.目前在國內(nèi)也已經(jīng)開始對中文文本分類進行研究,并在信息檢索、Web文檔自動分類、數(shù)字圖書館、自動文摘、分類新聞組、文本過濾、單詞語義辨析以及文檔的組織和管理等多個領(lǐng)域得到了初步的應(yīng)用.
歷史
文本分類的研究可以追溯到上世紀六十年代,早期的文本分類主要是基于知識工程(Knowledge Engineering),通過手工定義一些規(guī)則來對文本進行分類,這種方法費時費力,且必須對某一領(lǐng)域有足夠的了解,才能寫出合適的規(guī)則。到上世紀九十年代,隨著網(wǎng)上在線文本的大量涌現(xiàn)和機器學習的興起,大規(guī)模的文本(包括網(wǎng)頁)分類和檢索重新引起研究者的興趣。文本分類系統(tǒng)首先通過在預(yù)先分類好的文本集上訓練,建立一個判別規(guī)則或分類器,從而對未知類別的新樣本進行自動歸類。大量的結(jié)果表明它的分類精度比得上專家手工分類的結(jié)果,并且它的學習不需要專家干預(yù),能適用于任何領(lǐng)域的學習,使得它成為目前文本分類的主流方法。
1971 年,Rocchio 提出了在用戶查詢中不斷通過用戶的反饋來修正類權(quán)重向量,來構(gòu)成簡單的線性分類器。Mark vanUden、Mun等給出了其他的一些修改權(quán)重的方法。1979 年,van Rijsbergen對信息檢索領(lǐng)域的研究做了系統(tǒng)的總結(jié),里面關(guān)于信息檢索的一些概念,如向量空間模型(Vector Space Model)和評估標準如準確率(Precision)、回召率(Recall),后來被陸續(xù)地引入文本分類中,文中還重點地討論了信息檢索的概率模型,而后來的文本分類研究大多數(shù)是建立在概率模型的基礎(chǔ)上。
1992 年,Lewis 在他的博士論文《Representation and Learning in Information Retrieval》中系統(tǒng)地介紹了文本分類系統(tǒng)實現(xiàn)方法的各個細節(jié),并且在自己建立的數(shù)據(jù)集Reuters22173(后來去掉一些重復的文本修訂為Reuters21578數(shù)據(jù)集)上進行了測試。這篇博士論文是文本分類領(lǐng)域的經(jīng)典之作。后來的研究者在特征的降維和分類器的設(shè)計方面作了大量的工作,Yiming Yang 對各種特征選擇方法,包括信息增益(Information Gain)、互信息(Mutual Information)、統(tǒng)計量等,從實驗上進行了分析和比較。她在1997年還對文獻上報告的幾乎所有的文本分類方法進行了一次大閱兵,在公開數(shù)據(jù)集Reuters21578和OHSUMED上比較了各個分類器的性能,對后來的研究起到了重要的參考作用。
1995 年,Vipnik 基于統(tǒng)計理論提出了支持矢量機(Support Vector Machine)方法,基本思想是尋找最優(yōu)的高維分類超平面。由于它以成熟的小樣本統(tǒng)計理論作為基石,因而在機器學習領(lǐng)域受到廣泛的重視。Thorsten Joachims第一次將線性核函數(shù)的支持矢量機用于文本分類,與傳統(tǒng)的算法相比,支持矢量機在分類性能上有了非常大的提高,并且在不同的數(shù)據(jù)集上顯示了算法的魯棒性。至今,支持矢量機的理論和應(yīng)用仍是研究的熱點。
在支持矢量機出現(xiàn)的同時,1995年及其后,以Yoav Freund 和Robert E. Schapire發(fā)表的關(guān)于AdaBoost的論文為標志,機器學習算法的研究出現(xiàn)了另一個高峰。RobertE.Schapire從理論和試驗上給出AdaBoost算法框架的合理性。其后的研究者在這個框架下給出了許多的類似的Boosting算法,比較有代表性的有Real AdaBoost,Gentle Boost,LogitBoost等。這些Boosting算法均己被應(yīng)用到文本分類的研究中,并且取得和支持矢量機一樣好的效果。
總而言之,盡管機器學習理論對于文本分類的研究起了不可低估的作用,在這之前文本分類的研究曾一度處于低潮,但是文本分類的實際應(yīng)用和它自身的固有的特性給機器學習提出新的挑戰(zhàn),這使得文本分類的研究仍是信息處理領(lǐng)域一個開放的、重要的研究方向。
中文文本分類
相比于英文文本分類,中文文本分類的一個重要的差別在于預(yù)處理階段:中文文本的讀取需要分詞,不像英文文本的單詞那樣有空格來區(qū)分。從簡單的查詞典的方法,到后來的基于統(tǒng)計語言模型的分詞方法,中文分詞的技術(shù)已趨于成熟。比較有影響力的當屬中國科學院計算所開發(fā)的漢語詞法分析系統(tǒng)ICTCLAS,現(xiàn)已公開發(fā)布供中文文本分類的研究使用。
在很長一段時間內(nèi),中文文本分類的研究沒有公開的數(shù)據(jù)集,使得分類算法難以比較。現(xiàn)在一般采用的中文測試集有:北京大學建立的人民日報語料庫、清華大學建立的現(xiàn)代漢語語料庫等。
其實一旦經(jīng)過預(yù)處理將中文文本變成了樣本矢量的數(shù)據(jù)矩陣,那么隨后的文本分類過程和英文文本分類相同,也就是隨后的文本分類過程獨立于語種。因此,當前的中文文本分類主要集中在如何利用中文本身的一些特征來更好地表示文本樣本。
關(guān)鍵技術(shù)及方法
分詞技術(shù)
對于中文文本而言,因為詞與詞之間沒有明顯的切分標志,所以首先需要對中文文本進行分詞.現(xiàn)在的分詞方法雖然有多種,但歸納起來不外乎兩種:一類是機械式分詞法,一般以分詞詞典為依據(jù),通過文檔中的漢字串和詞表中的詞逐一匹配來完成詞的切分.另一類是理解式分詞法,即利用漢語的語法知識和語義知識以及心理學知識進行分詞,需要建立分詞數(shù)據(jù)庫、知識庫和推理庫.后者可謂是理想的方法,但在語法分析、語義分析乃至篇章理解還沒有得到解決之前,其分詞系統(tǒng)主要采用機械分詞法,或者介于二者之間的某種分詞方法。
文本表示
計算機并不具有人類的智慧,不能讀懂文字,所以必須把文本轉(zhuǎn)化成計算機能夠理解的形式,即進行文本表示.目前文本表示模型主要是Gerard Salton和McGill于1969年提出的向量空間模型(VSM)。向量空間模型的基本思想是把文檔簡化為特征項的權(quán)重為分量的向量表示:(w1,w2,…,wn),其中wi為第i個特征項的權(quán)重,一般選取詞作為特征項,權(quán)重用詞頻表示.詞頻分為絕對詞頻和相對詞頻.絕對詞頻,即用詞在文本中出現(xiàn)的頻率表示文本;相對詞頻,即為歸一化的詞頻,其計算方法主要運用TF-IDF公式。
除了向量空間模型外,還有概率模型.概率模型也考慮詞與詞的相關(guān)性,把文本集中的文檔分為相關(guān)文檔和無關(guān)文檔.以數(shù)學理論中的概率論為原理,通過賦予特征詞某個概率值來表示這些詞在相關(guān)文檔和無關(guān)文檔之間出現(xiàn)的概率,然后計算文檔間相關(guān)的概率,系統(tǒng)據(jù)此概率做出決策。
特征選擇與特征抽取
由于文本數(shù)據(jù)的半結(jié)構(gòu)化甚至于無結(jié)構(gòu)化的特點,當用特征向量對文檔進行表示的時候,特征向量通常會達到幾萬維甚至于幾十萬維.尋求一種有效的特征降維方法,降低特征空間的維數(shù),提高分類的效率和精度,成為文本自動分類中至關(guān)重要的問題.降維技術(shù)總的可以分為兩類:特征選擇和特征抽取。
文本分類算法
研究文本自動分類的核心問題是如何構(gòu)造分類函數(shù)(分類器),分類函數(shù)需要通過某種算法進行學習獲得.分類是重要的數(shù)據(jù)挖掘方法,在文本分類中,幾乎存在著和一般分類同樣多的方法.在眾多的文本分類算法中,重點介紹了Rocchio算法、樸素貝葉斯分類算法、K-近鄰算法、決策樹算法、神經(jīng)網(wǎng)絡(luò)算法和支持向量機算法。
From: http://wiki.52nlp.cn/