文本分類問題與其它分類問題沒有本質上的區別,其方法可以歸結為根據待分類數據的某些特征來進行匹配,當然完全的匹配是不太可能的,因此必須(根據某種評價標準)選擇最優的匹配結果,從而完成分類。
因此核心的問題便轉化為用哪些特征表示一個文本才能保證有效和快速的分類(注意這兩方面的需求往往是互相矛盾的)。因此自有文本分類系統的那天起,就一直是對特征的不同選擇主導著方法派別的不同。
最早的詞匹配法僅僅根據文檔中是否出現了與類名相同的詞(頂多再加入同義詞的處理)來判斷文檔是否屬于某個類別。很顯然,這種過于簡單的方法無法帶來良好的分類效果。
后來興起過一段時間的知識工程的方法則借助于專業人員的幫助,為每個類別定義大量的推理規則,如果一篇文檔能滿足這些推理規則,則可以判定屬于該類別。這里與特定規則的匹配程度成為了文本的特征。由于在系統中加入了人為判斷的因素,準確度比詞匹配法大為提高。但這種方法的缺點仍然明顯,例如分類的質量嚴重依賴于這些規則的好壞,也就是依賴于制定規則的“人”的好壞;再比如制定規則的人都是專家級別,人力成本大幅上升常常令人難以承受;而知識工程最致命的弱點是完全不具備可推廣性,一個針對金融領域構建的分類系統,如果要擴充到醫療或社會保險等相關領域,則除了完全推倒重來以外沒有其他辦法,常常造成巨大的知識和資金浪費。
后來人們意識到,究竟依據什么特征來判斷文本應當隸屬的類別這個問題,就連人類自己都不太回答得清楚,有太多所謂“只可意會,不能言傳”的東西在里面。人類的判斷大多依據經驗以及直覺,因此自然而然的會有人想到何讓機器像人類一樣自己來通過對大量同類文檔的觀察來自己總結經驗,作為今后分類的依據。
這便是統計學習方法的基本思想(也有人把這一大類方法稱為機器學習,兩種叫法只是涵蓋范圍大小有些區別,均無不妥)。
統計學習方法需要一批由人工進行了準確分類的文檔作為學習的材料(稱為訓練集,注意由人分類一批文檔比從這些文檔中總結出準確的規則成本要低得多),計算機從這些文檔重挖掘出一些能夠有效分類的規則,這個過程被形象的稱為訓練,而總結出的規則集合常常被稱為分類器。訓練完成之后,需要對計算機從來沒有見過的文檔進行分類時,便使用這些分類器來進行。
現如今,統計學習方法已經成為了文本分類領域絕對的主流。主要的原因在于其中的很多技術擁有堅實的理論基礎(相比之下,知識工程方法中專家的主觀因素居多),存在明確的評價標準,以及實際表現良好。
下一章就深入統計學習方法,看看這種方法的前提,相關理論和具體實現。