朴素贝叶斯分类(Naive Byesian Classification)
最近学习了朴素贝叶斯分类方法,写一篇博客来总结一下。
目录
1 贝叶斯定理
贝叶斯公式是在A事件已经发生的情况下,求,从而推测A的发生最有可能是由于哪一个发生导致的,即寻找A发生的原因。
2 朴素贝叶斯分类
2.1 朴素贝叶斯分类的原理
朴素贝叶斯分类是一种十分简单的分类算法,朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此待分类项出现的条件下各个类别出现的概率,哪个类别出现的概率最大,就认为此待分类项属于哪个类别。
定义如下:
因此,我们需要求解第3步的概率,求解方法如下:
2.2 求解条件概率
2.3 Laplace校准
当P(a|y)=0,即当某个类别下某个特征项划分没有出现时,会令分类器质量大大降低。为了解决这个问题,引入Laplace校准,它的思想非常简单,就是对没类别下所有划分的计数加1,这样如果训练样本集数量充分大时,并不会对结果产生影响,并且解决了上述频率为0的情况。
3 实例
问题描述
对于SNS社区来说,不真实账号(使用虚假身份或用户的小号)是一个普遍存在的问题,作为SNS社区的运营商,希望可以检测出这些不真实账号,从而在一些运营分析报告中避免这些账号的干扰,亦可以加强对SNS社区的了解与监管。这个问题就是要将社区中所有账号在真实账号和不真实账号两个类别上进行分类,下面我们一步一步实现这个过程。
首先设C = 0表示真实账号,C = 1表示不真实账号。
1、确定特征属性及划分
这一步要找出可以帮助我们区分真实账号与不真实账号的特征属性,在实际应用中,特征属性的数量是很多的,划分也会比较细致,但这里为了简单起见,我们用少量的特征属性以及较粗的划分,并对数据做了修改。
我们选择三个特征属性:a1:日志数量/注册天数,a2:好友数量/注册天数,a3:是否使用真实头像。
下面给出划分: