【机器学习具体解释】概率生成模型与朴素贝叶斯分类器

转载请注明出处http://blog.csdn.net/luoshixian099/article/details/51028244

1.概率生成模型

首先介绍生成模型的概念,然后逐步介绍採用生成模型的步骤。

1.1概念

即对每一种类别Ck分别建立一种数据模型p(x|Ck)。把待分类数据x分别带入每种模型中,计算后验概率p(Ck|x),选择最大的后验概率相应的类别。

如果原始数据样本有K类,生成学习算法是通过对原始数据类p(x|Ck)p(Ck)建立数据类模型后,採用贝叶斯定理从而得出后验概率p(Ck|x)。对待分类样本x分别计算属于每一个类别的后验概率p(Ck|x),取最大可能的类别。

arg max(k)=p(Ck|x)=p(x,Ck)p(x)=p(x|Ck)p(Ck)jp(x|Cj)p(Cj)

  • 二分类的情况:(K=2)

    p(C1|x)=p(x,C1)p(x)=p(x|C1)p(C1)p(x|C1)p(C1)+p(x|C2)p(C2)=11+exp(α)=σ(α)
    当中α=lnp(x|C1)p(C1)p(x|C2)p(C2);函数σ(α)=11+exp(α)称为sigmoid函数。

  • 多类的情况:(K>2)
    多分类的情况,是二分类的扩展,称为softmax函数。同样採用贝叶斯定理:

    p(Ck|x)=p(x|Ck)p(Ck)jp(x|Cj)p(Cj)=exp(αk)jexp(αj)

    当中αk=lnp(x|Ck)p(Ck)

1.2高斯分布如果

对于连续变量x,我们首先如果给定详细类条件下数据密度函数p(x|Ck)分布服从多维高斯分布。同一时候全部类别p(x|Ck)具有同样的协方差矩阵
这里写图片描写叙述
二维高斯分布。同样方差,不同期望的三个图形。
这里写图片描写叙述

  • 二分类情况K=2
    把多维高斯分布公式带入上述相应的贝叶斯公式得:
    这里写图片描写叙述
    注意到sigmoid函数參数是关于数据x的线性函数
    下图是2维数据的高斯分布图形:
    这里写图片描写叙述
  • 多分类的情况K>2
    多维高斯分布函数带入softmax函数得:
    这里写图片描写叙述
    注意:αk(x)也是关于样本数据x的线性函数

实际上,不管是连续型数据还是以下将要介绍的离散型数据(朴素贝叶斯分类),仅仅要如果的分布属于指数簇函数,都有广义线性模型的结论。

K=2时为sigmoid函数:參数λ为模型的固有參数
这里写图片描写叙述
K>2时为softmax函数:
这里写图片描写叙述


1.3模型參数的求解

在如果了数据类密度函数p(x|Ck)的情况下,以下须要对模型的參数进行求解。

比如,上述如果了数据为高斯分布,须要计算先验概率p(Ck)及參数μk, .我们採用最大化释然函数的方法求解:
考虑二分类的情况:样本数据为(xn,tn)。样本总量为N,tn=1属于C1类,总数为N1tn=0属于C2类,总数为N2.如果先验概率p(C1)=π;则p(C2)=1π
释然函数:这里写图片描写叙述
分别求偏导数并令为0,得:
这里写图片描写叙述
这里写图片描写叙述
这里写图片描写叙述
这里写图片描写叙述

2.朴素贝叶斯分类器(NBC)

2.1概念

朴素贝叶斯分类器是生成学习算法的一种。考虑一个样本x=(x1,x2,x3...xD),有D个特征,每一个特征xi取值为有限的离散值,这时须要对p(x|y)建立模型。朴素贝叶斯算法做了一种非常强的如果:即给定类别y=c的情况下。每种特征之间相互独立,即有p(x1|y,x2)=p(x1|y);p(x1,x2|y)=p(x1|y)p(x2|y)所以有:
这里写图片描写叙述
条件类概率p(x|y)可依据数据类型建立不同的形式:

  • 当样本数据x取实数值为时,採用高斯分布:p(x|y=c,θ)=Dj=1N(xj|μjc,σ2jc)
  • 当每种特征xj{0,1}时,採用伯努利分布p(x|y=c,θ)=Dj=1Ber(xj|μjc)
  • 当每种特征取值xj{1,2,3,...,K},能够採用multinoulli distribution:p(x|y=c,θ)=Dj=1Cat(xj|μjc)

2.2文本分类

朴素贝叶斯尽管做了非常强的特征独立性如果,却对在文本分类的情况效果非常好。
首先收集全部样本数据中出现过的词,建立一个有序字典,长度为D。对待分类文本x依据字典建立一个长度为D词向量,x=(x1,x2,x3,....,xD),每种特征xj{0,1}。即xj=1表示字典中第j个词在此文本中出现过;反之,xj=0表示字典中第j个词没有在文本中出现过,採用伯努利分布p(x,y)=p(y)p(x|y)=p(y)Dj=1Ber(xj|μjc)
定义:ϕi|y=0=p(xi=1|yi=0),ϕi|y=1=p(xi=1|yi=1),ϕy=p(y=1)
释然函数:
这里写图片描写叙述
最大释然预计得:
这里写图片描写叙述
训练出模型后,对待分类样本依据贝叶斯定理。计算每种类别的后验概率,选择最大的后验概率类别:
这里写图片描写叙述

2.3拉普拉斯平滑

在对文本分类的情况下,假如我们训练分类器採用的训练文本全部xj都为0时。这时模型參数ϕj|y=0=0,ϕj|y=1=0。这时如果须要对待一个文本x分类且xj=1,依据上述朴素贝叶斯方法,得到每种后验概率都为0,即p(y=1|x)=0,P(y=0|x)=0。这是因为上述乘法的缘故,根本原因是ϕj|y=0=0,ϕj|y=1=0。因为样本量有限,预測某个事件的发生概率为0,也是不准确的。
为了解决这样的情况。能够模型參数的分子加上1,同一时候保持和为1。,称为拉普拉斯平滑。
这里写图片描写叙述
这里写图片描写叙述

參考:PRML&&MLAPP

【推广】 免费学中医,健康全家人
原文地址:https://www.cnblogs.com/llguanli/p/8634599.html