集成学习一Boosting
http://blog.csdn.net/loveitlovelife/article/details/79392187
集成学习二Bagging与Random Forest
http://blog.csdn.net/loveitlovelife/article/details/79397739
结合策略
优点:
1.提高泛化性能
2.降低进入局部最小点的风险
3.扩大假设空间
平均法:简单平均、加权平均
适用范围:
+规模大的集成,学习的权重较多,加权平均法易导致过拟合
+个体学习器性能相差较大时宜使用加权平均法,相近用简单平均法。
投票法:
1.绝对多数投票法:某标记超过半数;
2.相对多数投票法:预测为得票最多的标记,若同时有多个标记的票最高,则从中随机选取一个。
3.加权投票法:提供了预测结果,与加权平均法类似。
学习法
Stacking描述:先从初始数据集中训练出初级学习器,然后“生成”一个新数据集用于训练次级学习器。在新数据集中,初级学习器的输出被当做样例输入特征,初始样本的标记仍被当做样例标记。
算法步骤:
输入:训练集
D=(x1,y1),(x2,y2),...,(xm,ym)
D
=
(
x
1
,
y
1
)
,
(
x
2
,
y
2
)
,
.
.
.
,
(
x
m
,
y
m
)
;
初级学习算法:
Λ1,Λ2,...,ΛT;
Λ
1
,
Λ
2
,
.
.
.
,
Λ
T
;
次级学习算法:
Λ
Λ
过程:
1、
for t=1,2,...,T do
f
o
r
t
=
1
,
2
,
.
.
.
,
T
d
o
2、
ht=Λt(D);
h
t
=
Λ
t
(
D
)
;
3、
end for
e
n
d
f
o
r
4、
D‘=∅
D
‘
=
∅
5、
for i=1,2,...,m do
f
o
r
i
=
1
,
2
,
.
.
.
,
m
d
o
6、
for t=1,2,...,T do
f
o
r
t
=
1
,
2
,
.
.
.
,
T
d
o
7、
zit=ht(xi);
z
i
t
=
h
t
(
x
i
)
;
8、
endfor
e
n
d
f
o
r
9、
D′=D′⋃((zi1,zi2,...,ziT),yi);
D
′
=
D
′
⋃
(
(
z
i
1
,
z
i
2
,
.
.
.
,
z
i
T
)
,
y
i
)
;
10、
endfor
e
n
d
f
o
r
11、
h′=Λ(D′);
h
′
=
Λ
(
D
′
)
;
输出:
H(x)=h′(h1(x),h2(x),...,hT(x))
H
(
x
)
=
h
′
(
h
1
(
x
)
,
h
2
(
x
)
,
.
.
.
,
h
T
(
x
)
)
+通过交叉验证产生次级学习器的训练样本;
+将初级学习器的输出类概率作为次级学习器的输入属性,用多响应线性回归作为次基学习算法效果较好;
多样性
1.误差-分歧分解:
则学习器 hi h i 的‘分歧’为:
集成的分歧:
‘分歧’表征了个体学习器在样本上的不一致性即多样性
个体学习器和集成学习器的平方误差分别为:
令 E¯(h|x)=∑Ti=1wi⋅E(hi|x) E ¯ ( h | x ) = ∑ i = 1 T w i · E ( h i | x ) 表示个体学习器误差的加权平均值,
则:
结论:个体学习器准确性越高,多样性越大,则集成性能越好
2.多样性度量
考虑个体分类器的两两相似/不相似性
对于二分类问题,分类器
hi和hj
h
i
和
h
j
的预测结果列联表为:
a表示
hi和hj
h
i
和
h
j
均预测为正类的样本数目;b、c、d含义由此类推;a+b+c+d=m,则有如下多样性度量方法:
+不合度量 disij=b+cm,值域为[0,1],其越大多样性越大 d i s i j = b + c m , 值 域 为 [ 0 , 1 ] , 其 越 大 多 样 性 越 大
+相关系数 ρij=ad−bc(a+b)(a+c)(c+d)(b+d)√,值域为[−1,1],若hi与hj无关,则值为0;若正相关则为正,否则为负 ρ i j = a d − b c ( a + b ) ( a + c ) ( c + d ) ( b + d ) , 值 域 为 [ − 1 , 1 ] , 若 h i 与 h j 无 关 , 则 值 为 0 ; 若 正 相 关 则 为 正 , 否 则 为 负
+Q-统计量 Qij=ad−bcad+bc,Qij与相关系数ρij符号相同。 Q i j = a d − b c a d + b c , Q i j 与 相 关 系 数 ρ i j 符 号 相 同 。
+
κ
κ
-统计量
κ=p1−p21−p2,
κ
=
p
1
−
p
2
1
−
p
2
,
其中
p1是两个分类器取得一致的概率;p2
p
1
是
两
个
分
类
器
取
得
一
致
的
概
率
;
p
2
是两个分类器偶然达成一致的概率,他们可有数据集D估算:
3多样性增强
+数据样本扰动:基于采样法产生不同数据子集,利用不同子集训练出不同的个体学习器,例如Bagging自助采样;AdaBoost序列采样。
此类扰动方法对“不稳定基学习器”很有效例如:决策树、神经网络
+输入属性扰动:通过对初始属性中提取“子空间(属性子集)”,在不同的空间中训练个体学习器
适用算法:线性学习器、支持向量机、朴素贝叶斯、k-近邻学习器等稳定基学习器,此类扰动可以产生大量多样性的个体,且节省开销时间
+输出表示扰动:对输出表示进行操纵以增强多样性,可对训练样本的类标记稍作变动,如“翻转法”、“ECOC编码法”
+算法参数扰动:设置算法的参数,例如神经网络的隐层神经元数、连接权值等,使用单一学习器时通常需要使用交叉验证方法来确定参数值。
Boosting主要关注降低偏差,而Bagging主要关注降低方差