《機器學習:演算法原理和程式設計實踐》2:中文文字分類
1、文字挖掘與文字分類的概念
簡言之,文字挖掘就是從非結構化的文字中尋找知識的過程。其7個主要領域如下:
- 搜尋和資訊檢索(IR):儲存和文字文件的檢索,包括搜尋引擎和關鍵字搜尋。
- 文字聚類:使用聚類方法,對詞彙、片段、段落或檔案進行分組和歸類。
- 文字分類:對片段、段落或檔案進行分組和歸類,在使用資料探勘分類方法的基礎上,經過訓練地標記示例模型。
- Web挖掘:在網際網路上進行資料和文字挖掘,並特別關注網路的規模和相互聯絡。
- 資訊抽取(IE):從非結構化文字中識別與提取有關的事實和關係;從非結構話或半結構化文字中抽取出結構化資料的過程。
- 自然語言處理(NLP):將語言作為一種有意義、有規則的符號系統,在底層解析和理解語言的任務;目前的技術主要從語法、語義的角度發現語言最本質的結構和所表達的意義。
- 概念提取:把單詞和短語按語義分成意義相似的組。
2、文字分類專案
中文語言的文字分類技術與流程:
- 預處理:去除文字的噪聲資訊,例如HTML標籤、檢測句子邊界等。
- 文字分詞:使用中文分詞器為文字分詞,並去除停用詞。最終完全解決中文分詞的演算法是基於概率圖模型的條件隨機場(CRF)。目前,文字的結構化表示簡單分為四大類:詞向量空間模型、主題模型、依存句法的樹表示、RDF的圖表示,它們都是以分詞為基礎的。使用結巴分詞
- 構建詞向量空間:統計文字詞頻,生成文字的詞向量空間。人工輸入的停用詞(常用詞、語氣助詞等)
- 權重策略---TF-IDF方法:使用TF-IDF發現特徵詞,並抽取為反映文件主題的特徵。
- 分類器:使用演算法訓練分類器。
- 評價分類結果:分類器的測試結果分析。
向量空間模型把文字表示一個向量,該向量的每個特徵表示為文字中出現的詞。它將文字中的詞和模式串轉換位數字,而整個文字集也都轉換為維度相等的詞向量矩陣。
TF-IDF(詞頻逆文件頻率):其含義是如果某個詞或短語在一篇文章中出現的頻率高,並且在其他文章中很少出現,則認為此詞或者短語具有很好的類別區分能力,適合用來分類。對詞計數進行歸一化,將詞頻資訊變為概率分佈,這就是文件的TF資訊。如何體現生成的詞袋中的詞頻資訊呢?由於詞袋收集了所有文件中的詞,這些詞的詞頻是針對所有文件的詞頻,因此,詞袋的統計基數是文件數。所以IDF權重為log(D/j) ,包含詞語的檔案數目
分類器:常用的文字分類方法有kNN最近鄰演算法、樸素貝葉斯演算法和SVM。一般而言,kNN最近鄰演算法的原理最簡單,分類精度尚可,但是速度最慢;樸素貝葉斯演算法對於短文字分類的效果最好,精度很高;支援向量機演算法的優勢是支援線性不可分的情況,精度上取中。
kNN:如果一個樣本在特徵空間中的k個最鄰近(最相似)的樣本中的大多數都屬於某個類別,則該樣本也屬於這個類別。
分類結果評估:召回率(查全率),準確率(查準率),F-Score(常用的評價標準)
相關文章
- 《機器學習:演算法原理和程式設計實踐》4:推薦系統原理機器學習演算法程式設計
- 《機器學習:演算法原理和程式設計實踐》3:決策樹的發展機器學習演算法程式設計
- 如何用Python和機器學習訓練中文文字情感分類模型?Python機器學習模型
- 機器學習4-分類演算法2機器學習演算法
- 如何用機器學習對文字分類機器學習文字分類
- 機器學習之支援向量機原理和sklearn實踐機器學習
- Spark機器學習實戰 (十一) - 文字情感分類專案實戰Spark機器學習
- 機器學習--有監督學習--分類演算法(預測分類)機器學習演算法
- 機器學習之決策樹原理和sklearn實踐機器學習
- 機器學習3-分類演算法機器學習演算法
- 幽默:駭客式程式設計其實類似機器學習!程式設計機器學習
- 【Python機器學習實戰】聚類演算法(2)——層次聚類(HAC)和DBSCANPython機器學習聚類演算法
- 【機器學習】--xgboost初始之程式碼實現分類機器學習
- 機器學習(三):理解邏輯迴歸及二分類、多分類程式碼實踐機器學習邏輯迴歸
- 文字分類:Keras+RNN vs傳統機器學習文字分類KerasRNN機器學習
- 【火爐煉AI】機器學習039-NLP文字分類器AI機器學習文字分類
- 機器學習(一):5分鐘理解機器學習並上手實踐機器學習
- 《Python機器學習》作者科普長文:從頭構建類GPT文字分類器,程式碼開源Python機器學習GPT文字分類
- 萬字總結Keras深度學習中文文字分類Keras深度學習文字分類
- 《機器學習觀止——核心原理與實踐》之 K-NN 演算法機器學習演算法
- 【機器學習】支援向量機分類機器學習
- 【機器學習演算法】XGBoost原理機器學習演算法
- 從零開始學機器學習——瞭解分類演算法機器學習演算法
- 利用機器學習進行惡意程式碼分類機器學習
- 機器學習總結(2)—分類中的代數模型機器學習模型
- 機器學習實踐篇第二篇-KNN演算法學習機器學習KNN演算法
- 機器學習演算法筆記之4:貝葉斯分類器機器學習演算法筆記
- 0802-程式設計實戰_貓和狗二分類_深度學習專案架構程式設計深度學習架構
- 機器學習常用的分類器比較機器學習
- 《機器學習Python實現_10_02_整合學習_boosting_adaboost分類器實現》機器學習Python
- 【無監督學習】2:DBSCAN聚類演算法原理聚類演算法
- 實驗3 類和物件_基礎程式設計2物件程式設計
- 實驗三 類和物件 基礎程式設計2物件程式設計
- 實驗三 類和物件_基礎程式設計2物件程式設計
- 實驗3 類和物件——基礎程式設計2物件程式設計
- 實驗3 類和物件 基礎程式設計2物件程式設計
- 實驗2 類和物件_基礎程式設計1物件程式設計
- 實驗2 類和物件 基礎程式設計1物件程式設計