CH6 贝叶斯方法

CH6 贝叶斯方法

6.1 贝叶斯公式

P ( A ∣ B ) = P ( A , B ) P ( B ) = P ( B ∣ A ) P ( A ) P ( B ) P(A|B) = \frac{P(A,B)}{P(B)} = \frac{P(B|A)P(A)}{P(B)} P(AB)=P(B)P(A,B)=P(B)P(BA)P(A)

6.2 朴素贝叶斯

所有特征条件独立于决策(特征独立性),即:
P ( f 1 , … , f d ∣ c l a s s ) = ∏ i = 1 d P ( f i ∣ c l a s s ) P(f_1,\dots,f_d|class) = \prod^d_{i=1}P(f_i|class) P(f1,,fdclass)=i=1dP(ficlass)

对于连续属性可考虑为概率密度函数,假定 p ( x i ∣ c ) ∼ N ( μ c , i , σ c , i 2 ) p(x_i|c)\sim\mathcal{N}(\mu_{c,i},\sigma_{c,i}^2) p(xic)N(μc,i,σc,i2),其中 μ c , i \mu_{c,i} μc,i σ c , i 2 \sigma_{c,i}^2 σc,i2分别是第c类样本在第i个属性上取值的均值和方差,则有:
p ( x i ∣ c ) = 1 2 π σ c , i e x p ( − ( x i − μ c , i ) 2 2 σ c , i 2 ) p(x_i|c) = \frac{1}{\sqrt{2\pi}\sigma_{c,i}}exp\bigg(-\frac{(x_i-\mu_{c,i})^2}{2\sigma_{c,i}^2}\bigg) p(xic)=2π σc,i1exp(2σc,i2(xiμc,i)2)

6.3 例题

训练样本如下

在这里插入图片描述

问题:现在又来了第七个病人,是一个打喷嚏的建筑工人,请问他患上感冒的概率有多大?

6.3.1 贝叶斯

P ( 感冒 ∣ 打喷嚏,建筑工人 ) = P ( 打喷嚏,建筑工人 ∣ 感冒 ) P ( 感冒 ) P ( 打喷嚏,建筑工人 ) P(感冒|打喷嚏,建筑工人) = \frac{P(打喷嚏,建筑工人|感冒)P(感冒)}{P(打喷嚏,建筑工人)} P(感冒打喷嚏,建筑工人)=P(打喷嚏,建筑工人)P(打喷嚏,建筑工人感冒)P(感冒)

6.3.2 朴素贝叶斯

P ( 感冒 ∣ 打喷嚏,建筑工人 ) = P ( 打喷嚏 ∣ 感冒 ) P ( 建筑工人 ∣ 感冒 ) P ( 感冒 ) P ( 打喷嚏 ) P ( 建筑工人 ) P(感冒|打喷嚏,建筑工人) = \frac{P(打喷嚏|感冒)P(建筑工人|感冒)P(感冒)}{P(打喷嚏)P(建筑工人)} P(感冒打喷嚏,建筑工人)=P(打喷嚏)P(建筑工人)P(打喷嚏感冒)P(建筑工人感冒)P(感冒)

训练一个朴素贝叶斯分类器

数据集如下:
在这里插入图片描述

对测试例子进行分类
在这里插入图片描述

首先估计类先验概率P©,显然有:
P(好瓜 = 是) = 8 17 ≈ 0.471 \frac{8}{17} \approx 0.471 1780.471
P(好瓜 = 否) = 9 17 ≈ 0.529 \frac{9}{17} \approx 0.529 1790.529

然后,为每个属性估计条件概率 P ( x i ∣ c ) P(x_i|c) P(xic)
在这里插入图片描述

在这里插入图片描述

于是,有:
在这里插入图片描述

由于 0.038 > 6.80 × 1 0 − 5 0.038 > 6.80 \times 10^{-5} 0.038>6.80×105,因此,朴素贝叶斯分类器将测试样本判别为好瓜。

