读取20类新闻文本的数据细节
#从sklearn.datasets 里导入新闻数据抓取器fetch_20newsgroups
from sklearn.datasets import fetch_20newsgroups
#需要及时从互联网下载数据
news=fetch_20newsgroups(subset='all')
#查验数据规模和细节
print (len(news.data))
print(news.data[0])
数据分割:
#数据分割
from sklearn.cross_validation import train_test_split
#随机采样25%的数据样本作为测试集
X_train,X_test,y_train,y_test=train_test_split(news.data,news.target,test_size=0.25,random_state=33)
使用朴素贝叶斯分类器对新闻 文本数据进行预测:
#使用朴素贝叶斯分类器进行预测
from sklearn.feature_extraction.text import CountVectorizer
vec=CountVectorizer()
X_train=vec.fit_transform(X_train)
X_test=vec.transform(X_test)
#从sklearn.naive_bayes里导入朴素贝叶斯模型
from sklearn.naive_bayes import MultinomialNB
#初始化朴素贝叶斯模型
mnb=Multinomial