朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。
朴素贝叶斯法是一种用来进行分类的方法,它基于两个重要的假设:贝叶斯定理和特征条件独立假设。
- 贝叶斯定理:
- 贝叶斯定理是一种用来估计事件发生概率的数学原理。
- 它告诉我们如何根据已知的信息来计算未知事件的概率。
- 在分类问题中,我们希望找到最有可能的类别,贝叶斯定理帮助我们基于已知信息来估计这些概率。
- 特征条件独立假设:
- 这是朴素贝叶斯法的一个关键假设,它有点“朴素”,因为它通常不完全成立。
- 这个假设意味着在分类问题中,我们假设每个特征(或属性)都是独立的,也就是说,一个特征的出现不受其他特征的影响。
- 尽管这个假设在现实中并不总是成立,但它简化了数学计算,使得贝叶斯分类变得更加可行。
对于给定的训练数据集,首先基于特征条件独立假设学习输入输出的联合概率分布;然后基于此模型,对给定的输入x,利用贝叶斯定理求出后验概率最大的输出y
当我们使用朴素贝叶斯分类时,我们首先从训练数据中学习如何根据特征来预测输出。这是一个两步过程:
步骤 1:学习输入输出的联合概率分布
这个步骤的目标是理解在给定一组输入特征的情况下,对应的输出是什么的可能性有多大。这就好像我们要了解在不同天气条件下,是否会下雨的概率一样。
- 我们收集一堆包含输入和输出的数据,比如天气(晴天、多云、雨天)和是否下雨(是、否)。
- 基于这些数据,我们计算出每种天气情况下下雨的概率。例如,晴天时下雨的概率是多少,多云时下雨的概率是多少等等。
- 这就构建了一个模型,用来描述输入(天气)和输出(是否下雨)之间的关系,也就是输入输出的联合概率分布。
步骤 2:利用贝叶斯定理预测输出
一旦我们建立了这个模型,就可以用它来进行预测。假设我们想知道在某一天是晴天的情况下,是否会下雨。
- 我们有了输入x(晴天),现在我们要找出对应的输出y(是否下雨)的概率。
- 我们使用贝叶斯定理来计算这个后验概率,也就是在已知输入的情况下,输出的概率有多大。
- 贝叶斯定理告诉我们如何从已知的概率(在步骤1中计算的)中计算出后验概率。
- 我们计算每种可能的输出(下雨或不下雨)的后验概率,然后选择具有最高概率的那个作为最终的预测结果。
所以,总的来说,朴素贝叶斯分类就是在学习阶段通过分析训练数据来了解输入和输出之间的关系(联合概率分布),然后在预测阶段使用贝叶斯定理来计算在给定输入情况下的最可能输出。这使我们能够根据已知信息来进行分类或预测。
先验概率和后验概率是统计学和概率论中的两个重要概念,它们描述了事件或假设的概率在不同情境下的变化。
当我们谈论先验概率和后验概率时,可以使用以下类比来理解这两个概念:
- 先验概率就像我们对一个事情的“初始猜测”或“初始估计”。它是在我们了解任何新信息之前,对某个事件或情况的概率的估计。想象一下你要掷一枚骰子,但在掷之前,你猜测每个数字出现的概率是相等的,因为你认为这个骰子是公平的。这个猜测就是先验概率,因为它是在掷骰子之前的猜测。
- 后验概率是在考虑了新信息或证据之后,我们对事件或情况的概率的修正估计。继续上面的骰子的例子,假设你掷了骰子,并且观察到了数字6。现在,你可以更新你的估计,认为数字6出现的概率更高,因为你有了新的证据支持这个想法。这个更新后的概率就是后验概率,因为它是在考虑了新信息后的估计。
所以,先验概率是我们在了解任何新信息之前的初始猜测,而后验概率是在考虑了新信息之后的修正估计。贝叶斯定理是用来从先验概率和新信息中计算后验概率的数学工具,帮助我们更好地根据已知信息来做出估计和决策。
以下是先验概率、后验概率和贝叶斯定理的数学公式:
- **先验概率(Prior Probability)**通常表示为 P ( A ) P(A) P(A),其中 A A A 代表某个事件或假设,它是在考虑任何新信息之前的概率估计。
- **后验概率(Posterior Probability)**通常表示为 P ( A ∣ B ) P(A|B) P(A∣B),其中 A A A 代表某个事件或假设, B B B 代表新的证据或信息。后验概率是在考虑了新信息 B B B后,对事件或假设 A A A的概率的修正估计。
- 贝叶斯定理用于计算后验概率,其数学表达式如下:
P ( A ∣ B ) = P ( B ∣ A ) ⋅ P ( A ) P ( B ) P(A|B) = \frac{P(B|A) \cdot P(A)}{P(B)} P(A∣B)=P(B)P(B∣A)⋅P(A)
其中:
- P ( A ∣ B ) P(A|B) P(A∣B) 表示后验概率,即在给定 (B) 的情况下 (A) 的概率。
- P ( B ∣ A ) P(B|A) P(B∣A) 表示似然度,即在 (A) 的情况下 (B) 的概率。
- P ( A ) P(A) P(A) 表示先验概率,即在考虑任何新信息 (B) 之前 (A) 的概率。
- P ( B ) P(B) P(B) 表示边际似然度,也就是在所有可能的 (A) 情况下观察到 (B) 的概率。
设输入空间
χ
∈
R
n
\chi \in R^n
χ∈Rn为n维向量的集合,输出空间为类标记集合
Y
=
c
1
,
c
2
,
.
.
.
,
c
K
Y ={c_1,c_2,...,c_K}
Y=c1,c2,...,cK。输入为特征向量
x
∈
χ
x \in \chi
x∈χ,输出为类标记(class label)
y
∈
Y
y \in Y
y∈Y。X是定义在输入空间
χ
\chi
χ上的随机变量,Y是定义在输出空间Y上的随机变量。P(X,Y)是X和Y的联合概率密度。训练数据集
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)}
由P(X,Y)独立同分布产生
朴素贝叶斯法通过训练数据集学习联合概率分布P(X,Y)。具体地,学习以下先验概率分布及条件概率分布。
先验概率分布:
P
(
Y
=
c
k
)
,
k
=
1
,
2
,
.
.
.
,
K
P(Y=c_k),k=1,2,...,K
P(Y=ck),k=1,2,...,K
条件概率分布
P
(
X
=
x
∣
Y
=
c
k
)
=
P
(
X
(
1
)
=
x
(
1
)
,
.
.
.
,
X
(
n
)
=
x
(
n
)
∣
Y
=
c
k
)
,
k
=
1
,
2
,
.
.
.
,
K
P(X=x|Y=c_k)=P(X^{(1)}=x^{(1)},...,X^{(n)}=x^{(n)}|Y=c_k),k=1,2,...,K
P(X=x∣Y=ck)=P(X(1)=x(1),...,X(n)=x(n)∣Y=ck),k=1,2,...,K
于是学习到联合概率密度P(X,Y)
朴素贝叶斯法对条件概率分布作了条件独立性的假设。由于这是一个较强的假设,朴素贝叶斯法也由此得名。具体地,条件独立性假设是
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_{j=1}^n P(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)
朴素贝叶斯法将实例分到后验概率最大的类中。这等价于期望风险最小化。假设选择0-1损失函数:
L
(
Y
,
f
(
X
)
)
=
{
1
Y
≠
f
(
X
)
0
Y
=
f
(
X
)
L(Y,f(X))=
式中f(X)是分类决策函数。这是期望风险函数为
R
e
x
p
(
f
)
=
E
[
L
(
Y
,
f
(
X
)
)
]
R_{exp}(f)=E[L(Y,f(X))]
Rexp(f)=E[L(Y,f(X))]
期望是对联合分布P(X,Y)取的,由此取条件期望
R
e
x
p
(
f
)
=
E
X
∑
k
=
1
K
[
L
(
c
k
,
f
(
X
)
)
]
P
(
c
k
∣
X
)
R_{exp}(f)=E_X \sum\limits_{k=1}^K [L(c_k,f(X))]P(c_k|X)
Rexp(f)=EXk=1∑K[L(ck,f(X))]P(ck∣X)
理解朴素贝叶斯法与期望风险最小化以及0-1损失函数之间的关系可能需要一些数学推导和理解。我会尝试简化解释这些式子。
首先,让我们回顾一下朴素贝叶斯分类器的目标。朴素贝叶斯法旨在将实例分到后验概率最大的类别中。这意味着对于给定的输入特征 X X X,它会选择一个类别 c k c_k ck,使得条件概率 P ( c k ∣ X ) P(c_k|X) P(ck∣X) 最大。这是一种最大后验概率决策。
接下来,让我们考虑使用0-1损失函数的情况。0-1损失函数表示如果分类结果正确(即 Y = f ( X ) Y=f(X) Y=f(X)),损失为0,否则损失为1。这意味着我们只关心分类的正确性,而不关心分类的不确定性程度。
现在,我们来看期望风险函数 R e x p ( f ) R_{exp}(f) Rexp(f) 的表达式:
R e x p ( f ) = E [ L ( Y , f ( X ) ) ] R_{exp}(f) = E[L(Y,f(X))] Rexp(f)=E[L(Y,f(X))]
这个式子表示对于给定的分类器 f ( X ) f(X) f(X),它的期望风险是在所有可能的输入 X X X 上的损失函数 L ( Y , f ( X ) ) L(Y, f(X)) L(Y,f(X)) 的期望值。接下来,我们考虑将这个期望风险函数应用于朴素贝叶斯分类器。
现在,我们要计算 R e x p ( f ) R_{exp}(f) Rexp(f) 对于朴素贝叶斯分类器的期望风险,这需要考虑输入特征 X X X 和真实标签 Y Y Y 的联合分布 P ( X , Y ) P(X, Y) P(X,Y)。具体来说,我们可以将 R e x p ( f ) R_{exp}(f) Rexp(f) 表示为:
R e x p ( f ) = E X ∑ k = 1 K [ L ( c k , f ( X ) ) ] P ( c k ∣ X ) R_{exp}(f) = E_X \sum_{k=1}^K [L(c_k, f(X))]P(c_k|X) Rexp(f)=EXk=1∑K[L(ck,f(X))]P(ck∣X)
这个式子的含义如下:
- E X E_X EX 表示关于输入特征 X X X 的期望值,也就是对所有可能的输入特征取期望。
- ∑ k = 1 K \sum_{k=1}^K ∑k=1K 表示对所有可能的类别 k k k 进行求和。
- L ( c k , f ( X ) ) L(c_k, f(X)) L(ck,f(X)) 表示将真实类别标签 c k c_k ck 与分类器的输出 f ( X ) f(X) f(X) 进行比较,如果不相等,则损失为1,否则为0。
- P ( c k ∣ X ) P(c_k|X) P(ck∣X) 表示在给定输入特征 X X X 的情况下,类别为 c k c_k ck 的后验概率。
这个式子的计算可以看作是对于每个输入特征 X X X,计算了不同类别 c k c_k ck 的损失,并考虑了类别的后验概率。最终目标是选择一个分类器 f ( X ) f(X) f(X),使得 R e x p ( f ) R_{exp}(f) Rexp(f) 最小化,即选择一个分类器以最小化错误分类的期望。
总之,这个表达式描述了使用0-1损失函数的朴素贝叶斯分类器的期望风险,目标是选择一个分类器,使得在输入特征的所有可能情况下,错误分类的期望最小。这是一个期望风险最小化的问题,与朴素贝叶斯分类器的最大后验概率决策是一致的。
在朴素贝叶斯法中,学习意味着估计
P
(
Y
=
c
k
)
和
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
P(Y=c_k)和P(X^{(j)}=x^{(j)}|Y=c_k)
P(Y=ck)和P(X(j)=x(j)∣Y=ck)。可以应用极大似然估计法估计相应的概率。先验概率
P
(
Y
=
c
k
)
P(Y=c_k)
P(Y=ck)的极大似然估计是
P
(
Y
=
c
k
)
=
∑
i
=
1
N
I
(
y
i
=
c
k
)
N
,
k
=
1
,
2
,
.
.
.
,
K
P(Y=c_k)=\frac{\sum\limits_{i=1}^NI(y_i=c_k)}{N},k=1,2,...,K
P(Y=ck)=Ni=1∑NI(yi=ck),k=1,2,...,K
设第
j
j
j个特征
x
(
j
)
x^{(j)}
x(j)可能取值的集合为
{
a
j
1
,
a
j
2
,
.
.
.
,
a
j
S
j
}
\{a_{j1},a_{j2},...,a_{jS_j}\}
{aj1,aj2,...,ajSj},条件概率
P
(
X
(
j
)
=
a
j
l
∣
Y
=
c
k
)
P(X^{(j)}=a_{jl}|Y=c_k)
P(X(j)=ajl∣Y=ck)的极大似然估计是
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
)
,
j
=
1
,
2
,
.
.
.
,
n
;
l
=
1
,
2
,
.
.
.
,
S
j
;
k
=
1
,
2
,
.
.
.
,
K
P(X^{(j)}=a_{jl}|Y=c_k)=\frac{\sum\limits_{i=1}^N I(x_i^{(j)}=a_{jl},y_i=c_k)}{\sum\limits_{i=1}^NI(y_i=c_k)},j=1,2,...,n;l=1,2,...,S_j;k=1,2,...,K
P(X(j)=ajl∣Y=ck)=i=1∑NI(yi=ck)i=1∑NI(xi(j)=ajl,yi=ck),j=1,2,...,n;l=1,2,...,Sj;k=1,2,...,K
上式中,
x
i
(
j
)
x_i^{(j)}
xi(j)是第
i
i
i个样本的第
j
j
j个特征;
a
j
l
a_{jl}
ajl是第
j
j
j个特征可能取的第
l
l
l个值;
I
I
I为指示函数
在朴素贝叶斯法中,学习的目标是估计条件概率 P ( Y = c k ) P(Y=c_k) P(Y=ck) 和 P ( X ( j ) = x ( j ) ∣ Y = c k ) P(X^{(j)}=x^{(j)}|Y=c_k) P(X(j)=x(j)∣Y=ck),其中 Y Y Y 是类别变量, X ( j ) X^{(j)} X(j) 是特征变量的第 j j j 个特征。
- 先验概率 P ( Y = c k ) P(Y=c_k) P(Y=ck) 的极大似然估计:
- P ( Y = c k ) P(Y=c_k) P(Y=ck) 表示在没有任何特征信息的情况下,某个样本属于类别 c k c_k ck 的概率。这是我们所称的类别的"先验"概率。
- 极大似然估计是一种常用的统计方法,用于估计参数,它通过统计训练数据中属于类别 c k c_k ck 的样本数量来估计 P ( Y = c k ) P(Y=c_k) P(Y=ck)。
- 具体公式为:
P ( Y = c k ) = ∑ i = 1 N I ( y i = c k ) N P(Y=c_k)=\frac{\sum\limits_{i=1}^N I(y_i=c_k)}{N} P(Y=ck)=Ni=1∑NI(yi=ck)
其中 N N N 表示训练数据中的总样本数, y i y_i yi 表示第 i i i 个样本的真实类别, I ( y i = c k ) I(y_i=c_k) I(yi=ck) 是指示函数,如果 y i = c k y_i=c_k yi=ck,则为1,否则为0。- 条件概率 P ( X ( j ) = a j l ∣ Y = c k ) P(X^{(j)}=a_{jl}|Y=c_k) P(X(j)=ajl∣Y=ck) 的极大似然估计:
- P ( X ( j ) = a j l ∣ Y = c k ) P(X^{(j)}=a_{jl}|Y=c_k) P(X(j)=ajl∣Y=ck) 表示在已知样本属于类别 c k c_k ck 的情况下,特征 X ( j ) X^{(j)} X(j) 的第 j j j 个特征等于 a j l a_{jl} ajl 的概率。这是我们所称的条件概率。
- 极大似然估计通过统计训练数据中在类别 c k c_k ck 下特征 X ( j ) X^{(j)} X(j) 的第 j j j 个特征等于 a j l a_{jl} ajl 的样本数量来估计 P ( X ( j ) = a j l ∣ Y = c k ) P(X^{(j)}=a_{jl}|Y=c_k) P(X(j)=ajl∣Y=ck)。
- 具体公式为:
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)=\frac{\sum\limits_{i=1}^N I(x_i^{(j)}=a_{jl},y_i=c_k)}{\sum\limits_{i=1}^N I(y_i=c_k)} P(X(j)=ajl∣Y=ck)=i=1∑NI(yi=ck)i=1∑NI(xi(j)=ajl,yi=ck)
其中 x i ( j ) x_i^{(j)} xi(j) 表示第 i i i 个样本的第 j j j 个特征的取值, a j l a_{jl} ajl 是第 j j j 个特征可能取的第 l l l 个值, I ( x i ( j ) = a j l , y i = c k ) I(x_i^{(j)}=a_{jl},y_i=c_k) I(xi(j)=ajl,yi=ck) 是指示函数,如果同时满足条件 x i ( j ) = a j l x_i^{(j)}=a_{jl} xi(j)=ajl 和 y i = c k y_i=c_k yi=ck,则为1,否则为0。这些估计用于构建朴素贝叶斯分类器,它基于这些概率估计来预测新样本的类别。具体地,通过计算新样本属于每个类别的后验概率,并选择具有最高后验概率的类别作为预测结果。这是朴素贝叶斯分类器的基本工作原理。这些估计和方法使朴素贝叶斯成为一种用于分类问题的强大方法,特别适用于文本分类等自然语言处理任务。
在朴素贝叶斯法中, S j S_j Sj 表示第 j j j 个特征可能取值的集合的大小(即第 j j j 个特征的不同取值数量)。具体来说,对于每个特征 X ( j ) X^{(j)} X(j),它可以取多个不同的取值, S j S_j Sj 就代表了这个特征可能的取值数量。
- 例如,假设我们有一个文本分类问题,其中特征 X ( 1 ) X^{(1)} X(1) 表示文本的长度,特征 X ( 2 ) X^{(2)} X(2) 表示文本中包含的关键词数量。如果 X ( 1 ) X^{(1)} X(1) 的可能取值是 {短, 中等, 长},而 X ( 2 ) X^{(2)} X(2) 的可能取值是 {少, 中等, 多},那么 S 1 = 3 S_1 = 3 S1=3(因为 X ( 1 ) X^{(1)} X(1) 有 3 个可能的取值)和 S 2 = 3 S_2 = 3 S2=3(因为 X ( 2 ) X^{(2)} X(2) 有 3 个可能的取值)。
在计算条件概率 P ( X ( j ) = a j l ∣ Y = c k ) P(X^{(j)}=a_{jl}|Y=c_k) P(X(j)=ajl∣Y=ck) 的极大似然估计时, S j S_j Sj 的值用于确定每个特征可能取值的数量,从而在估计概率时考虑了特征的多样性。