首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >朴素贝叶斯(Naive Bayes)

朴素贝叶斯(Naive Bayes)

作者头像
用户2909867
发布2018-08-22 11:09:26
5030
发布2018-08-22 11:09:26
举报
文章被收录于专栏:互联网大杂烩互联网大杂烩

朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想真的很朴素,朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。

朴素贝叶斯.png

利用朴素贝叶斯进行文本挖掘 代码如下:

#从sklearn.datasets导入新闻数据抓取器
from sklearn.datasets import fetch_20newsgroups
#fetch_20newsgroups抓取器需要即时地从互联网下载数据
news=fetch_20newsgroups(subset='all')
print(news)
#查看数据规模的细节
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)
#导入朴素贝叶斯模型
from sklearn.naive_bayes import MultinomialNB
#初始化朴素贝叶斯模型
mnb=MultinomialNB()
#利用训练数据对模型参数进行估计
mnb.fit(X_train,Y_train)
#对测试样本进行类别预测,结果存储在y_predict中
y_predict=mnb.predict(X_test)
#分析分类性能
from sklearn.metrics import classification_report
print('The accuracy of Naive Class is:',mnb.score(X_test,Y_test))
print(classification_report(Y_test,y_predict,target_names=news.target_names))

结果如下:

Paste_Image.png

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.03.06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档