《機器學習:演算法原理和程式設計實踐》2:中文文字分類

CopperDong發表於2018-07-07

1、文字挖掘與文字分類的概念

     簡言之,文字挖掘就是從非結構化的文字中尋找知識的過程。其7個主要領域如下:

  • 搜尋和資訊檢索(IR):儲存和文字文件的檢索,包括搜尋引擎和關鍵字搜尋。
  • 文字聚類:使用聚類方法,對詞彙、片段、段落或檔案進行分組和歸類。
  • 文字分類:對片段、段落或檔案進行分組和歸類,在使用資料探勘分類方法的基礎上,經過訓練地標記示例模型。
  • Web挖掘:在網際網路上進行資料和文字挖掘,並特別關注網路的規模和相互聯絡。
  • 資訊抽取(IE):從非結構化文字中識別與提取有關的事實和關係;從非結構話或半結構化文字中抽取出結構化資料的過程。
  • 自然語言處理(NLP):將語言作為一種有意義、有規則的符號系統,在底層解析和理解語言的任務;目前的技術主要從語法、語義的角度發現語言最本質的結構和所表達的意義。
  • 概念提取:把單詞和短語按語義分成意義相似的組。

2、文字分類專案

      中文語言的文字分類技術與流程:

  1. 預處理:去除文字的噪聲資訊,例如HTML標籤、檢測句子邊界等。
  2. 文字分詞:使用中文分詞器為文字分詞,並去除停用詞。最終完全解決中文分詞的演算法是基於概率圖模型的條件隨機場(CRF)。目前,文字的結構化表示簡單分為四大類:詞向量空間模型、主題模型、依存句法的樹表示、RDF的圖表示,它們都是以分詞為基礎的。使用結巴分詞
  3. 構建詞向量空間:統計文字詞頻,生成文字的詞向量空間。人工輸入的停用詞(常用詞、語氣助詞等)
  4. 權重策略---TF-IDF方法:使用TF-IDF發現特徵詞,並抽取為反映文件主題的特徵。
  5. 分類器:使用演算法訓練分類器。
  6. 評價分類結果:分類器的測試結果分析。

    向量空間模型把文字表示一個向量,該向量的每個特徵表示為文字中出現的詞。它將文字中的詞和模式串轉換位數字,而整個文字集也都轉換為維度相等的詞向量矩陣。

    TF-IDF(詞頻逆文件頻率):其含義是如果某個詞或短語在一篇文章中出現的頻率高,並且在其他文章中很少出現,則認為此詞或者短語具有很好的類別區分能力,適合用來分類。對詞計數進行歸一化,將詞頻資訊變為概率分佈,這就是文件的TF資訊。如何體現生成的詞袋中的詞頻資訊呢?由於詞袋收集了所有文件中的詞,這些詞的詞頻是針對所有文件的詞頻,因此,詞袋的統計基數是文件數。所以IDF權重為log(D/j) ,包含詞語的檔案數目

   分類器:常用的文字分類方法有kNN最近鄰演算法、樸素貝葉斯演算法和SVM。一般而言,kNN最近鄰演算法的原理最簡單,分類精度尚可,但是速度最慢;樸素貝葉斯演算法對於短文字分類的效果最好,精度很高;支援向量機演算法的優勢是支援線性不可分的情況,精度上取中。



kNN:如果一個樣本在特徵空間中的k個最鄰近(最相似)的樣本中的大多數都屬於某個類別,則該樣本也屬於這個類別。


   分類結果評估:召回率(查全率),準確率(查準率),F-Score(常用的評價標準)



相關文章