朴素贝叶斯法之分类算法
说明
本文只是对于朴素贝叶斯法的其中的一个分类算法的学习。参考来源《统计学习方法》。
一、 输入
训练数据 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . ( x N , y N ) } T= \left \{(x_1,y_1),(x_2,y_2),...(x_N,y_N)\right \} 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
1:
x
i
(
i
)
x_i^{(i)}
xi(i)是第
i
i
i 个样本的第
j
j
j 个特征,其中
x
i
(
j
)
∈
{
a
j
1
,
a
j
2
,
.
.
.
a
j
s
j
}
x_i^{(j)} \in\left \{ a_{j1},a_{j2},...a_{js_j}\right \}
xi(j)∈{aj1,aj2,...ajsj},
2:
a
j
l
a_{jl}
ajl是第
j
j
j个特征可能取的第
l
l
l个值,其中
j
=
1
,
2
,
,
.
.
S
j
,
y
i
∈
{
c
1
,
c
2
,
.
.
.
c
k
}
j=1,2,,..S_j,y_i\in\left \{ c_1,c_2,...c_k \right \}
j=1,2,,..Sj,yi∈{c1,c2,...ck}
二、输出实例 x 的分类
- 计算先验概率及条件概率
P ( Y = C k ) = ∑ i = 1 N I ( j i − c k ) / N , k = 1 , 2 , . . . K P(Y=C_k)=\sum_{i=1}^{N}I(j_i-c_k)/N,k=1,2,...K P(Y=Ck)=∑i=1NI(ji−ck)/N,k=1,2,...K
P ( X j = a j l ∣ Y = c k ) = ∑ i = 1 N I ( x i j = a j l , y i = c k ) / ∑ i = 1 N I ( y i = c k ) P(X^{j}=a_{jl}|Y=c_k)=\sum_{i=1}^{N}I(x_i^{j}=a_{jl},y_i=c_k)/\sum_{i=1}^{N}I(y_i=c_k) P(Xj=ajl∣Y=ck)=∑i=1NI(xij=ajl,yi=ck)/∑i=1NI(yi=ck)其中 j = 1 , 2 , . . . n ; l = 1 , 2 , . . . S ; k = 1 , 2 , . . . K j=1,2,...n;l=1,2,...S; k=1,2,...K j=1,2,...n;l=1,2,...S;k=1,2,...K.
-
对于给定的实例 x = ( x ( 1 ) , x ( 2 ) , . . . x ( n ) ) T x=(x^{(1)},x^{(2)},...x^{(n)})^T x=(x(1),x(2),...x(n))T计算
P ( Y = c k ) ∏ j = 1 n P ( X j = x j ∣ Y = c k ) , k = 1 , 2 , . . . K P(Y=c_k)\prod_{j=1}^{n}P(X^{j}=x^{j}|Y=c_k), k=1,2,...K P(Y=ck)∏j=1nP(Xj=xj∣Y=ck),k=1,2,...K -
确定实例 x x x 的类
y = a r g m a x P ( Y = c k ) ∏ j = 1 n P ( X ( j ) = x ( j ) ∣ Y = c k ) y=arg\ max P(Y=c_k)\prod_{j=1}^{n}P(X^{(j)}=x^{(j)}|Y=c_k) y=arg maxP(Y=ck)∏j=1nP(X(j)=x(j)∣Y=ck)
以上就是朴素贝叶斯法之分类算法的思路过程。关于朴素贝叶斯法具体详情可以参考《统计学习方法》。