模型集成(Ensemble)

1. 模型集成的框架

  模型集成的框架是这样的,有很多种分类器,它们应该是不同的,可以是不同的机器学习方法,也可以是相同的方法。但是它们最好是互补的,也就是说不是互相相似的。每种分类器都应该有自己的位置。

2. Ensemble:Bagging

  在本节中会以某一种机器学习方法举例,但是实际上这种集成方法适用于任何的机器学习方法。

2.1 回顾偏置与方差的关系

  偏置与方差的关系如下图所示

除了可以很完美进行工作的机器学习模型,剩下的模型大致可以分为两种情况,即欠拟合(Underfitting)和过拟合(Overfitting)。欠拟合的特点在于它具有比较小的方差,但是却有着比较大的偏置(即与正确答案的偏离方向);而过拟合虽然有着较小的偏置,但是却有着较大的方差,将这两种情况画在一起如上图所示,随着模型复杂程度的增大,模型的效果会先提高后降低。

2.2 Bagging的方法

  Bagging的方法如下图所示

他利用可放回抽样总共获得N个样本,之后训练N个分类器,对于回归问题取这N个分类器的均值,对于分类问题让这N个分类器进行投票,

  主要注意的是,这种方法主要用在抑制模型过拟合的问题,比如说决策树。这种方法在NN上用的并不多,因为NN实际上没有想象中那么容易过拟合,它往往是在训练集上不能获得100% 的正确率的。

  下面是一个使用决策树进行分类的例子

将决策树化成图形的形式如上图所示,在形成一个决策树的过程中需要考虑一些参数,比如说分支数,分支的标准,终止准则,基本假设。

  下面是从图像中得到初音剪影的例子

在这里只是使用了一个单一的决策树,上面是不同深度获得效果,可以看到当树的深度达到20层的时候获得了很好的效果。

2.3 随机森林(Random Forest)

  随机森林便是 bagging 的一个很好的例子,如下图所示

决策树很容易在训练集上获得0错误率的结果,因为如果一个叶子节点对应一个例子的话,很容易会得到这样的结果。这是就要对决策树采用 bagging 的方法,实际上也就是使用了随机森林的方法。在随机森林中仅仅进行重采样是不够的,因为仅仅使用重采样会使训练出的树之间很像;为了树之间更不像,还要决定哪些特性用于分类,哪些特性不用于分类。如上面的表格所示,第一个分类函数仅仅使用 x1,x2 两个数据,后面的都是一样的,只是选择了一些数据,所以在使用验证集的时候可以直接使用那些没有用来训练的数据进行测试,比如说使用f2 +f4组成随机森林,用数据x1进行检验,这种方法叫做 Out-of-bag,他看不在 bag 中的例子的表现如何,来判断现在模型的表现如何,这种方法的一个好处在于,它可以不用再事先切一个验证集出来,直接使用没有被用到的数据进行验证就好,随机森林的一个的实验结果如下图所示

这里总共使用了100个树构成的随机森林,从实验结果中可以看到,较为浅层的树仍然不能获得很好的效果,但是它可以使得结果更为平滑。

3. Ensemble: Boosting

  与 Bagging 有所不同,Boosting的目的不是为了抑制过拟合,而是为了提高弱的分类器的性能。它可以保证,只要你使用的分类器在训练数据上的误差小于50%,通过Boosting 之后你得分类器的正确率最终总会到0。

  Boosting 的具体框架如下

首先他会获得第一个分类器 f1(x) ,然后找到第二个分类器 f2(x) 来帮助第一个分类器 f1(x) 。这个第二个分类器是什么样的机器学习算法都好,只要能够帮到 第一个分类器 f1(x) 提高整体的性能;然而如果 f2(x) f1(x) 是很相似的话,那么它们就没有办法帮助他很多,我们希望我们得到的 f2(x

  • 11
    点赞
  • 83
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值