半朴素贝叶斯分类器(周志华《机器学习》)
2016-05-12 15:27
288 查看
基于朴素贝叶斯分类的原理如下:
其中c是label中的分类,x是样本。p(c|x)的意思就是,拿到一个样本,这个样本的属性为x1,x2....,在这种情况下,我要求得样本分类为c的概率。
半朴素贝叶斯的分类。
在朴素的分类中,我们假定了各个属性之间的独立,这是为了计算方便,防止过多的属性之间的依赖导致的大量计算。这正是朴素的含义,虽然朴素贝叶斯的分类效果不错,但是属性之间毕竟是有关联的,某个属性依赖于另外的属性,于是就有了半朴素贝叶斯分类器。为了计算量不至于太大,假定每个属性只依赖另外的一个。这样,更能准确描述真实情况。
公式就变成:
在正式进行计算的时候,将另外一个依赖的属性加进去,计算量不会复杂太多,由于是基于“计数”,所以基本和朴素的计算方式类似。
确定如何依赖
1.SOPDE方法。这种方法是假定所有的属性都依赖于共同的一个父属性。2.TAN方法。每个属性依赖的另外的属性由最大带权生成树来确定。
(1)先求每个属性之间的互信息来作为他们之间的权值。
(2)构件完全图。权重是刚才求得的互信息。然后用最大带权生成树算法求得此图的最大带权的生成树。
(3)找一个根变量,然后依次将图变为有向图。
(4)添加类别y到每个属性的的有向边。
上图是三种方法的属性依赖关系。
相关文章推荐
- 测试计划
- 为什么成员属性不会被重写
- Java 字符串比较小知识
- Java面试题--JVM 底层 与 GC(Garbage Collection)
- java 反射机制
- do {...} while (0) 的用途汇总(欢迎补充)
- MBProgressHUD用法
- 深入理解JavaScript类数组
- 流程设计建模方法:流程的需求梳理之活动级别梳理
- 导入导出oracle数据库表的dmp文件
- QT绘图应用2:利用Qt绘制直方图和分位数图
- java 过滤掉特殊字符以及sql、shell命令
- NSURLSession学习笔记(三)Download Task
- 浅析Java编程中类和对象的定义
- 内部错误:无法加载 ABAP 报表 LVBRKF0I
- 使用密码登陆Amazon EC2而不是私有密钥
- NSURLConnection笔记
- 如何进行Android、IOS APP的自动化测试—东舟自动化测试解决方案
- iOS开发-Alpha,Hidden与Opaque区别
- margin-top导致子标签绑架父标签问题