------朴素贝叶斯是一个基于概率的多分类算法
举个例子,周六了,群主加班的概率是0.3,爬山的概率是0.2,和wanxian约会的概率是0.5.这时贝叶斯就会判定群主周六和wanxian约会去了(选概率最大的)。
1、p(Y|X)表示X发生条件下Y发生的概率。p(X,Y)表示两者同时发生的概率。那么我们可以得到:p(Y|X)=p(X,Y)/p(X)=p(X|Y)*p(Y)/p(X)
2、现在我有一组数据,特征X是m行n列,输出Y,有k个类别,那么上式可以改为
p(Y=|)=p(=,=,....,=|Y=)*p(Y=)/p()
上式的意义就是这个样本输出为Y=的概率(最开始我举的例子就是Y=加班/Y=爬山/Y=约会)
现在我们来对这个式子进行简化处理下,因为对某个样本t来说,p()都是一样的,所以我们去掉分母
p(Y=c_{k} |X^(t) )=p(X_{1} =x_{1} ,X_{2} =x_{2} ,....,X_{n} =x_{n} |Y=C_{k} )*p(Y=C_{k} )
此时贝叶斯提出了第一个假设,这n个特征是相互独立的。那么上式可以改为
p(Y=|)=p(=|Y=)*P(=|Y=)*......*p(=|Y=)*p(Y=)
现在我们要对上面这个式子进行求解
p(Y=)是很容易求解的。我们用样本类别的数目除以样本的总数目
那带删除线的部分我们怎么求解呢?这时我们引入三种假设
1.如果X是离散的值,那么我们假设X符合多项式分布
2.如果X是非常稀疏的离散值,那么我们假设X符合伯努力分布
上面两种情况,删除线的部分可以理解为在输出类别中,出现的概率
3.如果X是连续值,我们可以假设他是正态分布
贝叶斯的主要缺点来自于我们推导过程中使用的两个假设:特征不相关(实际上很难符合);数据符合某种特定分布