在机器学习中,朴素贝叶斯分类器是一系列以假设特征之间强(朴素)独立下运用贝叶斯定理为基础的简单概率分类器。
贝叶斯原理公式:
朴素贝叶斯公式:
具体的推导过程可以去看李航老师的统计学习方法,里面的推导很详细
在sklearn中,贝叶斯分类方法有如下三种:
1.高斯朴素贝叶斯(GaussianNB)
2.多项式朴素贝叶斯(MultinomialNB)
3.伯努利朴素贝叶斯(BernoulliNB)
本文使用的是多项式的朴素贝叶斯
下面是我画的一个帮助理解朴素贝叶斯的思维导图
下面是利用python实现朴素贝叶斯文本识别的过程:
数据集是中文文档,文档共有 4 种类型:女性、体育、文学、校园;
数据源:
githubgithub.com下面是文档分类流程图
导入各种需要用到的包
文档分词
加载所有文档
计算单词权重
构建多项式贝叶斯分类器和做预测
计算准确率
准确率为0.92,效果还可以。
参考文献:
李航-统计学习方法
陈旸-数据分析实战45讲
维基百科