您当前的位置:首页 > 新闻 > 科技

机器学习算法的新女王——XGBoost

时间:2020-08-13 18:18:09  来源:  作者:

字幕组双语原文:机器学习最优算法:XGBoost

英语原文:XGBoost Algorithm: Long May She Reign!

翻译:雷锋字幕组(yhfwww)

仍然记得15年前参加工作的第一天,刚完成研究生学业的我,加入了一家全球投资银行担任分析师。那天我不停地拉直领带,努力回忆起学过的所有东西,怀疑自己是否足够胜任工作。察觉到我的焦虑,老板微笑着说:

“别担心!你只需要知道回归模型就行了!”

我当时在想,“我知道这个!”。我知道回归模型、线性回归和逻辑回归。老板的说法是对的,在任期内我仅仅建立了基于回归的统计模型。在那个时候,回归建模是预测分析无可争议的女王。15年后,回归建模的时代已经结束。迟暮的女王已经退场,取而代之的是名字时髦、活力满满的新女王XGBoost(Exterme Gradient Boosting,极限梯度提升)。

 

什么是XGBoost?

XGBoost是基于决策树的集成机器学习算法,使用了梯度提升框架。在涉及非结构化数据(图像、文本等)的预测问题中,人工神经网络往往优于所有其他算法或框架。然而,当涉及到中小型结构化/表格数据时,基于决策树的算法被认为是目前同类中最好的。请参阅下表了解这些年来基于树的算法的发展。

机器学习算法的新女王——XGBoost

基于决策树的XGBoost算法演化

XGBoost算法是华盛顿大学的一个研究项目。陈天奇和Carlos Guestrin在2016年的SIGGDD大会上发的的论文,让机器学习世界如火如荼。自引入以来,该算法不仅赢得了众多的Kaggle竞赛,而且还被认为是若干前沿行业应用的驱动力。因此,有一个强大的数据科学家社区为XGBoost开源项目做出贡献,GitHub上有大约350个贡献者和~3600个提交者。该算法有以下特点:

  1. 应用范围广泛:可用于解决回归、分类、排名和用户自定义预测问题。

  2. 可移植性:在windowslinux和os x上运行平稳。

  3. 语言:支持所有主流的编程语言,包括C++、Python、R、JAVA、Scala和Julia。

  4. 云集成:支持AWS、Azure和Yarn集群,与Flink、Spark和其他生态系统配合良好。

 

如何建立对XGBoost的直觉认识?

决策树,在其最简单的形式,是易于可视化和相当可解释的算法,但为下一代基于树的算法建立直觉可能有点棘手。下面是一个简单的类比,可以更好地理解基于树的算法的发展。

机器学习算法的新女王——XGBoost

照片来Unsplash的rawpixel

想象一下,你是一个招聘经理,面试几位资历优秀的应聘者。基于树的算法进化的每一步都可以看作是面试过程的一个版本。

  1. 决策树:每个招聘经理都有一套标准,比如教育水平、工作年限、面试表现。决策树类似于招聘经理根据自己的标准面试应聘者。

  2. Bagging:现在想象一下,不是一个面试官,而是一个面试小组,每个面试官都有投票权。Bagging聚合包括通过民主投票过程将所有面试官的意见结合起来,以最终做出决定。

  3. 随机森林:这是一种基于Bagging的算法,有一个关键的区别,其中只有一个子集的特征是随机选择的。换言之,每个面试官只会对面试者进行一些随机选择的资格测试(例如,测试编程技能的技术面试和评估非技术技能的行为面试)。

  4. Boosting:这是一种替代方法,每个面试官都会根据前一位面试官的反馈来改变评估标准。这通过部署一个更动态的评估过程来“提升Boosts”面试过程的效率。

  5. 梯度提升:通过梯度下降算法将误差最小化的一种特例,例如,战略咨询公司利用案例面试来淘汰不合格的候选人。

  6. XGBoost:可以把XGBoost看作是对“steroids”的梯度增强(它被称为“极致梯度增强”是有原因的!)。它是软硬件优化技术的完美结合,可以在最短的时间内使用较少的计算资源获得优异的结果。

 

