数据挖掘笔记:集成学习


算法介绍

  • 定义:集成学习是通过构建并结合多个学习器来完成学习任务,如下图,集成学习通过将多个学习器结合,获得比单一学习器显著优越的泛化性能。集成学习分为同质集成和异质集成,如果个体学习器全是一种算法称为同质集成,如果由不同算法生成,称为异质集成;
    数据挖掘笔记:集成学习_第1张图片

其实说简单点,就是由许多个模型一起工作来得到输出结果


常见的各种算法

Boosting

  • 原理:如下图所示:
    数据挖掘笔记:集成学习_第2张图片

就是结合若干个弱学习器,从而形成一个强学习器,再用这个强学习器来解决问题

Boosting族算法最著名得代表是Adaboost

  • 核心思想:对于所有的样本我们先初始化一个权重,在算法的一开始,每个样本的权重是一样的,即每个样本被选到的概率相同。然后我们选择一个特征,只用这一个特征进行分类,得到一个弱分类器。然后对样本权重进行重新分配,给错误分类的样本更高的权重。再选择另外的一个特征(这个特征应该对那些之前被识别错误的样本有较好区分作用),得到一个新的弱分类器,然后再对样本进行分类,如此循环往复;
  • 算法流程以及对应伪代码
    数据挖掘笔记:集成学习_第3张图片

Bagging和随机森林

  • Bagging的原理图如下所示:
    数据挖掘笔记:集成学习_第4张图片
  • Bagging采样出T个含m个训练样本的采样集,然后基于每个采样集训练出一个基学习器,再将这些及学习器进行结合。
  • 采样的方法使用自助采样法。
  • 从偏差-方差分解的角度看,Bagging主要关注降低方差,因此它在不剪枝决策树、* 神经网络等易受样本扰动的学习器上效果更明显
  • 随机森林:简单点来说,就是由若干个决策树来一起工作,即对基决策树的每个结点,先从该结点的属性集合中随机选择一个包含k个属性的子集,然后再从这个子集中选择一个最优属性用于划分;

你可能感兴趣的:(数据挖掘学习笔记,集成学习,数据挖掘)