【机器学习笔记】 9 集成学习

这篇具有很好参考价值的文章主要介绍了【机器学习笔记】 9 集成学习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

集成学习方法概述

Bagging

从训练集中进行子抽样组成每个基模型所需要的子训练集,对所有基模型预测的结果进行综合产生最终的预测结果:
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
假设一个班级每个人的成绩都不太好,每个人单独做的考卷分数都不高,但每个人都把自己会做的部分做了,把所有考卷综合起来得到成绩就会比一个人做的高

Boosting

训练过程为阶梯状,基模型按次序一一进行训练(实现上可以做到并行),基模型的训练集按照某种策略每次都进行一定的转化。对所有基模型预测的结果进行线性综合产生最终的预测结果。
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

Stacking

将训练好的所有基模型对训练基进行预测,第j个基模型对第i个训练样本的预测值将作为新的训练集中第i个样本的第j个特征值,最后基于新的训练集进行训练。同理,预测的过程也要先经过所有基模型的预测形成新的测试集,最后再对测试集进行预测。
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

Random Forest(随机森林)

用随机的方式建立一个森林。随机森林算法由很多决策树组成,每一棵决策树之间没有关联。建立完森林后,当有新样本进入时,每棵决策树都会分别进行判断,然后基于投票法给出分类结果。

  • 优点
    在数据集上表现良好,相对于其他算法有较大的优势
    易于并行化,在大数据集上有很大的优势;
    能够处理高维度数据,不用做特征选择。

Random Forest(随机森林)是 Bagging 的扩展变体,它在以决策树为基学习器构建Bagging 集成的基础上,进一步在决策树的训练过程中引入了随机特征选择,因此可以概括 随机森林包括四个部分:

  1. 随机选择样本(放回抽样);
  2. 随机选择特征;
  3. 构建决策树;
  4. 随机森林投票(平均)。
    【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
    随机选择样本和 Bagging 相同,采用的是Bootstraping 自助采样法;随机选择特征是指在每个节点在分裂过程中都是随机选择特征的(区别与每棵树随机选择一批特征)。
    这种随机性导致随机森林的偏差会有稍微的增加(相比于单棵不随机树),但是由于随机森林的“平均”特性,会使得它的方差减小,而且方差的减小补偿了偏差的增大,因此总体而言是更好的模型。
    【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

AdaBoost算法

AdaBoost(Adaptive Boosting,自适应增强),其自适应在于:前一个基本分类器分错的样本会得到加强,加权后的全体样本再次被用来训练下一个基本分类器。同时,在每一轮中加入一个新的弱分类器,直到达到某个预定的足够小的错误率或达到预先指定的最大迭代次数。
用一句话概括该思想就是后一个模型的训练永远是在前一个模型的基础上完成
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

  • 算法思想
    • 初始化训练样本的权值分布,每个样本具有相同权重;
    • 训练弱分类器,如果样本分类正确,则在构造下一个训练集中,它的权值就会被降低;反之提高。用更新过的样本集去训练下一个分类器;
    • 将所有弱分类组合成强分类器,各个弱分类器的训练过程结束后,加大分类误差率小的弱分类器的权重,降低分类误差率大的弱分类器的权重。
    【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

GBDT算法

GBDT(Gradient Boosting Decision Tree)是一种迭代的决策树算法,该算法由多棵决策树组成,GBDT 的核心在于累加所有树的结果作为最终结果,所以 GBDT 中的树都是回归树,不是分类树,它是属于 Boosting 策略。GBDT 是被公认的泛化能力较强的算法。

  • GBDT 由三个概念组成:Regression Decision Tree(即 DT)、Gradient Boosting(即 GB),和 Shrinkage(缩减)
    【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
损失函数的负梯度在当前模型的值作为提升树的残差的近似值来拟合回归树
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

XGBoost

XGBoost 是大规模并行 boosting tree 的工具,它是目前最快最好的开源 boosting tree 工具包
,比常见的工具包快 10 倍以上。XGBoost 和GBDT 两者都是 boosting 方法,除了工程实现及解决问题上的一些差异外,最大的不同就是目标函数的定义。
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

  • XGBoost的分裂方式
    使用贪心方法,选增益( 𝑔𝑎𝑖𝑛 )最大的分裂方式。
    贪心方法,众多𝑔𝑎𝑖𝑛中找到最大值做为最优分割节点(split point),因此模型会将所有样本按照(一阶梯度)从小到大排序,通过遍历,查看每个节点是否需要分割,计算复杂度是:决策树叶子节点数 – 1。

