核心:基于贝叶斯定理与特征条件独立假设
- 给定训练集,基于特征条件独立假设学习输入和输出的联合概率分布
- 基于此模型,对给定输入x,用贝叶斯定理求出后验概率最大的输出y
先验概率分布:
P
(
Y
=
c
k
)
P(Y=c_k)
P(Y=ck)
根
据
以
往
经
验
和
分
析
得
到
的
概
率
\color{blue}根据以往经验和分析得到的概率
根据以往经验和分析得到的概率
条件概率分布:
P
(
X
=
x
∣
Y
=
c
k
)
P(X=x| Y=c_k)
P(X=x∣Y=ck)
事
情
已
经
发
生
,
要
求
这
件
事
情
发
生
的
原
因
是
由
某
个
因
素
引
起
的
可
能
性
的
大
小
\color{blue}事情已经发生,要求这件事情发生的原因是由某个因素引起的可能性的大小
事情已经发生,要求这件事情发生的原因是由某个因素引起的可能性的大小
- 发生B的情况下发生A的条件概率:
- 全概率公式,发生A的全部情况:
- 通过先验的条件概率,求解后验概率:
朴素贝叶斯理论推导
-
当有一个新样本x进来,如何判断它的类别?
概率角度看,就是求给定x,它属于哪个类别的概率最大。 a r g m a x P ( y k ∣ x ) arg max P(y_k|x) argmaxP(yk∣x) -
引入贝叶斯定理和全概率公式求解
P ( y k ) P(y_k) P(yk)是先验概率,可以通过训练计算得到
P ( x ∣ y k ) = P ( x 1 , x 2 , . . . , x n ∣ y k ) P(x|y_k)=P(x_1,x_2,...,x_n|y_k) P(x∣yk)=P(x1,x2,...,xn∣yk),此参数规模为指数级别 , S i S_i Si为 x i x_i xi的可取值个数
解释:因为x之间存在关系,需要把这些关系全部考虑进去,就得到上面的参数个数 -
上面的求解显然不可行,所以NB做了条件概率分布的独立性假设,即x之间相互独立
-
把上面的公式带入到原来的公式里:
-
得到朴素贝叶斯分类器:
分母是一样的,所以可以忽略这个部分。都是类别y的全概率,最终得到:
朴素贝叶斯法的参数估计
极大似然估计
我们现在知道要求解
P
(
y
k
)
和
P
(
x
i
∣
y
k
)
P(y_k)和P(x_i|y_k)
P(yk)和P(xi∣yk),可以使用极大似然估计法来估计概率。
(其实是用样本来推断模型的参数)
-
P
(
y
=
c
k
)
的
极
大
似
然
估
计
\color{red}P(y=c_k)的极大似然估计
P(y=ck)的极大似然估计是样本中
c
k
c_k
ck出现次数除以样本容量
以下是极大似然估计的推导过程(可以参考一下):
-
P
(
x
i
∣
y
k
)
的
极
大
似
然
估
计
是
\color{red}P(x_i|y_k)的极大似然估计是
P(xi∣yk)的极大似然估计是
第j个特征中x可能取值的集合为 a j l a_{jl} ajl,这条式子的解释:
属于第j个特征且类别为 c k c_k ck的样本x的数量,除以类别为 c k c_k ck的样本量
实例理解:特征有身高和体重,类别是男女。那么可以有
P
(
X
=
身
高
大
于
1
米
7
∣
Y
=
男
)
=
身
高
大
于
1
米
7
且
类
别
为
男
的
样
本
数
类
别
为
男
的
样
本
数
P(X=身高大于1米7|Y=男)=\frac{身高大于1米7且类别为男的样本数}{类别为男的样本数}
P(X=身高大于1米7∣Y=男)=类别为男的样本数身高大于1米7且类别为男的样本数
通常实际中是,给定身高a和体重b,判断这个人是男是女。那么就是应用朴素贝叶斯的时候,直接计算下面公式,哪个概率大,哪个就是答案啦~:
P
(
Y
=
m
a
l
e
)
P
(
X
h
e
i
g
h
t
=
a
∣
Y
=
m
a
l
e
)
P
(
X
w
e
i
g
h
t
=
b
∣
Y
=
m
a
l
e
)
P(Y=male)P(X_{height}=a|Y=male)P(X_{weight}=b|Y=male)
P(Y=male)P(Xheight=a∣Y=male)P(Xweight=b∣Y=male)
P
(
Y
=
f
e
m
a
l
e
)
P
(
X
h
e
i
g
h
t
=
a
∣
Y
=
f
e
m
a
l
e
)
P
(
X
w
e
i
g
h
t
=
b
∣
Y
=
f
e
m
a
l
e
)
P(Y=female)P(X_{height}=a|Y=female)P(X_{weight}=b|Y=female)
P(Y=female)P(Xheight=a∣Y=female)P(Xweight=b∣Y=female)
贝叶斯参数估计
-
极大似然估计的隐患问题:
数据不能覆盖所有实际情况,可能没有出现某个参数与类别的组合,这样会直接把概率直接判定为0,但不代表真实情况没有这种组合,这时会影响后验概率的结果,使得分类产生偏差.
解 决 方 法 : 贝 叶 斯 估 计 \color{red}{解决方法:贝叶斯估计} 解决方法:贝叶斯估计 -
先验概率的贝叶斯估计(K为类别数)
-
条件概率的贝叶斯估计
λ ≥ 0 \lambda \ge 0 λ≥0, S j S_j Sj表示 x j x_j xj可能取值的中数(也有取均值的),分子分母多出来这个东西的意义是在随机变量各个取值的频数上赋予一个正数 λ \lambda λ,当 λ = 0 \lambda=0 λ=0就是极大似然估计, λ = 1 \lambda=1 λ=1称为拉普拉斯平滑