原理:通过对数据和类别建模联合分布来求给定数据x,判断所属类别y。
十万个为什么之一:为什么要建模?有什么用呢?
强行解惑:我们知道如果想通过给定样本x,来判断所属类别y;即。贝叶斯的出发点则是,这不······联合概率就出来了!!!
解决步骤:通过上面分析,我们需要求解,不妨继续往下面推导试试,总得有个建模的流程吧:
上式对于分母来说,其实是相同的,关键就在于分子,P(y)不用多说,就是该类别的概率,直接根据训练集极大似然统计就行,而后面条件概率直接计算的话,复杂度极高;毕竟对于每个特征,可能的取值有个;y的取值可能有K个(所属类别个数)。那么参数量为,此为指数级复杂度。就是因为所有的特征联合到了一起才导致了这种结果;因此朴素贝叶斯很直接直接让上述条件概率的特征进行解耦。即条件独立性假设;不同的特征相互独立,不产生影响(虽然不大合理,最起码能求解问题,总比完全不能求要好吧!)。最终条件概率转化为,参数量直接变成了。除了复杂度影响外,这种方式特征独立性还可以带来一个好处便是:如果直接建模特征的联合的话,我们知道,我们手头的数据集往往不包含数据特征的所有情况,那么由于有些特征组成没有出现,则我们统计得到的,这就很一刀切呀,收集的数据集中没有并不代表现实际不存在。
综上:我们要求解的P(y|x)其实也就是在求,分母P(x)都一样就直接省略了。然后这个式子直接极大似然估计就好了,也就是统计数据集中各类别的先验概率,以及在类别确定下,特定特征出现的条件概率;然后相乘给出最大的y。
最后放一道例题帮助大家进一步巩固:15个样本,每个样本两个特征,每个特征包含各自的可能取值情况。类别Y∈{-1,1}