主要参考书目《统计学习方法》第2版,清华大学出版社
参考书目 Machine Learning in Action, Peter Harrington
用于考研复试笔记,所以写的很简洁,自己能看懂就行。有学习需求请绕道,参考吴恩达机器学习或以上书籍,讲得比大多数博客好。
概念
朴素贝叶斯法(naive Bayes)对条件概率分布做了条件独立性的假设。由于这是一个较强的假设,朴素贝叶斯法也由此得名。
P
(
X
=
x
∣
Y
=
c
k
)
=
P
(
X
(
1
)
=
x
(
1
)
,
.
.
.
,
X
(
n
)
=
x
(
n
)
∣
Y
=
c
k
)
=
∏
j
=
1
n
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
P(X=x|Y=c_k)=P(X^{(1)}=x^{(1)},...,X^{(n)}=x^{(n)}|Y=c_k)=\prod\limits_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k)
P(X=x∣Y=ck)=P(X(1)=x(1),...,X(n)=x(n)∣Y=ck)=j=1∏nP(X(j)=x(j)∣Y=ck)
就是说,对于每一种属性发生的概率,是它每一个维度的值发生的概率的乘积
y = arg max c k P ( Y = c k ) ∏ j P ( X ( j ) = x ( j ) ∣ Y = c k ) y=\argmax_{c_k}P(Y=c_k)\prod\limits_j P(X^{(j)}=x^{(j)}|Y=c_k) y=ckargmaxP(Y=ck)j∏P(X(j)=x(j)∣Y=ck)
原理
极大似然估计
算法4.1朴素贝叶斯算法(naïve Bayes algorithm)
输入:训练数据
T
=
{
(
x
1
,
y
1
)
,
(
x
2
,
y
2
)
,
.
.
.
,
(
x
N
,
y
N
)
}
T=\{(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\}
T={(x1,y1),(x2,y2),...,(xN,yN)},其中
x
i
=
(
x
i
(
1
)
,
x
i
(
2
)
,
.
.
.
,
x
i
(
n
)
)
T
x_i=(x_i^{(1)},x_i^{(2)},...,x_i^{(n)})^{T}
xi=(xi(1),xi(2),...,xi(n))T,
x
i
(
j
)
x_i^{(j)}
xi(j)是第
i
i
i个样本的第
j
j
j个特征,
x
i
(
j
)
∈
{
a
j
1
,
a
j
2
,
.
.
.
,
a
j
s
j
}
x_i^{(j)} \in \{a_{j1},a_{j2},...,a_{js_j}\}
xi(j)∈{aj1,aj2,...,ajsj},
a
j
l
a_{jl}
ajl是第
j
j
j个特征可能取的第
l
l
l个值,
j
=
1
,
2
,
.
.
.
,
n
,
l
=
1
,
2
,
.
.
.
,
S
j
,
y
j
∈
{
c
1
,
c
2
,
.
.
.
,
c
k
}
j=1,2,...,n, l=1,2,...,S_j,y_j \in \{c_1,c_2,...,c_k\}
j=1,2,...,n,l=1,2,...,Sj,yj∈{c1,c2,...,ck};实例
x
x
x;
输出:实例
x
x
x的分类
比如要判断
x
=
(
2
,
S
)
T
x=(2,S)^T
x=(2,S)T是哪一类
P
(
Y
=
1
)
P
(
X
(
1
)
=
2
∣
Y
=
1
)
P
(
X
(
2
)
=
S
∣
Y
=
1
)
=
1
45
P(Y=1)P(X^{(1)}=2|Y=1)P(X^{(2)}=S|Y=1)=\frac{1}{45}
P(Y=1)P(X(1)=2∣Y=1)P(X(2)=S∣Y=1)=451
P
(
Y
=
−
1
)
P
(
X
(
1
)
=
2
∣
Y
=
−
1
)
P
(
X
(
2
)
=
S
∣
Y
=
−
1
)
=
1
15
P(Y=-1)P(X^{(1)}=2|Y=-1)P(X^{(2)}=S|Y=-1)=\frac{1}{15}
P(Y=−1)P(X(1)=2∣Y=−1)P(X(2)=S∣Y=−1)=151
所以它属于-1类
贝叶斯估计
为了防止要估计的概率值为0的情况设
λ
>
0
\lambda>0
λ>0
P
λ
(
X
(
j
)
=
a
j
l
∣
Y
=
c
k
)
=
∑
i
=
1
(
j
)
I
(
x
i
(
j
)
=
a
j
l
,
y
i
=
c
k
)
+
λ
∑
i
=
1
N
I
(
y
i
=
c
k
)
+
S
j
λ
P_{\lambda}(X^{(j)}=a_{jl}|Y=c_k)=\frac{\sum\limits_{i=1}^{(j)}I(x_i^{(j)}=a_{jl},y_i=c_k)+\lambda}{\sum\limits_{i=1}^NI(y_i=c_k)+S_j\lambda}
Pλ(X(j)=ajl∣Y=ck)=i=1∑NI(yi=ck)+Sjλi=1∑(j)I(xi(j)=ajl,yi=ck)+λ
当 λ = 0 \lambda=0 λ=0时,为极大似然估计,当 λ = 1 \lambda=1 λ=1时,为拉普拉斯平滑(Laplacian smoothing)