【机器学习实战】:C++实现
基于贝叶斯决策分类的分类方法:
在数据较少的情况下仍然有效,可以处理多类别问题;
缺点: 对于输入数据的准备方式较为敏感;
使用数据类型: 标称性数据;
朴素贝叶斯是贝叶斯决策理论的一部分,所以讲述朴素贝叶斯分类之前有必要了解贝叶斯决策理论。我们之所以称之为“朴素”,是因为整个形式化过程只做最原始,最简单的假设。
假设我们有一个数据集,它由两类数据组成,数据分布
我们现在用p1(x,y)表示数据点(x,y)属于类别1(图中用圆点表示的类别)的概率,用p2(x,y)表示数据点(x,y)属于类别2(图中用三角形表示的类别)的概率,那么对于一个新数据点(x,y),可以用下面的规则来判断它的类别:
· 如果p1(x,y)> p2(x,y) ,那么类别为1。
· 如果p1(x,y)< p2(x,y) ,那么类别为2。
也就是说,我们也选择搞概率对应的类别。这就是贝叶斯决策理论的核心思想,即选择具有最高概率的决策。
朴素贝叶斯的一般过程:
(1)收集数据:可以使用任何方法。
(2)准备数据:需要数值型或者布尔型数据。
(3)分析数据:有大量特征时,绘制特征作用不大,此时使用直方图效果更好。
(4)训练算法:计算不同的独立特征的条件概率。
(5)测试算法:计算错误率。
(6)使用算法:一个常见的朴素贝叶斯应用是文档分类。可以在任意的分类场景中使用朴素贝叶斯分类器,不一定非要是文本。
资料如下:
本帖隐藏的内容