資料集的預處理:去停用詞,過濾標點,空格分隔並去掉標點,大小寫統一等(詳細請參考
將原始資料轉換為特徵向量,為了從資料集中選出重要的特徵,有以下幾種方式:(特徵工程詳情請見
詞嵌入作為特徵
基於文字/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 ...