一个incredibly simple的分类器,基本原理是基于条件概率。
要求:
1. 特征值需要是可枚举的属性,例如布尔值,枚举值。对于连续的数值类型,在有的情况下可以根据特定逻辑划分范围,从而映射成为可枚举的属性。
2. 特征之间需要“条件独立 (conditional distribution)”, 即:p(xi|y, xj ) = p(xi|y) (i != j)
注意这里的条件独立的约束是要小于概率上的独立的,也就是说条件独立并不能得出
p(xi,xj) = p(xi)p(xj)的结论。
这里假设我们的分类器是一个简单的判断 是/否 的分类器,我们用1代表是,0代表否, 那么检查条件概率
如果这个概率是大于50%的,那么这个样本被分到“是”的类别,反之则分到否,对于multiclass的情况,需要计算每个类别对应的概率,然后取选择到这个类别概率最大的类别作为分类结果。
Smoothing:
有一种特殊情况, 当需要分类的样本的某一个特征取值在训练集里不存在的时候,很明显上面不论任何一个式子我们都会得到 0/(0+0) 的情况。 我们使用 Laplacian smoothing:
本文出自 “在云端” 博客,请务必保留此出处http://kcy1860.blog.51cto.com/2488842/1265662