为什么XGBoost表现如此出色?

XGBoost和Gradient Boosting machines(GBMs)都是集成树方法,它们采用梯度下降结构来提高弱学习者(CARTs)的学习能力。然而,XGBoost通过系统优化和算法增强改进了基本GBM框架。

机器学习算法的新女王——XGBoost

XGBoost如何优化标准GBM算法

  1. 并行化:XGBoost使用并行化实现序列树的构建过程。这是可能的,因为用于构建基本学习器的循环具有可互换性;外部循环枚举树的叶节点,第二个内部循环计算特征。这是可能的,因为用于构建基本学习器的循环具有可互换性;外部循环枚举树的叶节点,第二个内部循环计算特征。这种循环嵌套限制了并行化,因为没有完成内部循环(对这两个循环的计算要求更高),外部循环就无法启动。因此,为了改进运行时,循环的顺序是通过初始化来交换的,通过对所有实例的全局扫描和使用并行线程进行排序。此开关通过抵消计算中的任何并行化开销来提高算法性能。

  2. 树修剪:GBM框架中的树分裂停止准则本质上是贪婪的,它依赖于分裂点的负损失准则。XGBoost使用指定的“max_depth”参数,而不是先使用条件,然后开始向后修剪树。这种“深度优先”方法显著提高了计算性能。

  3. 硬件优化:此算法旨在有效利用硬件资源。这是通过缓存感知来实现的,通过在每个线程中分配内部缓冲区来存储梯度统计信息。进一步的增强,如“内核外”计算优化可用磁盘空间,同时处理不适合内存的大数据帧。

算法增强:

  1. 正则化:它通过L1脊线L2正则化来惩罚更复杂的模型,以防止过度拟合。

  2. 稀疏性意识:XGBoost通过根据训练损失自动“学习”最佳缺失值,自然地允许输入稀疏特征,并更有效地处理数据中不同类型的稀疏模式。

  3. 加权分位数草图:XGBoost采用分布式加权分位数草图算法,有效地找到加权数据集之间的最佳分割点。

  4. 交叉验证:该算法在每次迭代中都带有内置的交叉验证方法,不需要显式地对该搜索进行编程,也不必指定一次运行中所需的确切的提升迭代次数。

 

证据在哪里?

我们使用scikitlearn的“Make_nuclassification”数据包创建了一个随机样本,其中有100万个数据点,有20个特征(2个是信息性的,2个是冗余的)。我们测试了一些算法,如Logistic回归、随机森林、标准梯度提升和XGBoost。

机器学习算法的新女王——XGBoost

XGBoost与使用SKLearn的Make_Classification 数据集的其他ML算法的比较

如上图所示,与其他算法相比,XGBoost模型具有最佳的预测性能和处理时间组合。其他严格的基准研究也产生了类似的结果。难怪XGBoost在最近的数据科学竞赛中被广泛使用。

“如有疑问,请使用XGBoost”——Owen Zhang

 

所以我们应该一直使用XGBoost吗?

说到机器学习(甚至是生活),没有免费的午餐。作为数据科学家,我们必须测试手头数据的所有可能的算法,以确定冠军算法。此外,选择正确的算法是不够的。我们还必须通过调整超参数来为数据集选择正确的算法配置。此外,在选择获胜算法时还有其他一些考虑因素,例如计算复杂度、可解释性和易于实现。这正是机器学习开始从科学走向艺术的起点,但老实说,这就是奇迹发生的地方!

 

未来会怎样?

机器学习是一个非常活跃的研究领域,已经有几种可行的XGBoost替代方案。微软研究院最近发布了LightGBM框架来增强梯度,显示出巨大的潜力。Yandex Technology开发的CatBoost已经取得了令人印象深刻的基准测试结果。在预测性能、灵活性、可解释性和实用性方面,我们有一个比XGBoost更好的模型框架是迟早的事。然而,直到有一个强大的挑战者出现,XGBoost将继续统治机器学习世界!

