0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于集成学习的决策介绍(下)

jf_78858299 ? 来源:人工智能大讲堂 ? 作者:阿泽 复旦大学 ? 2023-02-17 15:52 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

4.2 细节

4.2.1 损失函数

Adaboost 模型是加法模型,学习算法为前向分步学习算法,损失函数为指数函数的分类问题。

加法模型:最终的强分类器是由若干个弱分类器加权平均得到的。

前向分布学习算法:算法是通过一轮轮的弱学习器学习,利用前一个弱学习器的结果来更新后一个弱学习器的训练集权重。第 k 轮的强学习器为:

图片

定义损失函数为 n 个样本的指数损失函数:

图片

利用前向分布学习算法的关系可以得到:

图片

因为 图片已知,所以令 图片,随着每一轮迭代而将这个式子带入损失函数,损失函数转化为:

图片

我们求 图片 ,可以得到:

图片

图片带入损失函数,并对图片求导,使其等于 0,则就得到了:

图片

其中, 图片即为我们前面的分类误差率。

图片

最后看样本权重的更新。利用 图片图片,即可得:图片

这样就得到了样本权重更新公式。

4.2.2 正则化

为了防止 Adaboost 过拟合,我们通常也会加入正则化项,这个正则化项我们通常称为步长(learning rate)。对于前面的弱学习器的迭代图片

加上正则化项 图片 我们有:

图片

图片 的取值范围为 0<图片≤1 。对于同样的训练集学习效果,较小的 图片 意味着我们需要更多的弱学习器的迭代次数。通常我们用步长和迭代最大次数一起来决定算法的拟合效果。

4.3 优缺点

4.3.1 优点

  1. 分类精度高;
  2. 可以用各种回归分类模型来构建弱学习器,非常灵活;
  3. 不容易发生过拟合。

4.3.2 缺点

  1. 对异常点敏感,异常点会获得较高权重。

5. GBDT

GBDT(Gradient Boosting Decision Tree)是一种迭代的决策树算法,该算法由多棵决策树组成,从名字中我们可以看出来它是属于 Boosting 策略。GBDT 是被公认的泛化能力较强的算法。

5.1 思想

GBDT 由三个概念组成:Regression Decision Tree(即 DT)、Gradient Boosting(即 GB),和 Shrinkage(一个重要演变)

5.1.1 回归树(Regression Decision Tree)

如果认为 GBDT 由很多分类树那就大错特错了(虽然调整后也可以分类)。对于分类树而言,其值加减无意义(如性别),而对于回归树而言,其值加减才是有意义的(如说年龄)。GBDT 的核心在于累加所有树的结果作为最终结果,所以 GBDT 中的树都是回归树,不是分类树,这一点相当重要。

回归树在分枝时会穷举每一个特征的每个阈值以找到最好的分割点,衡量标准是最小化均方误差。

5.1.2 梯度迭代(Gradient Boosting)

上面说到 GBDT 的核心在于累加所有树的结果作为最终结果,GBDT 的每一棵树都是以之前树得到的残差来更新目标值,这样每一棵树的值加起来即为 GBDT 的预测值。

模型的预测值可以表示为:

图片

图片为基模型与其权重的乘积,模型的训练目标是使预测值 图片逼近真实值 y,也就是说要让每个基模型的预测值逼近各自要预测的部分真实值。由于要同时考虑所有基模型,导致了整体模型的训练变成了一个非常复杂的问题。所以研究者们想到了一个贪心的解决手段:每次只训练一个基模型。那么,现在改写整体模型为迭代式:

图片

这样一来,每一轮迭代中,只要集中解决一个基模型的训练问题:使 图片逼近真实值 y 。

举个例子:比如说 A 用户年龄 20 岁,第一棵树预测 12 岁,那么残差就是 8,第二棵树用 8 来学习,假设其预测为 5,那么其残差即为 3,如此继续学习即可。

那么 Gradient 从何体现?其实很简单,其残差其实是最小均方损失函数关于预测值的反向梯度(划重点):

图片

也就是说,预测值和实际值的残差与损失函数的负梯度相同。

但要注意,基于残差 GBDT 容易对异常值敏感,举例:

图片

很明显后续的模型会对第 4 个值关注过多,这不是一种好的现象,所以一般回归类的损失函数会用绝对损失或者 Huber 损失函数来代替平方损失函数。

图片

GBDT 的 Boosting 不同于 Adaboost 的 Boosting,GBDT 的每一步残差计算其实变相地增大了被分错样本的权重,而对与分对样本的权重趋于 0,这样后面的树就能专注于那些被分错的样本。

5.1.3 缩减(Shrinkage)

Shrinkage 的思想认为,每走一小步逐渐逼近结果的效果要比每次迈一大步很快逼近结果的方式更容易避免过拟合。即它并不是完全信任每一棵残差树。图片

Shrinkage 不直接用残差修复误差,而是只修复一点点,把大步切成小步。本质上 Shrinkage 为每棵树设置了一个 weight,累加时要乘以这个 weight,当 weight 降低时,基模型数会配合增大。

5.2 优缺点

5.2.1 优点

  1. 可以自动进行特征组合,拟合非线性数据;
  2. 可以灵活处理各种类型的数据。

5.2.2 缺点

  1. 对异常点敏感。

5.3 与 Adaboost 的对比

5.3.1 相同:

  1. 都是 Boosting 家族成员,使用弱分类器;
  2. 都使用前向分布算法;

