sklearn——朴素贝叶斯分文本分类2

来源:互联网 发布:mac 安装apache 编辑:程序博客网 时间:2024/06/04 19:45

使用sklearn中的tf-idf向量选择器对向量进行选择,是一个特征选择的过程

代码:

# 从sklearn.feature_extraction.text里分别导入TfidfVectorizer。from sklearn.feature_extraction.text import TfidfVectorizer# 采用默认的配置对TfidfVectorizer进行初始化(默认配置不去除英文停用词),并且赋值给变量tfidf_vec。tfidf_vec = TfidfVectorizer()# 使用tfidf的方式,将原始训练和测试文本转化为特征向量。X_tfidf_train = tfidf_vec.fit_transform(X_train)X_tfidf_test = tfidf_vec.transform(X_test)# 依然使用默认配置的朴素贝叶斯分类器,在相同的训练和测试数据上,对新的特征量化方式进行性能评估。mnb_tfidf = MultinomialNB()mnb_tfidf.fit(X_tfidf_train, y_train)print 'The accuracy of classifying 20newsgroups with Naive Bayes (TfidfVectorizer without filtering stopwords):', mnb_tfidf.score(X_tfidf_test, y_test)y_tfidf_predict = mnb_tfidf.predict(X_tfidf_test)print classification_report(y_test, y_tfidf_predict, target_names = news.target_names)
结果:提高了不到一个百分点

0 0