集成学习(Boosting、Bagging)

集成学习通过构建并结合多个学习器来提升性能

集成学习(Boosting、Bagging)_第1张图片
集成学习(Boosting、Bagging)_第2张图片

在一定条件下,随着集成分类器数目的增加,集成的错误率将指数级下降,最终趋向于0。

分类:

  • 个体学习器间存在强依赖关系、必须串行生成的序列化方法:Boosting

  • 个体学习器间不存在强依赖关系、可同时生成的并行化方法:Bagging, Random Forest


一、Boosting

个体学习器存在强依赖关系、串行生成、每次调整训练数据的样本分布

(1) 给定初始训练数据,由此训练出第一个基学习器,并确定其权重;

(2) 对样本分布进行调整,在之前学习器做错的样本上投入更多关注;

(3)用调整后的样本,训练下一个基学习器,确定其权重;

(4)重复上述过程 T 次,将 T 个学习器加权结合。

1.AdaBoost算法流程

集成学习(Boosting、Bagging)_第3张图片

2.AdaBoost推导

集成学习(Boosting、Bagging)_第4张图片

指数损失函数

集成学习(Boosting、Bagging)_第5张图片

指数损失函数最小化,则分类错误率也将最小化,说明指数损失函数是0/1损失函数的一致的替代函数

分类器的权重

集成学习(Boosting、Bagging)_第6张图片

样本权重调整

集成学习(Boosting、Bagging)_第7张图片
集成学习(Boosting、Bagging)_第8张图片
集成学习(Boosting、Bagging)_第9张图片

理想的ht将在分布Dt下最小化分类误差,因此,弱分类器应该基于分布Dt来训练。

集成学习(Boosting、Bagging)_第10张图片

3.AdaBoost优缺点

优点:

(1)不容易发生过拟合;

(2)由于AdaBoost并没有限制弱学习器的种类,所以可以使用不同的学习算法来

构建弱分类器;

(3)相对于bagging算法和Random Forest算法,AdaBoost充分考虑的每个分

类器的权重;

(4)AdaBoost的参数少,实际应用中不需要调节太多的参数。

缺点:

(1)AdaBoost迭代次数(弱分类器数目)不好设定,可以使用交叉验证来确定;

(2)对异常样本敏感,异常样本在迭代中可能会获得较高的权重,影响最终的强学习器的预测准确性;

(3)原始的AdaBoost算法不适于处理多分类或回归任务;

(4)训练比较耗时。


二、Bagging

基本思想:

采样出 T 个含 m 个训练样本的采样集,基于每个采样集训练出一个基学习器(并行构建T个分类器、并行训练),最终将所有分类器的结果进行综合(平均或投票),达到最终的预测结果。

1.自助采样法

集成学习(Boosting、Bagging)_第11张图片

2. bagging算法特点

(1)时间复杂度低

假定基学习器的计算复杂度为O(m),采样与投票/平均过程的复杂度为O(s),则bagging的复杂度大致为T(O(m)+O(s))。由于O(s)很小且T是一个不大的常数, 因此训练一个bagging集成与直接使用基学习器的复杂度同阶

(2)直接适用于多分类、回归等任务

(3)可使用包外估计

由于基学习器只使用了初始训练集中约63.2%的样本,剩下的约36.8%的样本可用作验证集来对泛化性能进行“包外估计”(out-of-bag estimate)。

3.包外估计

集成学习(Boosting、Bagging)_第12张图片
集成学习(Boosting、Bagging)_第13张图片
集成学习(Boosting、Bagging)_第14张图片

上式表示估计错误的个数除以总的个数,得到泛化误差的保外估计


三、随机森林

集成学习(Boosting、Bagging)_第15张图片

四、结合策略

1.平均法

集成学习(Boosting、Bagging)_第16张图片
集成学习(Boosting、Bagging)_第17张图片
  • 加权平均法未必一定优于简单平均法

训练样本不充分或含有噪声,导致学出的权重不完全可靠

  • 一般而言,个体学习器性能相差较大->加权平均;性能相近->简单平均法

2.投票法

集成学习(Boosting、Bagging)_第18张图片

当一个类别j的基分类器的结果之和大于所有结果之和的1/2时,选择该类别j为最终结果。

集成学习(Boosting、Bagging)_第19张图片

若类别j的及分类器的结果之和在所有类别中最大,则选类别j为最终结果

集成学习(Boosting、Bagging)_第20张图片

3.学习法

初级学习器+次级学习器/元学习器


五、多样性

集成学习(Boosting、Bagging)_第21张图片
集成学习(Boosting、Bagging)_第22张图片
集成学习(Boosting、Bagging)_第23张图片
集成学习(Boosting、Bagging)_第24张图片
  • 常见的增强个体学习器的多样性的方法

(1)数据样本扰动

(2)输入属性扰动

(3)输出表示扰动

(4)算法参数扰动

集成学习(Boosting、Bagging)_第25张图片

你可能感兴趣的:(集成学习,人工智能)