机器学习的集成学习方法

集成学习的集成对象是学习器

Bagging(可并行):有放回地采样同数量部分样本训练每个学习器(单一的学习算法),再一起集成(简单投票或者求平均)

  • 学习器间不存在强依赖关系, 学习器可并行训练生成, 集成方式一般为投票;
  • Random Forest属于Bagging的代表, 放回抽样, 每个学习器随机选择部分特征去优化;

Droupout与Bagging的区别:

  • Bagging:所有模型都是独立的
  • Droupout:模型参数共享

Gradient boosting(GB)
目标:优化或者说最小化loss function
思想:迭代生成多个弱的模型,将每个弱模型相加,后面的模型F_(m+1)基于前面学习模型F_(m)的效果生成

Gradient boosting Decision Tree(GBDT)

在函数空间中利用梯度下降法进行优化

GD与DT的结合,这里的决策树是回归树每棵树是从之前所有树的残差中来学习的

Xgboost

在函数空间中用牛顿法进行优化

xgboost中的基学习器除了可以是CART(gbtree)也可以是线性分类器(gblinear)

Boosting(串行):使用全部样本(可调权重)依次训练每个学习器, 迭代集成(平滑加权)
算法迭代必须串行,但在处理每个特征列时可以并行

  • 学习器之间存在强依赖关系、必须串行生成, 集成方式为加权和;
  • Adaboost加法模型+指数损失+前向分布;属于Boosting, 采用指数损失函数替代原本分类任务的0/1损失函数;提高误分样本的权值
    • 原理:首先使用初始训练数据,训练弱分类器,对于分错的样本要在增大它的权值,分对样本要减小它的权值。迭代进行,最后将各个若分类器学习到的结果进行加权,分类误差率大的分类器权重大,小的权重小。
  • GBDT:属于Boosting的优秀代表, 对函数残差近似值(此近似值为损失函数的负梯度在模型的值)进行梯度下降, 用CART回归树做学习器, 集成为回归模型;
    • GB:负梯度,拟合残差
    • DT:使用的决策树是回归树,寻找最佳划分点,平方误差(回归树中的样本标签是连续值)
  • xgboost:属于Boosting的集大成者, 对函数残差近似值进行梯度下降, 迭代时利用了二阶梯度信息, 集成模型可分类也可回归. 由于它可在特征粒度上并行计算, 结构风险和工程实现都做了很多优化, 泛化, 性能和扩展性都比GBDT要好。
    • 原理: xgboost是在传统GBDT上的一个提升
      传统的GBDT使用回归树,xgboost还支持线性分类器
      GBDT只用到了一阶导数信息,xgboost对代价函数进行了二阶泰勒展开,并且可以自定义损失函数,只要求它二阶可导
      Xgboost增加了正则化项,用于控制模型的复杂度,防止过拟合
      Xgboost还支持子采样(使用部分数据),列采样(使用部分特征),防止过拟合;样本不放回(每轮计算样本不重复)

对于基学习器,常用的有决策树,其学习过程是从根建立树,关于各种方法叶子节点分裂的方法有:
ID3/C4.5:信息增益/信息增益比
CART:基尼指数
gbdt:基尼指数
xgboost:二阶泰勒展开系数


RF(随机森林)与GBDT:

RF(Bagging)GBDT(Boosting)
1、多棵树组成,2、结果有多棵树决定同RF
分类树、回归树回归树
可并行只能串行
多数表决加权累加
对异常值不敏感对异常值敏感
减少模型方差提高性能减少模型偏差提高性能
不需要特征归一化需要特征归一化

xgboost类似于gbdt的优化版,不论是精度还是效率上都有了提升。与gbdt相比,xgboost具体的优点有:
1.二阶泰勒展开;损失函数是用泰勒展式二项逼近,而不是像gbdt里的就是一阶导数
2.节点分数惩罚;对树的结构进行了正则化约束,防止模型过度复杂,降低了过拟合的可能性
3.节点分裂的方式;gbdt是用的gini系数,xgboost采用优化推导公式

xgboost使用二阶泰勒展开的原因:
收敛快,分布式

参考:
https://blog.csdn.net/timcompp/article/details/61919851
https://www.julyedu.com/question/big/kp_id/23/ques_id/1568

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值