需要注意,若某个属性值在训练集中没有与某个类同时出现过,则直接按上述方法将会出现问题。
例如,在使用西瓜数据集3.0训练朴素贝叶斯分类器时,对一个“敲声 = 清脆”的测试用例,有 P 清脆 ∣ 是 = P ( 敲声 = 清脆 ∣ 好瓜 = 是 ) = 0 8 = 0 P_{清脆|是} = P(敲声 = 清脆|好瓜 = 是) = \frac{0}{8} = 0 P清脆=P(敲声=清脆好瓜=)=80=0
则计算出的概率为0,无论该样本的其他属性是什么,哪怕在其他属性上明显像好瓜,分类的结果都是否,这显然不太合理。

为了避免其他属性携带的信息被训练集中未出现的属性值“抹去”,在估计概率值时通常需要进行“平滑”,常用“拉普拉斯修正”。
N N N 表示训练集D中可能的类别数, N i N_i Ni表示第i个属性可能的取值数,修正得:
P ( x i ∣ c ) = ∣ D c , x i ∣ + 1 ∣ D c ∣ + N i P(x_i|c) = \frac{|D_{c,x_i}|+1}{|D_c|+N_i} P(xic)=Dc+NiDc,xi+1

例如,本例子中,类先验概率可估计为:(2为该属性可取“是”,“否”两个类别)
P(好瓜 = 是) = 8 + 1 17 + 2 ≈ 0.474 \frac{8+1}{17+2} \approx 0.474 17+28+10.474
P(好瓜 = 否) = 9 + 1 17 + 2 ≈ 0.526 \frac{9+1}{17+2} \approx 0.526 17+29+10.526

6.4 贝叶斯网络

6.4.1 贝叶斯网络示例

x1
x4
x2
x3
x5
x6
x7

直观上:

  • x1和x2独立
  • x6和x7在x4给定的条件下独立

联合分布:
P ( x 1 ) P ( x 2 ) P ( x 3 ) P ( x 4 ∣ x 1 , x 2 , x 3 ) P ( x 5 ∣ x 1 , x 3 ) P ( x 6 ∣ x 4 ) P ( x 7 ∣ x 4 , x 5 ) P(x1)P(x2)P(x3)P(x4|x1,x2,x3)P(x5|x1,x3)P(x6|x4)P(x7|x4,x5) P(x1)P(x2)P(x3)P(x4∣x1,x2,x3)P(x5∣x1,x3)P(x6∣x4)P(x7∣x4,x5)

6.4.2 例题

使用贝叶斯分类方法预测一个客户(性别=女,婚姻状态=已婚,是否有房=无房),是否会购买此保险,写出详细的计算过程

在这里插入图片描述

解答过程:

1.由训练集建立朴素贝叶斯网络

购买保险
性别
婚姻状态
是否有房

2.由训练集得出先验概率与条件概率

  • P(购买保险 = 是) = 4 10 \frac{4}{10} 104 = 0.4
  • P(购买保险 = 否) = 0.6
  • P(性别 = 女|购买保险 = 是) = 1 4 \frac{1}{4} 41 = 0.25
  • P(性别 = 女|购买保险 = 否) = 4 6 \frac{4}{6} 64 = 0.667
  • P(婚姻状态 = 已婚|购买保险 = 是) = 0
  • P(婚姻状态 = 已婚|购买保险 = 否) = 3 6 \frac{3}{6} 63 = 0.5
  • P(是否有房 = 无房|购买保险 = 是) = 0
  • P(是否有房 = 无房|购买保险 = 否) = 1 6 \frac{1}{6} 61 = 0.167

3.计算联合条件概率
记客户X = (性别 = 女,婚姻状态 = 已婚,是否有房 = 无房)

P(X|购买保险 = 是) = P(性别 = 女|购买保险 = 是) * P(婚姻状态 = 已婚|购买保险 = 是) * P(是否有房 = 无房|购买保险 = 是) = 0.25 * 0 * 0 = 0

P(X|购买保险 = 否) = 0.667 * 0.5 * 0.167 = 0.056

4.预测客户X是否购买保险
P(X|购买保险 = 是) * P(购买保险 = 是) = 0 * 0.4 = 0
P(X|购买保险 = 否) * P(购买保险 = 否) = 0.056 * 0.6 = 0.0336

结论:预测客户X不会购买此保险

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值