LightGBM

由微软提出,主要用于解决 GDBT 在海量数据中遇到的问题,以便其可以更好更快地用于工业实践中,其相对 XGBoost 具有训练速度快、内存占用低的特点。

  • LightGBM与XGBoost相比,主要有以下几个优势:
    1)更快的训练速度
    2)更低的内存消耗
    3)更好的准确率
    4)分布式支持,可快速处理海量数据

  • LightGBM 的主要改进
    LightGBM与XGBoost相比,主要有以下几个改进:
    • 基于梯度的单边采样算法(Gradient-based One-Side Sampling, GOSS);
    • 互斥特征捆绑算法(Exclusive Feature Bundling, EFB);
    • 直方图算法( Histogram );
    • 基于最大深度的 Leaf-wise 的垂直生长算法;
    LightGBM = XGBoost + GOSS + EFB+ Histogram

基于梯度的单边采样算法(Gradient-based One-Side Sampling, GOSS)

主要思想是通过对样本采样的方法来减少计算目标函数增益时候的复杂度。
GOSS 算法保留了梯度大的样本,并对梯度小的样本进行随机抽样,为了不改变样本的数据分布,在计算增益时为梯度小的样本引入一个常数进行平衡。
如果一个样本的梯度很小,说明该样本的训练误差很小,或者说该样本已经得到了很好的训练(well-trained)。

  • 算法思想
    输入:训练数据,迭代步数d,大梯度数据的采样率a,小梯度数据的采样率b,损失函数和若学习器的类型(一般为决策树)
    输出:训练好的强学习器
    (1)根据样本点的梯度的绝对值对它们进行降序排序;
    (2)对排序后的结果选取前a*100%的样本生成一个大梯度样本点的子集;
    (3)对剩下的样本集合(1-a)*100%的样本,随机的选取b *(1-a)*100%个样本点,生成一个小梯度样本点的集合;
    (4)将大梯度样本和采样的小梯度样本合并;
    (5)将小梯度样本乘上一个权重系数1−𝑎𝑏 ;
    (6)使用上述的采样的样本,学习一个新的弱学习器;
    (7)不断地重复(1)~(6)步骤直到达到规定的迭代次数或者收敛为止。
    【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

互斥特征捆绑算法(Exclusive Feature Bundling, EFB)

高维特征往往是稀疏的,而且特征间可能是相互排斥的(如两个特征不同时取非零值),如果两个特征并不完全互斥(如只有一部分情况下是不同时取非零值),可以用互斥率表示互斥程度。EFB算法指出如果将一些特征进行融合绑定,则可以降低特征数量。
论文给出特征合并算法,其关键在于原始特征能从合并的特征中分离出来
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

直方图算法

直方图算法的基本思想是将连续的特征离散化为𝑘个离散特征,同时构造一个宽度为𝑘的直方图用于统计信息(含有 𝑘 个 bin)。利用直方图算法我们无需遍历数据,只需要遍历 𝑘 个 bin 即可找到最佳分裂点。
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习文章来源地址https://www.toymoban.com/news/detail-826185.html

  • 直方图加速
    在构建叶节点的直方图时,我们还可以通过父节点的直方图与相邻叶节点的直方图相减的方式构建,从而减少了一半的计算量。即:一个叶子节点的直方图可以由它的父亲节点的直方图与其兄弟的直方图做差得到。如节点分裂成两个时,右边叶子节点的直方图等于其父节点的直方图减去左边叶子节点的直方图。从而大大减少构建直方图的计算量
    【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
    【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习
    【机器学习笔记】 9 集成学习,机器学习,机器学习,笔记,集成学习

