實現文字分類的過程

2021-10-02 01:37:45 字數 744 閱讀 2633

資料集的預處理:去停用詞,過濾標點,空格分隔並去掉標點,大小寫統一等(詳細請參考

將原始資料轉換為特徵向量,為了從資料集中選出重要的特徵,有以下幾種方式:(特徵工程詳情請見

詞嵌入作為特徵

基於文字/nlp的特徵

主題模型作為特徵

樸素貝葉斯分類器

線性分類器

支援向量機

淺層神經網路

深層神經網路(cnn,rnn,lstm,gru,雙向rnn)

其他網路模型的變種

進一步提高文字分類模型的效能

為了達到更高的準確率,可以在總體框架中進行一些改進。例如,下面是一些改進文字分類模型和該框架效能的技巧:

2. 組合文字特徵向量的文字/nlp特徵:特徵工程階段,我們把生成的文字特徵向量組合在一起,可能會提高文字分類器的準確率。

模型中的超引數調優:引數調優是很重要的一步,很多引數通過合適的調優可以獲得最佳擬合模型,例如樹的深層、葉子節點數、網路引數等。

寫在最後

本文討論了如何準備乙個文字資料集,如清洗、建立訓練集和驗證集。使用不同種類的特徵工程,比如計數向量、tf-idf、詞嵌入、主題模型和基本的文字特徵。然後訓練了多種分類器,有樸素貝葉斯、logistic回歸、svm、mlp、lstm和gru。最後討論了提高文字分類器效能的多種方法。

Tensorflow實現LSTM文字分類

最近需要寫乙個神經網路模型來做分類。作為此前沒有實戰過深度學習,只寫過svm之類的,學習過一些理論知識的新手,為了快速上手,第一想法就是找乙個簡單的demo跑通,對整個流程和結構有乙個初步體驗。於是在網上找了乙個tensorflow實戰系列 手把手教你使用lstm進行文字分類 但是教程存在乙個問題,...

文字分類 libsvm

關於 libsvm 的介紹以及相關 網上很多,感興趣可以找找。這是libsvm 這裡主要是針對之前學習過的幾種特徵篩選演算法用 libsvm 進行比較。採用搜狗實驗室的資料,選擇商業類文字 1001 篇,娛樂類文字 1208 篇,測試集 29904 篇。分別採用文件頻次,卡方分布,互資訊,資訊增益來...

文字分類四

下面是使用knn演算法來做的。資料均是由前面的程式生成的。做完這個之後,就是將每一步整合起來。然後再盡可能的優化,使得程式效率更好。然後可以嘗試不同的特徵選擇演算法和分類演算法,當然最後要是能有自己的一些小小改進就好了。不過至少有了乙個還可以的結果了。include include include ...