5.3.2 不同:

  1. 迭代思路不同:Adaboost 是通过提升错分数据点的权重来弥补模型的不足(利用错分样本),而 GBDT 是通过算梯度来弥补模型的不足(利用残差);
  2. 损失函数不同:AdaBoost 采用的是指数损失,GBDT 使用的是绝对损失或者 Huber 损失函数;

6. 参考

  1. 机器学习算法中 GBDT 与 Adaboost 的区别与联系是什么? - Frankenstein 的回答 - 知乎

  2. 为什么说bagging是减少variance,而boosting是减少bias

  3. Ensemble Learning - 周志华

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    机器学习中常用的决策树算法技术解析

    决策树是最重要的机器学习算法之一,其可被用于分类和回归问题。本文中,我们将介绍分类部分。
    发表于 10-12 16:39 ?1532次阅读
    机器<b class='flag-5'>学习</b>中常用的<b class='flag-5'>决策</b>树算法技术解析

    不可错过 | 集成学习入门精讲

    各方面表现都很好的模型。但往往我们只能得到一些弱监督模型(在某些方面表现比较好),集成学习通常就是结合多个简单的弱机器学习算法,去做更准确的决策。用俗语来讲,就是集众人智慧去做相应的
    发表于 06-06 10:11

    决策树在机器学习的理论学习与实践

    决策树在机器学习的理论学习与实践
    发表于 09-20 12:48

    机器学习决策介绍

    机器学习——决策树算法分析
    发表于 04-02 11:48

    介绍支持向量机与决策集成等模型的应用

    本文主要介绍支持向量机、k近邻、朴素贝叶斯分类 、决策树、决策集成等模型的应用。讲解了支持向量机SVM线性与非线性模型的适用环境,并对核函数技巧作出深入的分析,对线性Linear核函
    发表于 09-01 06:57

    决策树的生成资料

    在本文中,我们将讨论一种监督式学习算法。最新一代意法半导体 MEMS 传感器内置一个基于决策树分类器的机器学习核心(MLC)。这些产品很容易通过后缀中的 X 来识别(例如,LSM6DSOX)。这种
    发表于 09-08 06:50

    决策树的介绍

    关于决策树的介绍,是一些很基础的介绍,不过是英文介绍
    发表于 09-18 14:55 ?0次下载

    机器学习决策渗透着偏见,能把决策权完全交给机器吗?

    随着人工智能的发展,人类将会把越来越多的决策权交给机器。但是,从目前的一些事例看,基于机器学习决策并非那么公正完美,相反,那些决策也渗透着偏见。近期的一份研究报告中,Google的一
    发表于 05-11 10:33 ?1588次阅读

    决策树的原理和决策树构建的准备工作,机器学习决策树的原理

    希望通过所给的训练数据学习一个贷款申请的决策树,用于对未来的贷款申请进行分类,即当新的客户提出贷款申请时,根据申请人的特征利用决策树决定是否批准贷款申请。
    的头像 发表于 10-08 14:26 ?6491次阅读

    决策树的基本概念/学习步骤/算法/优缺点

    本文将介绍决策树的基本概念、决策学习的3个步骤、3种典型的决策树算法、决策树的10个优缺点。
    发表于 01-27 10:03 ?2955次阅读
    <b class='flag-5'>决策</b>树的基本概念/<b class='flag-5'>学习</b>步骤/算法/优缺点

    为什么要使用集成学习 机器学习建模的偏差和方差

    我们在生活中做出的许多决定都是基于其他人的意见,而通常情况由一群人做出的决策比由该群体中的任何一个成员做出的决策会产生更好的结果,这被称为群体的智慧。集成
    的头像 发表于 08-14 09:52 ?3395次阅读
    为什么要使用<b class='flag-5'>集成</b><b class='flag-5'>学习</b> 机器<b class='flag-5'>学习</b>建模的偏差和方差

    强化学习与智能驾驶决策规划

    本文介绍了强化学习与智能驾驶决策规划。智能驾驶中的决策规划模块负责将感知模块所得到的环境信息转化成具体的驾驶策略,从而指引车辆安全、稳定的行驶。真实的驾驶场景往往具有高度的复杂性及不确
    的头像 发表于 02-08 14:05 ?2302次阅读

    基于集成学习决策介绍(上)

    本文主要介绍基于集成学习决策树,其主要通过不同学习框架生产基学习器,并综合所有基
    的头像 发表于 02-17 15:52 ?1081次阅读
    基于<b class='flag-5'>集成</b><b class='flag-5'>学习</b>的<b class='flag-5'>决策</b><b class='flag-5'>介绍</b>(上)

    基于 Boosting 框架的主流集成算法介绍

    本文是决策树的第三篇,主要介绍基于 Boosting 框架的主流集成算法,包括 XGBoost 和 LightGBM。 XGBoost
    的头像 发表于 02-17 15:58 ?3147次阅读
    基于 Boosting 框架的主流<b class='flag-5'>集成</b>算法<b class='flag-5'>介绍</b>(<b class='flag-5'>下</b>)

    什么是集成学习算法-1

    同质集成:只包含同种类型算法,比如决策集成全是决策树,异质集成:包含不同种类型算法,比如同时包含神经网络和
    的头像 发表于 02-24 16:37 ?1702次阅读
    什么是<b class='flag-5'>集成</b><b class='flag-5'>学习</b>算法-1