@author : fuguizen
@email : [email protected]
@time : 2020/3/8 13:51
from sklearn.feature_extraction.text
import (countvectorizer, tfidftransformer, tfidfvectorizer)
*[tfidfvectorizer將countvectorizer, tfidftransformer的兩步合併]
countvectorizer = countvectorizer(
stop_words=none,#過濾停用詞
min_df=0,
token_pattern=r"\b\w+\b" ) #保留長度大於0的分詞
xs= countvectorizer.fit_transform(xs)#(7765, 29421)
ys = np.asarray(ys)
「」"使用tfidf
「」"#transformer = tfidftransformer()
#xs = transformer.fit_transform(xs)
from sklearn.feature_selection import selectkbest
from sklearn.feature_selection import chi2
skb = selectkbest(chi2, k=5000)
xs = skb.fit_transform(xs, ys)#(7765, 2000)
#"""
#資料標準化
#"""
#from sklearn.preprocessing import standardscaler
#scaler = standardscaler(with_mean=false)
#xs = scaler.fit_transform(xs)
「」"資料集分割進行交叉驗證,獲取最終模型評分
使用stratifiedkfold保持正負樣本的比例
「」"from sklearn.model_selection import stratifiedkfold
import sklearn.svm as svm
from sklearn.linear_model import logisticregression
from sklearn.*****_bayes import multinomialnb,gaussiannb
from numpy import mean
from sklearn.metrics import roc_auc_score
文字分類的基本原理
文字分類的概念 文字分類用電腦對文字集 或其他實體或物件 按照一定的分類體系或標準進行自動分類標記。它根據乙個已經被標註的訓練文件集合,找到文件特徵和文件類別之間的關係模型,然後利用這種學習得到的關係模型對 新的文件進行類別判斷 文字分類從基於知識的方法逐漸轉變為基於統計 和機器學習的方法。文字分類...
SVM做文字分類詳細操作流程
以天氣分類為例,我們的目的是運用支援向量機svm libsvm 來訓練出乙個天氣分類的模型,這個模型可以將新來的語料分成天氣類和非天氣類兩個大類,即正類與負類,具體的流程如下 1.爬取語料資料2.語料的處理 爬完語料之後進行人工篩選,將一些不純的正語料去掉,剩下的純淨的正語料。之後再將剩下的正負語料...
文字分類 libsvm
關於 libsvm 的介紹以及相關 網上很多,感興趣可以找找。這是libsvm 這裡主要是針對之前學習過的幾種特徵篩選演算法用 libsvm 進行比較。採用搜狗實驗室的資料,選擇商業類文字 1001 篇,娛樂類文字 1208 篇,測試集 29904 篇。分別採用文件頻次,卡方分布,互資訊,資訊增益來...