周志华西瓜书-第七天阅读-初识集成学习

基本概念

集成学习(ensemble learning)通过构建并结合多个学习器来完成学习任务,有时也被称为多分类器系统(multi-classifier system) 、基于委员会的学习(committee-based learning) 等.图8.1 显示出集成学习的一般结构:先产生一组"个体学习器" (individual learner) ,再用某种策略将它们结合起来.个体学习器通常由一个现有的学习算法从训练数据产生,例如决策树算法、BP 神经网络算法等,此时集成中只包含同种类型的个体学习器,例如"决策树集成"中全是决策树,“神经网络集成"中全是神经网络,这样的集成是"同质"的(homogeneous) .同质集成中的个体学习器亦称"基学习器” (base learner),相应的学习算法称为"基学习算法" (base learning algorithm). 集成也可包含不同类型的个体学习器,例如同时包含决策树和神经网络,这样的集成是"异质"的(heterogenous) .异质集成中的个体学习器由不同的学习算法生成,这时就不再有基学习算法;相应的,个体学习器一般不称为基学习器,常称为"组件学习器" (component learner) 或直接称为个体学习器.

周志华西瓜书-第七天阅读-初识集成学习_第1张图片

集成学习的类别

根据个体学习器的生成方式,目前的集成学习方法大致可分为两大类,即个体学习器间存在强依赖关系、必须串行生成的序列化方法,以及个体学习器间不存在强依赖关系、可同时生成的并行化方法;前者的代表是Boosting ,后者的代表是Bagging 和"随机森林" (Random Forest).

Boosting

Boosting 是一族可将弱学习器提升为强学习器的算法.这族算法的工作机制类似:先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直至基学习器数目达到事先指定的值T , 最终将这T个基学习器进行加权结合.

Bagging与随机森林

随机森林(Random Forest ,简称RF) [Breiman, 2001a] 是Bagging的一个扩展变体.RF在以决策树为基学习器构建Bagging 集成的基础上,进一步在决策树的训练过程中引入了随机属性选择.具体来说,传统决策树在选择划分属性时是在当前结点的属性集合(假定有d 个属性)中选择一个最优属性;而在RF 中,对基决策树的每个结点,先从该结点的属性集合中随机选择一个包含k个属性的子集,然后再从这个子集中选择一个最优属性用于划分. 这里的参数k 控制了随机性的引入程度;若令k = d , 则基决策树的构建与传统决策树相同;若令k = 1 , 则是随机选择一个属性用于划分; 一般情况下,推荐值k = log2 d [Breiman, 2001a] .
随机森林简单、容易实现、计算开销小,令人惊奇的是, 它在很多现实任务中展现出强大的性能,被誉为"代表集成学习技术水平的方法"可以看出,随机森林对Bagging 只做了小改动, 但是与Bagging 中基学习器的"多样性"仅通过样本扰动(通过对初始训练集采样)而来不同,随机森林中基学习器的多样性不仅来自样本扰动,还来自属性扰动,这就使得最终集成的泛化性能可通过个体学习器之间差异度的增加而进一步提升.

结合策略

对于数值输出的问题,一般采用平均法,如简单平均法或者加权平均法。
而对于分类任务来说,常用的是投票法,如绝大多数投票法、相对多数投票法、加权投票法。

你可能感兴趣的:(2019年9月,python,西瓜书)