李航《统计学习方法》第4章习题答案参考

第 4 章 朴素贝叶斯法


浅谈极大似然估计与贝叶斯估计

极大似然估计:频率学派,认为参数是确定存在只是未知的,并且觉得出现的状态假设是按概率最大的情况出现的,所以对极大似然函数求极值就可以得到参数 θ .(下述 D 为训练数据集)

θMLE=argmaxθP(D|θ)

贝叶斯估计 : 贝叶斯学派,认为参数是不确定的,也是一个随机变量,所以给定输入不能得到输出,只能根据先验概率得出输出的期望:

E[y|x,D]=P(y|x,θ)P(θ|D)dθ

所以呢,想要求后验概率 P(θ|D) , 想起贝叶斯公式:
P(θ|D)=P(D|θ)P(θ)P(D)=P(D|θ)P(θ)P(D|θ)P(θ)dθ

但是积分看到就烦,而且不好计算,还可能不存在解析解,所以呢,就将就一下,转而求极大后验概率:
θMAP=argmaxθP(D|θ)P(θ)

一看,两类估计非常相似,为什么要提贝叶斯估计呢,是因为有时概率是做分母的,比如NLP中,测试集中包含训练集里没有的词,然后概率就为0了,NB里面,是假设i.i.d的,有一个为0就没得算了,在进行模型评估的时候计算一个pvalue,你也麻烦了。所以呢,一般需要对数据进行平滑化处理,常用的是Laplace换句话说就是add-one smoothing 就是管你什么情况 对于所有的词我都默认出现过一次了.

说起这个,由于出现频次太低,语料库有比较大的时候,可能出现下溢出。就是太太太小了,都约为0 那还比个什么啊,所以这个应对措施是取对数.


4.1 用极大似然估计法推出朴素贝叶斯法中的概率估计公式(4.8)及(4.9).

P.S P(Y=ck)=Ni=1I(yi=ck)N(4.8) ;
P(X(j)=ajl|Y=ck)=Ni=1I(x(j)i=ajl,yi=ck)Ni=1I(yi=ck)j=1,2,,n;l=1,2,,Sj;k=1,2,,K(4.9)

证明:(4.8)
p=P(y=ck),q=P(x(j)1=ajl|yi=ck) , m=Ni=1I(yi=ck) , n=Ni=1I(x(j)i=ajl,yi=Ck)
M 为我们假设的概率模型;
根据极大似然估计,我们认为 y 独立同分布,似然函数为:

P=P(y1,y2,,yN|M)=P(y1|M)P(y2|M)P(yN|M)=pm (1p)Nm

P 取对数,并求导,令导数为0求 p 的极大似然:
logPp=mpNm1p=0

求得 p=mN ,即 P(Y=ck)=Ni=1I(yi=ck)N .

(4.9)

P=P(x(j)1,x(j)2,,x(j)m|yi=ck,M)=P(x(j)1|yi=ck,M)P(x(j)2|yi=ck,M)P(x(j)m|yi=ck,M)=qn (1q)mn

同上可得 q=nm ,即 P(X(j)=ajl|Y=ck)=Ni=1I(x(j)i=ajl,yi=Ck)Ni=1I(yi=ck) .

4.2 用贝叶斯估计法推出朴素贝叶斯法中的概率公式(4.10)及(4.11)

P.S 条件概率的贝叶斯公式:

P(X(j)=ajl|Y=ck)=Ni=1I(x(j)i=ajl,yi=ck)+λNi=1I(yi=ck)+Sjλ(4.10)

显然 l=1,2,,Sj,k=1,2,,K, 有:
Pλ(X(j)=ajl|Y=ck)>0l=1SjP(X(j)=ajl|Y=ck)=1

这表明(4.10)为一个概率分布
先验概率的贝叶斯估计:
Pλ(Y=ck)=Ni=1I(yi=ck)+λN+Kλ(4.11)

证明:(记号同上一题) Y 的取值一共有 K 种情况, λ 表示各种情况的取值初始值,即每种情况都有 λ 次发生,所以 θ 的先验概率为: P(θ)=pλ(1p)(K1)λ

P(D|θ)P(θ)=P(y1,y2,,yN|D)P(θ)=P(y1|D)P(y2|D)P(yN|D)P(θ)=pm+λ (1p)Nm+(k1)λ

同上题求极值得: Pλ(Y=ck)=Ni=1I(yi=ck)+λN+Kλ
同理可证(4.10)式.

你可能感兴趣的:(机器学习,数学)