from sklearn.datasets import fetch_20newsgroups
news = fetch_20newsgroups(data_home=r'E:\jupyter--workspace',subset='all')
Downloading 20news dataset. This may take a few minutes.
Downloading dataset from https://ndownloader.figshare.com/files/5975967 (14 MB)
from sklearn.model_selection import train_test_split
x_train,x_test,y_train,y_test = train_test_split(news.data,news.target)
from sklearn.feature_extraction.text import TfidfVectorizer
transfer = TfidfVectorizer()
x_train=transfer.fit_transform(x_train)
x_test = transfer.transform(x_test)
from sklearn.naive_bayes import MultinomialNB
estimator = MultinomialNB()
estimator.fit(x_train,y_train)
MultinomialNB(alpha=1.0, class_prior=None, fit_prior=True)
y_predict = estimator.predict(x_test)
print('真实值与预测值对吧:\n',y_predict==y_test)
真实值与预测值对吧:
[ True False True ... False True True]
score = estimator.score(x_test,y_test)
print("准确率:\n", score)
准确率:
0.8378607809847198