贝叶斯分类器

Posted 一蓑烟雨晴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了贝叶斯分类器相关的知识,希望对你有一定的参考价值。

文章目录

7.1 贝叶斯决策论

贝叶斯决策论是在概率框架下实施决策的基本方法。对分类任务来说,在所有相关概率都已知的理想情形下,贝叶斯决策论考虑如何基于这些概率和误判损失来选择最优的类别标记。下面我们以多分类任务为例来解释其基本原理。

假设有 N N N种可能的类别标记,即 Y = c 1 , c 2 , … , c N , λ i j \\mathcalY=\\left\\c_1, c_2, \\ldots, c_N\\right\\, \\lambda_i j Y=c1,c2,,cN,λij是将一个真实标记为 c j c_j cj的样本误分类为 c i c_i ci所产生的损失。基于后验概率 P ( c i ∣ x ) P(c_i|x) P(cix)可获得将样本 x x x分类为 c i c_i ci所产生的期望损失,即在样本 x x x上的“条件风险”:
R ( c i ∣ x ) = ∑ j = 1 N λ i j P ( c j ∣ x ) R\\left(c_i \\mid \\boldsymbolx\\right)=\\sum_j=1^N \\lambda_i j P\\left(c_j \\mid \\boldsymbolx\\right) R(cix)=j=1NλijP(cjx)
我们的任务是寻找一个判别准则 h : X ↦ Y h: \\mathcalX \\mapsto \\mathcalY h:XY以最小化总体风险:
R ( h ) = E x [ R ( h ( x ) ∣ x ) ] R(h)=\\mathbbE_\\boldsymbolx[R(h(\\boldsymbolx) \\mid \\boldsymbolx)] R(h)=Ex[R(h(x)x)]

显然,对每个样本 x x x,若 h h h能最小化条件风险 R ( h ( x ) ∣ x ) R(h(x)|x) R(h(x)x),则总体风险 R ( h ) R(h) R(h)也将被最小化。这样就产生了贝叶斯判定准则:为最小化总体风险,只需在每个样本上选择那个能使条件风险 R ( c ∣ x ) R(c|x) R(cx)最小的类别标记,即
h ∗ ( x ) = arg ⁡ min ⁡ c ∈ Y R ( c ∣ x ) h^*(\\boldsymbolx)=\\undersetc \\in \\mathcalY\\arg \\min R(c \\mid \\boldsymbolx) h(x)=cYargminR(cx)
此时, h ∗ h^* h称为贝叶斯最优分类器,与之对应的总体风险 R ( h ∗ ) R(h^*) R(h)称为贝叶斯风险。 1 − R ( h ∗ ) 1 - R(h^*) 1R(h)反映了分类器所能达到的最好性能,即通过机器学习所能产生的模型精度的理论上限。
具体来说,若目标是最小化分类错误率,则误判损失 λ i j \\lambda_i j λij可以写为
λ i j = 0 ,  if  i = j 1 ,  otherwise  \\lambda_i j= \\begincases0, & \\text if i=j \\\\ 1, & \\text otherwise \\endcases λij=0,1, if i=j otherwise 
此时条件风险为
R ( c ∣ x ) = 1 − P ( c ∣ x ) R(c|x)=1-P(c|x) R(cx)=1P(cx)
于是,最小化分类错误率的贝叶斯最优分类器为:
h ∗ ( x ) = arg ⁡ max ⁡ c ∈ Y P ( c ∣ x ) h^*(\\boldsymbolx)=\\undersetc \\in \\mathcalY\\arg \\max P(c \\mid \\boldsymbolx) h(x)=cYargmaxP(cx)
即对每个样本 x x x,选择能使后验概率 P ( c ∣ x ) P(c|x) P(cx)最大的类别标记

想要使用贝叶斯判定准则来最小化决策风险,首先要获得后验概率 P ( c ∣ x ) P(c|x) P(cx)。然而,在现实任务中这通常难以直接获得。从这个角度来看,机器学习所要实现的是基于有限的训练样本集尽可能准确地估计出后验概率 P ( c ∣ x ) P(c|x) P(cx)。大体来说,主要有两种策略:给定 x x x,可通过直接建模 P ( c ∣ x ) P(c|x) P(cx)来预测c,这样得到的是“判别式模型”;也可以先对联合概率分布 P ( x , c ) P(x,c) P(x,c)建模,然后再由此获得 P ( c ∣ x ) P(c|x) P(cx),这样得到的是“生成式模型”。

显然,前面介绍的决策树、BP神经网络、支持向量机等,都可纳入判别式模型的范畴。对生成式模型来说,必然考虑
P ( c ∣ x ) = P ( x , c ) P ( x ) = P ( c ) P ( x ∣ c ) P ( x ) P(c \\mid \\boldsymbolx)=\\fracP(\\boldsymbolx, c)P(\\boldsymbolx)=\\fracP(c)P(\\boldsymbolx|c)P(\\boldsymbolx) P(cx)=P(x)P(x,c)=P(x)P(c)P(xc)
其中, P ( c ) P(c) P(c)是类“先验”概率; P ( x ∣ c ) P(x|c) P(xc)是样本 x x x相对于类标记 c c c的类条件概率,或者称为“似然”; P ( x ) P(x) P(x)是用于归一化的“证据”因子。对给定样本 x x x,证据因子 P ( x ) P(x) P(x)与类标记无关,因此估计 P ( c ∣ x ) P(c|x) P(cx)的问题就转化为如何基于训练数据D来估计先验 P ( c ) P(c) P(c)和似然 P ( x ∣ c ) P(x|c) P(xc).
类先验概率 P ( c ) P(c) P(c)表达了样本空间中各类样本所占的比例,根据大数定律,当训练集包含充足的独立同分布样本时, P ( c ) P(c) P(c)可通过各类样本出现的频率来进行估计。
对类条件概率 P ( x ∣ c ) P(x|c) P(xc)来说,由于它涉及关于 x x x所有属性的联合概率,直接根据样本出现的频率来估计将会遇到严重的困难。例如,假设样本的 d d d个属性都是二值的,则样本空间将由 2 d 2^d 2d种可能的取值,在现实应用中,这个值往往远大于训练样本数 m m m,也就是说,很多样本取值在训练集中根本没有出现,直接使用频率来估计 P ( x ∣ c ) P(x|c) P(xc)显然不可行,因为“未被观测到”与“出现概率为零”通常是不同的。

7.2 极大似然估计

估计类条件概率的一种常用策略是先假定其具有某种确定的概率分布形式,再基于训练样本对概率分布的参数进行估计。具体地,记关于类别 c c c的类条件概率为 P ( x ∣ c ) P(x|c) P(xc),假设 P ( x ∣ c ) P(x|c) P(x

以上是关于贝叶斯分类器的主要内容,如果未能解决你的问题,请参考以下文章

基于朴素贝叶斯分类器的情感分析

基于C++的朴素贝叶斯分类器

基于C++的朴素贝叶斯分类器

基于C++的朴素贝叶斯分类器

机器学习笔记——朴素贝叶斯构建“饥饿站台”豆瓣短评情感分类器

从朴素贝叶斯分类到贝叶斯网络