朴素贝叶斯法 NaiveBayes N a i v e B a y e s 是基于贝叶斯定理与特征条件独立假设的分类方法。朴素一词也意味着它是一种最简单、常见的贝叶斯方法,朴素贝叶斯是贝叶斯证据独立的表达形式,属于一种特例。
4.1 朴素贝叶斯的学习和分类
4.1.1 概率论基础
先验概率、条件概率和后验概率
先验概率:事件发生前的预判概率。可以是基于历史数据的统计,可以由背景常识得出,也可以是人的主观观点给出。一般都是单独事件概率,如 P(x) P ( x ) , P(y) P ( y ) 。
条件概率:一个事件发生后另一个事件发生的概率。一般的形式为 P(x|y) P ( x | y ) 表示 y y 发生的条件下 发生的概率。
后验概率:事件发生后求的反向条件概率;或者说,基于先验概率求得的反向条件概率。一般表示为 P(y|x) P ( y | x ) 。
从原因到结果的论证称为“先验的”,而从结果到原因的论证称为“后验的”。
在概率论中, y→x y → x 意味着 y y 由这个原因呈现出 这个特征,我们将 x x 表示为 特征 相当于 结果 而不是 原因,
同时,我们将 表示为 类别、值等 等价于 原因。
先验概率是指根据以往经验和分析得到的概率,如全概率公式 中的 ,它往往作为“由因求果”问题中的“因”出现。后验概率是指在得到“结果”的信息后重新修正的概率,是“执果寻因”问题中的“因” 。后验概率是基于新的信息,修正原来的先验概率后所获得的更接近实际情况的概率估计。先验概率和后验概率是相对的。
先验概率的分类:
利用过去历史资料计算得到的先验概率,称为客观先验概率;
当历史资料无从取得或资料不完全时,凭人们的主观经验来判断而得到的先验概率,称为主观先验概率。
贝叶斯公式的推导过程:
条件概率
得到 P(x,y) P ( x , y )
同理
将 P(x,y) P ( x , y ) 代入上式
这里: P(y|x) P ( y | x ) 是后验概率,一般是我们求解的目标。
4.2 朴素贝叶斯基本方法
我们的目标是,根据
x
x
, 找出 后验概率 最大的
y
y
值。
先验概率分布
条件概率分布
于是可以学习到联合概率分布 P(X,Y)=P(X|Y)P(Y) P ( X , Y ) = P ( X | Y ) P ( Y ) 。
但是正常情况下 条件概率分布 P(X=x|Y=ck) P ( X = x | Y = c k ) 有指数级数量的参数,计算上不可行。
因此,朴素贝叶斯方法的核心 朴素 就是对条件概率分布 作出了 条件独立性的假设
等于说用于分类的特征在类的条件下都是条件独立的,它使得贝叶斯方法简化的同时,也一定程度上降低的分类的精确性。
具体,基于条件独立假设的条件概率分布
具体推导如下
朴素贝叶斯法分类时,对给定的输入
x
x
,通过学习到的模型计算后验概率分布 ,将后验概率最大的类作为
x
x
的类输出
由全概率公式
朴素贝叶斯分类器可表示为
上式中,分母对所有 ck c k 都是相同的,所以去掉分母
4.3 后验概率最大化的含义
上述朴素贝叶斯法将实例分到后验概率最大的类中,等价于期望风险最小化。
证明详见 《统计学习方法》 P48−49 P 48 − 49
4.4 朴素贝叶斯的参数估计
4.4.1 极大似然估计
先验概率
P(Y=ck)
P
(
Y
=
c
k
)
的极大似然估计是
设第 j j 个特征 可能取值的集合为 {aj1,aj2,...,ajSj} { a j 1 , a j 2 , . . . , a j S j } ,条件概率 P(X(j)=ajl|Y=ck) P ( X ( j ) = a j l | Y = c k ) 的极大似然估计是
式中, x(j)i x i ( j ) 是第 i i 个样本的第 个特征; ajl a j l 是第 j j 个特征可能取的第 个值; I I 为 指数函数。
4.4.2 学习与分类算法
朴素贝叶斯算法
Bayes
B
a
y
e
s
algorithm)
a
l
g
o
r
i
t
h
m
)
输入: 训练数据
T={(x1,y1),(x2,y2),...,(xN,yN)}
T
=
{
(
x
1
,
y
1
)
,
(
x
2
,
y
2
)
,
.
.
.
,
(
x
N
,
y
N
)
}
,其中
xi=(x(1)i,x(2)i,...,x(n)i)T
x
i
=
(
x
i
(
1
)
,
x
i
(
2
)
,
.
.
.
,
x
i
(
n
)
)
T
,
x(j)i
x
i
(
j
)
是第
i
i
个样本的第 个特征,
x(j)i∈{aj1,aj2,...,ajSj}
x
i
(
j
)
∈
{
a
j
1
,
a
j
2
,
.
.
.
,
a
j
S
j
}
,
ajl
a
j
l
是第
j
j
个特征可能取的第 个值,
j=1,2,...,n;l=1,2,...,Sj;yi∈{c1,c2,...,cK}
j
=
1
,
2
,
.
.
.
,
n
;
l
=
1
,
2
,
.
.
.
,
S
j
;
y
i
∈
{
c
1
,
c
2
,
.
.
.
,
c
K
}
,实例
x
x
;
输出:实例 的分类
(1)计算先验概率及条件概率
(2)对于给定的实例 x=(x(1),x(2),...,x(n))T x = ( x ( 1 ) , x ( 2 ) , . . . , x ( n ) ) T ,计算
(3)确定实例 x x 的分类
4.4.3 贝叶斯估计
用极大似然估计可能会出所要估计的概率值为0的情况,解决这一问题的方法是采用贝叶斯估计,条件概率的贝叶斯估计是
λ≥0 λ ≥ 0 ,当 λ=0 λ = 0 时,为极大似然估计,当 λ=1 λ = 1 时,为拉普拉斯平滑 (Laplace ( L a p l a c e smoothing) s m o o t h i n g )
同样,先验概率的贝叶斯估计是