大数据,机器学习,人工智能Python3机器学习人工智能/模式识别/机器学习精华专题

Python3机器学习实践:集成学习之AdaBoost

2018-11-29  本文已影响19人  AiFany
t.png

一、AdaBoost初识

这个方法主要涉及到2种权重:
样本权重:每个样本都对应一个权重。在构建第一个弱模型之前,所有训练样本的权重是一样的。第一个模型完成后,要加大那些被这个模型错误分类(分类问题)、或者预测值与真实值的差值较大(回归问题)的样本的权重。依次迭代,最终构建多个弱模型。每个弱模型所对应的训练数据集样本是一样的,只是样本权重是不一样的。
弱模型权重:得到的每个弱模型都对应一个权重。精度越高(分类问题的错分率越低,回归问题的错误率越低)的模型,其权重也就越大,在最终集成结果时,其话语权也就越大。

二、AdaBoost流程图

image

三、AdaBoost步骤

分类问题
classify.png

回归和分类的最大不同在于:回归问题错误率的计算方式。因为回归有很多的变种,下面以Adaboost R2算法为例给出回归问题的步骤:

回归问题
regre.png

四、AdaBoost正则化

image

五、AdaBoost答疑

六、Sklearn包中的Adaboost类库概述

Adaboost类库中有两个框架:AdaBoostClassifier和AdaBoostRegressor。前者用于分类问题,后者用于回归问题。其中前者使用了两种算法:SAMME和SAMME.R。而后者使用的算法为Adaboost.R2。

对Adaboost调参,包括2部分:一是对框架进行调参, 二是对弱模型进行调参。

仅给出默认的CART决策树的参数。即CART分类树DecisionTreeClassifier和CART回归树DecisionTreeRegressor。这里只介绍比较重要的参数:

七、实例

预测数据结果

image

预测数据结果:

image image

实例代码AdaBoost,扫描下方二维码或者微信公众号直接搜索”Python范儿“,关注微信公众号pythonfan, 获取更多实例和代码。

pythonfan.jpg
上一篇下一篇

猜你喜欢

热点阅读