朴素贝叶斯
后验概率最大化的意义
对于自然界的某一个模型有联合分布P(x,y)
期望损失如下:

假设模型输出 Y 有 k 个取值,即 k 个种类。对于一个确定的 x ,损失期望如下:

为什么朴素贝叶斯损失期望是这个样子的呢?解释如下:
其中y
为输出值,Ck
为各个分类,x
为输入值。

其正确的分类是

由朴素贝叶斯分类法的思路可以知道,我们需要对每一个分类 Ck 都进行概率计算。
设所有错误分类的概率如下:

注意到,式子中是没有

因为正确分类时,损失函数L()为 0
所以我们的损失期望就可以使用下面的式子来表示

现在我们需要确定一个思路:
- 我们需要让损失期望降低到最小
- 那么我们就需要找出一个 y 来让上面的式子的值最小
要注意到在这里,输出的 y 值是不确定的,我们需要通过找到一个 y 来最小化上面的式子,从而确定 y 值。
在预测时,我们需要将损失期望降低到最小。按照我们的思路,问题就归结为找到 y 来极小化损失期望,或者说极小化损失期望,从而找到 y。
现在假设我们的学习器已经学习到了模型参数,并且能够贴切的表达模型。即输入的 x 而得到的各个类 Ck 的概率与自然界的一样的。
由后验概率的公式,我们可以得到下面的式子

其中P(x)是抽取到输入x的概率,这个概率不会影响到输出,并且它对于每一个类 Ck 都是一样的。
我们极小化损失期望,就是极小化上面的式子。而P(x)并没有影响,所以我们只需要极小化下面的式子

这里我们使用几个简单的例子来代入
现在有输出集合 Y 有 4个类,分别为 y1,y2,y3,4。而真实类对应的有c1,c2,c3,c4。
我们现在输入x,其真实值为c1
P(c1|x)的概率应该是最大的。为什么?我们现在做一个简单的假设
自然界的概率分布:如果有x0时,则输出应该是c1。
如果P(c1|x)不是最大的,那么上面的假设将不会成立,因为输出 除了c1之外的类
概率更加高。
根据上面所说,我们可以得下面的 4 个式子

其中P1是最小的。也就是说,如果分类正确了,那么

应该是最小的。
如果学习器已经能够模拟自然界的概率分布,那么此时我们就选择概率最大的那一个作为输出。比如学习器输入x时,得出 c1 的概率最大,这样也意味着在自然界的模型中,如果输入 x ,那么输出 c1的概率也是最大的。按照上面举的例子思路,那么我们就选择 c1 作为模型输出。应该这样我们的损失是最小的。
贝叶斯分类公式


可以使用极大似然估计来计算,也可以用贝叶斯估计来计算

同理
极大似然估计

其中 aji 表示 第 j个特征的第 i 个取值

贝叶斯估计

修正:图中应该是拉普拉斯平滑
后语
笔者在学习朴素贝叶斯时,一直无法理解为何选择概率最大的分类就是最小化风险(损失),但后面笔者依靠自己的理解得出学习概率在某种程度上可以等于自然界概率的结论,笔者的理解也是基于此前提。如果笔者有错漏的地方,也烦请各位读者海涵指正。
网友评论