集成学习的基本步骤
集成学习一般可分为以下3个步骤。
(1)找到误差互相独立的基分类器。
(2)训练基分类器。
(3)合并基分类器的结果。
合并基分类器的方法有voting和stacking两种。前者是用投票的方式,将获得最多选票的结果作为最终的结果。后者是用串行的方式,把前一个基分类器的结果输出到下一个分类器,将所有基分类器的输出结果相加(或者用更复杂的算法
融合,比如把各基分类器的输出作为特征,使用逻辑回归作为融合模型进行最后的结果预测)作为最终的输出。
以Adaboost为例,其基分类器的训练和合并的基本步骤如下。
(1)确定基分类器:这里可以选取ID3决策树作为基分类器。事实上,任何分类模型都可以作为基分类器,但树形模型由于结构简单且较易产生随机性所以比较常用。
(2)训练基分类器:假设训练集为{ xi,yi},i=1,...,N,\{x_i,y_i\},i=1,...,N,{ xi,yi},i=1,...,N,其中yi∈{ −1,1}y_i\boldsymbol{\in}\{−1,1\}yi∈{ −1,1},并且有T个基分类器,则可以按照如下过程来训练基分类器。
1.初始化采分布
Dl(i)=1/N D_{\mathrm{l}}(i)={1/N} Dl(i)=1/N
2.令t=1,2,...,Tt=1,2,...,Tt=1,2,...,T循环:
-
从训练集中,按照DtD_tDt分布,采样出子集St={ xi,yi},i=1,…,Nt;S_{t}=\{x_{i},y_{i}\},i=1,\ldots,N_{t};St={ xi