引言
在生活中我们会遇到各种各样的决定,比如明天穿哪件衣服,今天中午去吃食堂的哪个档口!那么我们做出这些决定,肯定受到今天心情,天气等因素的影响,当然还有之前穿这件衣服的次数以及取这个档口的食物是否美味有关。所以我们今天我们要来讲一个概率论里面非常重要的一个内容——贝叶斯!它可以帮助我们预测这些决定!
贝叶斯决策论
定义:在所有相关概率已知的情况下,贝叶斯决策论考虑如何基于这些概率和误判损失来选择最优的类别标记。
举个栗子:假设当前有一个N分类的问题,分类标签
y
∈
{
c
1
,
c
2
,
.
.
.
.
.
.
c
n
}
y \in \{ {c_1},{c_2},......{c_n}\}
y∈{c1,c2,......cn},
λ
i
j
{\lambda _{ij}}
λij是将真实标记为
c
i
{c_i}
ci的样本错分为
c
j
{c_j}
cj所产生的损失。
条件风险
我们将定义当个样本所产生的期望损失(条件风险)为:
R
(
c
i
∣
x
)
=
∑
j
=
1
N
λ
i
j
p
(
c
j
∣
x
)
R({c_i}|x) = \sum\limits_{j = 1}^N {{\lambda _{ij}}p({c_j}|x)}
R(ci∣x)=j=1∑Nλijp(cj∣x)
其中
p
(
c
j
∣
x
)
{p({c_j}|x)}
p(cj∣x)为后验概率。
总体风险
总体风险是条件风险的期望:
R
(
h
)
=
E
x
[
R
(
h
(
x
)
∣
x
)
]
R(h) = {E_x}[R(h(x)|x)]
R(h)=Ex[R(h(x)∣x)]
其中h为分类器(模型),显然分类效果越准确的h,可以使得条件风险和总体风险小。
贝叶斯判定准则
定义:为了最小化总体风险,只需要在每个样本上选择可以使得条件风险最小的类别标记:
h
∗
(
x
)
=
arg
min
R
(
c
∣
x
)
{h^*}(x) = \arg \min R(c|x)
h∗(x)=argminR(c∣x)
此时的
h
∗
(
x
)
{h^*}(x)
h∗(x)就是最优分类器。
具体的:如果若目标为最小化分类错误率,那么误判损失
λ
i
j
{\lambda _{ij}}
λij可以采用0-1损失:
此时单个样本的条件风险为:
R
(
c
i
∣
x
)
=
∑
j
=
1
N
λ
i
j
p
(
c
j
∣
x
)
=
1
∗
p
(
c
1
∣
x
)
.
.
.
.
.
.
+
0
∗
p
(
c
i
∣
x
)
+
.
.
.
.
.
.
p
(
c
n
∣
x
)
R({c_i}|x) = \sum\limits_{j = 1}^N {{\lambda _{ij}}p({c_j}|x) = 1*} p({c_1}|x)...... + 0*p({c_i}|x) + ......p({c_n}|x)
R(ci∣x)=j=1∑Nλijp(cj∣x)=1∗p(c1∣x)......+0∗p(ci∣x)+......p(cn∣x)
所以条件风险可以进一步转换为:
R
(
c
i
∣
x
)
=
1
−
p
(
c
i
∣
x
)
R({c_i}|x) = 1 - p({c_i}|x)
R(ci∣x)=1−p(ci∣x)
按照贝叶斯判定准则,最小错误率的贝叶斯最优分类器为:
h
∗
(
x
)
=
arg
min
c
∈
y
R
(
c
∣
x
)
=
arg
min
i
∈
{
1
,
2
,
.
.
.
n
}
R
(
c
i
∣
x
)
{h^*}(x) = \mathop {\arg \min }\limits_{c \in y} R(c|x) = \mathop {\arg \min }\limits_{i \in \{ 1,2,...n\} } R({c_i}|x)
h∗(x)=c∈yargminR(c∣x)=i∈{1,2,...n}argminR(ci∣x)
h
∗
(
x
)
=
arg
min
i
∈
{
1
,
2
,
.
.
.
n
}
1
−
p
(
c
i
∣
x
)
=
arg
max
i
∈
{
1
,
2
,
.
.
.
n
}
p
(
c
i
∣
x
)
=
arg
max
c
∈
y
p
(
c
∣
x
)
{h^*}(x) = \mathop {\arg \min }\limits_{i \in \{ 1,2,...n\} } 1 - p({c_i}|x) = \mathop {\arg \max }\limits_{i \in \{ 1,2,...n\} } p({c_i}|x) = \mathop {\arg \max }\limits_{c \in y} p(c|x)
h∗(x)=i∈{1,2,...n}argmin1−p(ci∣x)=i∈{1,2,...n}argmaxp(ci∣x)=c∈yargmaxp(c∣x)
所以要想最小化每个样本的条件风险,就应该选择后验概率最大的类别最为标记!
贝叶斯定理
判别式模型:判别式模型是指给定数据x,根据样本x直接建模后验概率
p
(
c
∣
x
)
p(c|x)
p(c∣x)来预测标记!比如逻辑回归,决策树,svm。
生成式模型:先对联合概率密度
p
(
x
∣
c
)
p(x|c)
p(x∣c)进行建模,然后再推导出
p
(
c
∣
x
)
p(c|x)
p(c∣x),比如贝叶斯决策和概率图。
贝叶斯定理:
p
(
c
∣
x
)
=
p
(
c
)
p
(
x
∣
c
)
p
(
x
)
p(c|x) = {{p(c)p(x|c)} \over {p(x)}}
p(c∣x)=p(x)p(c)p(x∣c)
其中p©是先验概率,比如西瓜数据集中好瓜或者坏瓜的概率;
p
(
x
∣
c
)
{p(x|c)}
p(x∣c)是样本x对于类别c的类条件概率,比如好瓜情况下色泽=浅白的概率;p(x)是用于归一化的“证据因子”。
朴素贝叶斯分类器
属性条件独立性假设:对已知类别,假设所有属性独立。
p
(
c
∣
x
)
=
p
(
c
)
p
(
x
∣
c
)
p
(
x
)
=
p
(
c
)
p
(
x
)
∏
i
=
1
d
p
(
x
i
∣
c
)
p(c|x) = {{p(c)p(x|c)} \over {p(x)}} = {{p(c)} \over {p(x)}}\prod\limits_{i = 1}^d {p({x_i}|c)}
p(c∣x)=p(x)p(c)p(x∣c)=p(x)p(c)i=1∏dp(xi∣c)
其中d为样本的属性的数目,xi是x再第i个属性上的取值,基于贝叶斯判定准则:
h
∗
(
x
)
=
arg
max
c
∈
y
p
(
c
∣
x
)
=
arg
max
c
∈
y
p
(
c
)
p
(
x
)
∏
i
=
1
d
p
(
x
i
∣
c
)
{h^*}(x) = \mathop {\arg \max }\limits_{c \in y} p(c|x) = \mathop {\arg \max }\limits_{c \in y} {{p(c)} \over {p(x)}}\prod\limits_{i = 1}^d {p({x_i}|c)}
h∗(x)=c∈yargmaxp(c∣x)=c∈yargmaxp(x)p(c)i=1∏dp(xi∣c)
由于对所有的类别,p(x)可以看作常量:
h
n
b
(
x
)
=
arg
max
c
∈
y
p
(
c
)
∏
i
=
1
d
p
(
x
i
∣
c
)
{h_{nb}}(x) = \mathop {\arg \max }\limits_{c \in y} p(c)\prod\limits_{i = 1}^d {p({x_i}|c)}
hnb(x)=c∈yargmaxp(c)i=1∏dp(xi∣c)
接下来有一个很好的问题,我们该怎么去获得联合概率密度
p
(
x
i
∣
c
)
{p({x_i}|c)}
p(xi∣c)呢?
第i个属性为离散属性:
p
(
x
i
∣
c
)
=
∣
D
(
c
,
x
i
)
∣
∣
D
(
c
)
∣
p({x_i}|c) = {{|D(c,{x_i})|} \over {|D(c)|}}
p(xi∣c)=∣D(c)∣∣D(c,xi)∣
其中
D
(
c
i
,
x
)
{D({c_i},x)}
D(ci,x)表示再D©中再第i个属性上取值为xi的样本所组成的集合。比如好瓜中色泽=浅白的概率。
第i个属性为连续属性:
p
(
x
i
∣
c
)
=
1
2
π
σ
c
,
i
e
−
(
x
i
−
μ
c
,
i
)
2
2
σ
c
,
i
2
p({x_i}|c) = {1 \over {\sqrt {2\pi } {\sigma _{c,i}}}}{e^{ - {{{{({x_i} - {\mu _{c,i}})}^2}} \over {2{\sigma _{c,i}}^2}}}}
p(xi∣c)=2πσc,i1e−2σc,i2(xi−μc,i)2
其中
μ
c
,
i
{{\mu _{c,i}}}
μc,i和
σ
c
,
i
{{\sigma _{c,i}}}
σc,i分别代表第c类样本再第i个属性上的平均值和方差。
半朴素贝叶斯分类器
适当考虑一部分属性之间的依赖关系,从而不需要进行完全联合概率计算,又不至于彻底忽略了比较强的属性依赖关系。
独依赖估计:假设每个属性再类别之外最多依赖于一个其他属性,即
p
(
c
∣
x
)
α
p
(
c
)
∏
i
=
1
d
p
(
x
i
∣
c
,
p
a
i
)
p(c|x)\alpha p(c)\prod\limits_{i = 1}^d {p({x_i}|c,{p_{ai}})}
p(c∣x)αp(c)i=1∏dp(xi∣c,pai)
其中
p
a
i
{{p_{ai}}}
pai为属性xi所依赖的属性,称为xi的父属性。