到了这里,关于【机器学习笔记】 9 集成学习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 机器学习分类算法之XGBoost(集成学习算法)

    目录 走进XGBoost 什么是XGBoost? XGBoost树的定义 XGBoost核心算法 正则项:树的复杂程度 XGBoost与GBDT有什么不同 XGBoost需要注意的点 XGBoost重要参数详解 调参步骤及思想 XGBoost代码案例 相关性分析 n_estimators(学习曲线) max_depth(学习曲线) 调整max_depth 和min_child_weight 调整gamma 调

    2024年02月03日
    浏览(48)
  • 【Python机器学习】零基础掌握GradientBoostingClassifier集成学习

    什么能有效地解决分类问题,特别是在数据复杂、特征多样的情况下? 面对这个问题,许多人可能会想到复杂的神经网络或深度学习方法。然而,有一种称为“梯度提升分类器”(Gradient Boosting Classifier)的算法,以其高准确度、灵活性和易用性赢得了大量用户的青睐。 假设

    2024年02月05日
    浏览(34)
  • 【Python机器学习】零基础掌握BaggingRegressor集成学习

    如何提升回归模型的稳定性和准确性? 在实际生活中,比如房价预测,经常会遇到一种情况:有大量的特征和样本数据,但模型的预测准确度仍然不尽人意。这时候,单一的模型(如支持向量机回归)可能表现得并不够好。 考虑到这个问题,解决方案可能是使用集成方法,

    2024年02月05日
    浏览(27)
  • 【Python机器学习】零基础掌握AdaBoostRegressor集成学习

    有没有经历过这样的状况:需要预测未来房价走势,但传统的预测方法并不总是准确? 房价预测一直是人们关注的热点话题,无论是房产商、购房者,还是政府,都需要准确地知道未来房价的走势。那么,有没有一种更加精准、稳定的预测方法呢?答案是有的——AdaBoost Re

    2024年02月06日
    浏览(25)
  • 【Python机器学习】零基础掌握StackingRegressor集成学习

    如何更准确地预测糖尿病患者的血糖水平? 糖尿病是一种影响全球数百万人的慢性疾病。有效地管理和预测血糖水平是糖尿病患者日常生活的重要一环。单一的预测模型(比如线性回归、支持向量机等)虽然有一定的效果,但在处理复杂的医疗数据时,其准确性可能会受到限

    2024年02月08日
    浏览(33)
  • Hive的机器学习与AI集成

    Hive是一个基于Hadoop的数据仓库查询和数据分析工具,它使用了一种类SQL查询语言,允许用户以简单的查询方式对大规模数据集进行查询和分析。在大数据领域,Hive已经成为一个非常重要的工具,它可以帮助我们更快地分析数据,提高数据分析的效率。 然而,随着人工智能和

    2024年04月08日
    浏览(17)
  • 【Python机器学习】决策树集成——梯度提升回归树

    理论知识:                 梯度提升回归树通过合并多个决策树来构建一个更为强大的模型。虽然名字里有“回归”,但这个模型既能用于回归,也能用于分类。与随机森林方法不同,梯度提升采用连续的方式构造树,每棵树都试图纠正前一棵树的错误。默认情况下,

    2024年02月01日
    浏览(32)
  • 传统机器学习(六)集成算法(2)—Adaboost算法原理

    Adaboost(Adaptive Boosting)是一种自适应增强算法,它集成多个弱决策器进行决策。 Adaboost解决二分类问题 ,且二分类的标签为{-1,1}。 注:一定是{-1,1},不能是{0,1} 它的训练过程是通过不断添加新的弱决策器,使损失函数继续下降,直到添加决策器已无效,最终将所有决策器集成

    2024年02月05日
    浏览(32)
  • 【机器学习】实验6布置:基于集成学习的Amazon用户评论质量预测

    学堂在线《机器学习》实验课代码+报告(其中实验1和实验6有配套PPT),授课老师为张敏老师。课程链接:https://www.xuetangx.com/training/ML080910036802/1048372?channel=i.area.page_course_ad。 持续更新中。 所有代码为作者所写,并非最后的“标准答案”,只有课程设计被扣了1分,其余皆是

    2024年02月12日
    浏览(32)
  • 10- 天猫用户复购预测 (机器学习集成算法) (项目十) *

    项目难点  merchant:  商人 重命名列名:  user_log .rename (columns={\\\'seller_id\\\':\\\'merchant_id\\\'}, inplace=True) 数据类型转换 :  user_log[\\\'item_id\\\'] = user_log[\\\'item_id\\\'] .astype(\\\'int32\\\') 主要使用方法: xgboost, lightbm 竞赛地址:  天猫复购预测之挑战Baseline_学习赛_天池大赛-阿里云天池 排名: 448/9361     sco

    2024年02月10日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包