10 贝叶斯分类器
10.1 朴素贝叶斯分类器
假设所有属性相互独立
(10.1)
h
n
b
(
x
)
=
arg
max
c
∈
Y
P
(
c
)
∏
i
=
1
d
P
(
x
i
∣
c
)
h_{n b}(\boldsymbol{x})=\underset{c \in \mathcal{Y}}{\arg \max } P(c) \prod_{i=1}^{d} P\left(x_{i} | c\right)\tag{10.1}
hnb(x)=c∈YargmaxP(c)i=1∏dP(xi∣c)(10.1)
P
(
c
)
=
∣
D
c
∣
∣
D
∣
P(c)=\frac{|D_c|}{|D|}
P(c)=∣D∣∣Dc∣,
P
(
x
i
∣
c
)
=
∣
D
c
,
x
i
∣
∣
D
c
∣
P(x_i|c)=\frac{|D_{c,x_i}|}{|D_c|}
P(xi∣c)=∣Dc∣∣Dc,xi∣
10.1.1 拉普拉斯修正
若某个属性值在训练集中没有与某个类同时出现过,为防止连乘式计算出的概率值为零,令 P ( c ) = ∣ D c ∣ + 1 ∣ D ∣ + N P(c)=\frac{|D_c|+1}{|D|+N} P(c)=∣D∣+N∣Dc∣+1, P ( x i ∣ c ) = ∣ D c , x i ∣ + 1 ∣ D c ∣ + N i P(x_i|c)=\frac{|D_{c,x_i}|+1}{|D_c|+N_i} P(xi∣c)=∣Dc∣+Ni∣Dc,xi∣+1
N表示训练集D种可能的类别数, N i N_i Ni表示第i个属性可能的取值数
10.2 半朴素贝叶斯分类器
属性条件独立性假设很难成立,因此放松该条件,假设每个属性在类别之外最多依赖于一个其他属性
10.3 贝叶斯网
可任意表示属性间的依赖性
11 集成学习
通过将多个学习器进行结合,常可获得比单一学习器显著优越的泛化性能
- 要获得好的集成,个体学习器应好而不同,即学习器不能太坏并且学习器之间存在差异
- 即个体学习器准确性越高、多样性越大,则集成越好
集成学习即研究如何产生并结合好而不同的个体学习器,目前可分为两大类:个体学习器间存在强依赖关系、必须串行生成的序列化方法,代表算法为Boosting;个体学习器间不存在强依赖关系,可同时生成的并行化方法,代表算法为Bagging和随机森林
11.1 Boosting
先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直至基学习器数目达到事先指定的值T,最终将这T个基学习器进行加权结合
Boosting主要关注降低偏差
Boosting族算法最著名的代表是AdaBoost
11.2 Bagging与随机森林
11.2.1 Bagging
基于自助采样法,采样出T个含m个样本的训练集,T个训练集可认为有较大差异,并且用到63.2%的样本数据。然后针对每个训练集训练出一个基学习器,可认为T个基学习器有较大差异。再将这些基学习器结合
Bagging主要关注降低方差
- 自助采样法:2.1.3
11.2.2 随机森林(Random Forest)
随机森林是Bagging的一个扩展变体,在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入随机属性选择
- 传统决策树选择一个最优属性进行划分;RF则对基决策树每个结点的属性集合中随机选择一个包含k个属性的子集,再从该子集中选择一个最优属性用于划分
- RF的多样性不仅来自于样本扰动,还来自于属性扰动,因此最终集成的泛化性能可通过个体学习器差异度增加而进一步提升
11.3 学习器结合方法
11.3.1 平均法-对于数值型输出
-
简单平均法
(11.1) H ( x ) = 1 T ∑ i = 1 T h i ( x ) H(x)=\frac{1}{T}\sum^{T}_{i=1}h_i(x)\tag{11.1} H(x)=T1i=1∑Thi(x)(11.1)
个体学习器性能相近时使用 -
加权平均法
(11.2) H ( x ) = ∑ i = 1 T w i h i ( x ) H(x)=\sum^{T}_{i=1}w_ih_i(x)\tag{11.2} H(x)=i=1∑Twihi(x)(11.2)
个体学习器性能相差较大时使用,通常要求 w i ≥ 0 w_i\ge0 wi≥0, ∑ i = 1 T w i = 1 \sum^{T}_{i=1}w_i=1 ∑i=1Twi=1
11.3.2 投票法-对于分类任务
-
绝对多数投票法
即若某标记得票过半数,则预测为该标记;否则拒绝预测
-
相对多数投票法
即预测为得票最多的标记,若同时有多个标记获得最高票,则从中随机选取一个
-
加权投票法
通常要求 w i ≥ 0 w_i\ge0 wi≥0, ∑ i = 1 T w i = 1 \sum^{T}_{i=1}w_i=1 ∑i=1Twi=1
11.3.3 学习法-对于训练数据很多的情况
-
Stacking是学习法的典型代表
个体学习器称为初级学习器,用于结合的学习器称为次级学习器或元学习器
-
将同质或异质的初级学习器的输出作为次级学习器的训练集。
-
应用k折交叉验证法,用部分样本训练初级学习器,然后用未使用过的样本作为初级学习器的输入,其输出作为次级学习器的样本
11.4 多样性度量
- 不合度量
- 相关系数
- Q-统计量
- k-统计量
11.5 多样性增强
- 输入属性扰动
- 输出表示扰动
- 算法参数扰动