【封面图片来源:网站名Unsplash,所有者: Jared Subia】

雷锋字幕组是由AI爱好者组成的志愿者翻译团队;团队成员有大数据专家、算法工程师、图像处理工程师、产品经理、产品运营、IT咨询人、在校师生;志愿者们来自IBM、AVL、Adobe、阿里、百度等知名企业,北大、清华、港大、中科院、南卡罗莱纳大学、早稻田大学等海内外高校研究所。

了解字幕组请联系微信:tlacttlact

转载请联系字幕组微信并注明出处:雷锋字幕组

雷锋网雷锋网



Tags:机器学习算法   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
基于算法的业务或者说AI的应用在这几年发展得很快。但是,在实际应用的场景中,我们经常会遇到一些非常奇怪的偏差现象。例如,Facebook将黑人标记为灵长类动物、城市图像识别系统...【详细内容】
2021-11-08  Tags: 机器学习算法  点击:(32)  评论:(0)  加入收藏
特征选择是识别和选择与目标变量最相关的输入变量子集的过程。特征选择最简单的情况可能是存在数字输入变量和用于回归预测建模的数字目标的情况。这是因为可以计算出每个输...【详细内容】
2021-01-15  Tags: 机器学习算法  点击:(117)  评论:(0)  加入收藏
1、集成学习及Boosting算法集成学习属于机器学习,它是一种“训练思路”,并不是某种具体的方法或者算法。集成学习的核心思想是把已有的算法进行结合,从而得到更好的效果。集成...【详细内容】
2020-12-29  Tags: 机器学习算法  点击:(176)  评论:(0)  加入收藏
“终有一天,人工智能会像我们看待非洲平原上低级生物的化石一样看待我们。在人工智能眼中,人类只是直立行走的猿猴,用着粗糙的语言和简陋的工具,从诞生起就注定会灭绝。”&mdash...【详细内容】
2020-12-17  Tags: 机器学习算法  点击:(147)  评论:(0)  加入收藏
算法算法从1950年代的早期研究开始,机器学习的所有工作似乎都随着神经网络的创建而积累起来。 从逻辑回归到支持向量机,相继提出了新算法之后的算法,但是从字面上看,神经网络是...【详细内容】
2020-09-17  Tags: 机器学习算法  点击:(90)  评论:(0)  加入收藏
文 /杨晓宁随着产业界数据量的爆炸式增长,大数据概念受到越来越多的关注。由于大数据的海量、复杂多样、变化快的特性,对于大数据环境下的应用问题,传统的小数据上的机器学习...【详细内容】
2020-09-15  Tags: 机器学习算法  点击:(92)  评论:(0)  加入收藏
在这一节,我们将简要介绍不同类型的机器学习,并重点关注它们的主要特点和差异。在接下来的部分中,我们将讨论非正式定义,以及正式定义。如果你不熟悉讨论中涉及的数学概念,则可以...【详细内容】
2020-09-10  Tags: 机器学习算法  点击:(62)  评论:(0)  加入收藏
字幕组双语原文:机器学习最优算法:XGBoost英语原文:XGBoost Algorithm: Long May She Reign!翻译:雷锋字幕组(yhfwww)仍然记得15年前参加工作的第一天,刚完成研究生学业的我,加入了...【详细内容】
2020-08-13  Tags: 机器学习算法  点击:(76)  评论:(0)  加入收藏
常见机器学习算法的摘要。> Photo by Santiago Lacarta on Unsplash 近年来,由于对技术的高需求和进步,机器学习的普及已大大增加。 机器学习可以从数据中创造价值的潜力使其...【详细内容】
2020-07-28  Tags: 机器学习算法  点击:(57)  评论:(0)  加入收藏
目录 正则化算法(Regularization Algorithms) 集成算法(Ensemble Algorithms) 决策树算法(Decision Tree Algorithm) 回归(Regression) 人工神经网络(Artificial Neural Network) 深...【详细内容】
2020-07-14  Tags: 机器学习算法  点击:(99)  评论:(0)  加入收藏
▌简易百科推荐
就在今天,腾讯方面宣布将在2022年1月31日下架企业QQ和营销QQ,其实这一消息的降临并不让笔者意外,因为早在今年的10月28日20点之后,企业QQ和营销QQ就被停止了续费服务。相信很多...【详细内容】
2021-12-27  科技探险家    Tags:企业QQ   点击:(4)  评论:(0)  加入收藏
日前,上海交通大学发布《全球电竞之都评价报告》,对全球15个致力于发展电竞之都的城市进行评价,上海作为中国城市电竞发展的排头兵,其拥有众多优质电竞企业及完整产业集群,因此排...【详细内容】
2021-12-27  经济日报    Tags:电竞   点击:(2)  评论:(0)  加入收藏
为优化网络氛围环境,微博又开始整顿用户信息了。本月月初,微博官方发布公告,要求昵称中带有如“二货”“SB”“瘪三”“娘炮”等明显低俗或侮辱性词汇的用户尽快修改,否则将面临...【详细内容】
2021-12-24  运了个营    Tags:微博   点击:(10)  评论:(0)  加入收藏
昨日谷歌宣布,自2022年12月19日开始停止对OnHub的软件支持,OnHub路由器仍将提供Wi-Fi信号,但用户无法用谷歌Home应用程序管理它。无法更新Wi-Fi网络设置、添加额外的Wifi设备或...【详细内容】
2021-12-22  雷峰网    Tags:Google OnHub   点击:(5)  评论:(0)  加入收藏
IT之家 12 月 20 日消息,百度网盘青春版 iOS 客户端今日晚间率先开启内测,安卓客户端将在稍后内测。使用苹果 iPhone 的IT之家小伙伴可以点此下载内测版,需要先下载 TestFlight...【详细内容】
2021-12-21  IT之家    Tags:百度网盘   点击:(9)  评论:(0)  加入收藏
对于拼车单,是接还是不接,不少网约车司机表示很矛盾。接吧,钱少事多,常常跑了个寂寞,不接吧,车多客少,挑三拣四没饭吃。 在平台大力推广拼车单之下,不少司机迫于生活压力,最终还是打...【详细内容】
2021-12-17  网约车情报分享    Tags:滴滴   点击:(7)  评论:(0)  加入收藏
蓝鲸TMT频道12月16日讯,据饿了么官方微信公众号,近日,在圆桌会上,蓝骑士与平台交流了配送安全问题。饿了么表示,线上将技术手段融入安全防护;线下将持续进行安全培训,并试点智能头...【详细内容】
2021-12-17    金融界  Tags:饿了么   点击:(23)  评论:(0)  加入收藏
开源最前线(ID:OpenSourceTop) 猿妹编译项目地址: https://github.com/restic/restic全球知名代码托管平台 GitHub 今天就重磅发布了今年的年度报告——《2021 年度 O...【详细内容】
2021-12-17  Python部落    Tags:   点击:(9)  评论:(0)  加入收藏
新京报快讯 据中国网络视听节目服务协会网站消息,12月15日,中国网络视听节目服务协会发布了《网络短视频内容审核标准细则》(2021)。中国网络视听节目服务协会组织有关短视频平...【详细内容】
2021-12-16    新京报  Tags:短视频   点击:(11)  评论:(0)  加入收藏
今年以来,国家网信办针对一些粉丝量大、关注度高的网站平台“头部账号”法纪意识淡薄,滥用网上影响力,传播错误导向内容,污染网络生态等突出问题,会同相关部门,指导各地网信办,要求...【详细内容】
2021-12-16    网信中国微信公众号  Tags:网信办   点击:(8)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条