结合策略指的是在训练好基学习器后,如何将这些基学习器的输出结合起来产生集成模型的最终输出,下面将介绍一些常用的结合策略:
平均法(回归问题)
- 简单平均法(simple averaging)
%20%3D%20%5Cfrac%7B1%7D%7BT%7D%5Csum%7Bi%3D1%7D%5ET%20h_i(x)%0A#card=math&code=H%28x%29%20%3D%20%5Cfrac%7B1%7D%7BT%7D%5Csum%7Bi%3D1%7D%5ET%20h_i%28x%29%0A&id=q3FJd)
- 加权平均法(weighted averaging)
%20%3D%20%5Csum%7Bi%3D1%7D%5ET%20w_ih_i(x)%0A#card=math&code=H%28x%29%20%3D%20%5Csum%7Bi%3D1%7D%5ET%20w_ih_i%28x%29%0A&id=D8wNo)
其中要求是个体学习
的权重,通常要求
投票法(分类问题)
- 绝对多数投票法(majority voting)
%3E0.5%5Csum%7Bk%3D1%7D%5EN%5Csum%7Bi%3D1%7D%5EThi%5Ek(x)%3B%5C%5C%0Areject%2C%26otherwise.%20%0A%5Cend%7Barray%7D%5Cright.#card=math&code=%20H%EF%BC%88x%EF%BC%89%20%3D%20%5Cleft%5C%7B%20%5Cbegin%7Barray%7D%7Brcl%7D%0Ac_j%2C%26%20if%5Csum%7Bi%3D1%7D%5EThi%5Ej%28x%29%3E0.5%5Csum%7Bk%3D1%7D%5EN%5Csum_%7Bi%3D1%7D%5ETh_i%5Ek%28x%29%3B%5C%5C%0Areject%2C%26otherwise.%20%0A%5Cend%7Barray%7D%5Cright.&id=dmdpC)
若某标记票数过半,则预测为该标记,否则拒绝预测。
- 相对多数投票法(plurality voting)
%20%3D%20c%7Barg_j%20max%5Csum%7Bi%3D1%7D%5EThi%5Ej%20(x)%7D%0A#card=math&code=H%28x%29%20%3D%20c%7Bargj%20max%5Csum%7Bi%3D1%7D%5ETh_i%5Ej%20%28x%29%7D%0A&id=U5w9P)
即预测为得票最多的标记,若同时有多个标记获最高票,则从中随机选取一个。
- 加权投票法(weighted voting)
%20%3D%20c%7Barg_j%20max%5Csum%7Bi%3D1%7D%5ET%20wih_i%5ETh(x)%7D%0A#card=math&code=H%28x%29%20%3D%20c%7Bargj%20max%5Csum%7Bi%3D1%7D%5ET%20w_ih_i%5ETh%28x%29%7D%0A&id=NwgeK)
与加权平均类似,是个体学习
的权重,通常要求
绝对多数投票法(majority voting)提供了拒绝选项,这在可靠性要求很高的学习任务中是一个很好的机制。同时,对于分类任务,各个基学习器的输出值有两种类型,分别为类标记和类概率。
- 类标记:
%5Cin%20%5C%7B0%2C1%5C%7D#card=math&code=h_i%5Ej%28x%29%5Cin%20%5C%7B0%2C1%5C%7D&id=B7Tef),若
将样本预测为
类别则取值为1,否则为0。使用类标记的投票也称为硬投票(hard voting)。
- 类概率:
%5Cin%20%5B0%2C1%5D#card=math&code=h_i%5Ej%28x%29%5Cin%20%5B0%2C1%5D&id=F2bTI),相当于对后验概率
#card=math&code=P%28c_j%7Cx%29&id=CAJkS)的一个估计,使用类概率的投票也称为软投票(soft voting)。
一些在产生类别标记的同时也生成置信度的学习器,置信度可转化为类概率使用,一般基于类概率进行结合往往比基于类标记进行结合的效果更好,需要注意的是对于异质集成,其类概率不能直接进行比较,此时需要将类概率转化为类标记输出,然后再投票。
学习法
学习法是一种更高级的结合策略,即学习出一种“投票”的学习器,Stacking是学习法的典型代表。Stacking的基本思想是:首先训练出T个基学习器,对于一个样本它们会产生T个输出,将这T个基学习器的输出与该样本的真实标记作为新的样本,m个样本就会产生一个mT的样本集,来训练一个新的“投票”学习器。投票学习器的输入属性与学习算法对Stacking集成的泛化性能有很大的影响,书中已经提到:*投票学习器采用类概率作为输入属性,选用多响应线性回归(MLR)一般会产生较好的效果。