一文详解机器学习中的梯度提升机人工智能

Boosting是流行的学习集成建模技术之一,用于从各种弱分类器构建强分类器。它首先根据可用的训练数据集构建主要模型,然后识别基本模型中存在的错误。识别错误后,建立第二个模型,并进一步在此过程中引入第三个模型。这样,引入更多模型的过程就会持续下去,直到我们得到一个完整的训练数据集,模型可以通过该数据集进行正确的预测。

Boosting算法的步骤:

增强算法有以下几个重要步骤:

考虑具有不同数据点的数据集并对其进行初始化。

现在,为每个数据点赋予相同的权重。

假设该权重作为模型的输入。

识别错误分类的数据点。

增加步骤4中数据点的权重。

如果获得适当的输出,则终止此过程,否则再次执行步骤2和3。

例子:

假设我们有三个不同的模型及其预测,并且它们以完全不同的方式工作。例如,线性回归模型显示数据中的线性关系,而决策树模型尝试捕获数据中的非线性关系,如下图所示。

增强机器学习中的算法

机器学习中主要有4种boosting算法。具体如下:

梯度提升机(GBM)

极限梯度提升机(XGBM)

轻型GBM

猫助推器

机器学习中的GBM是什么?

梯度提升机(GBM)是机器学习中最流行的前向学习集成方法之一。它是构建回归和分类任务预测模型的强大技术。

GBM帮助我们获得弱预测模型(例如决策树)集合形式的预测模型。每当决策树作为弱学习器执行时,生成的算法就称为梯度增强树。

它使我们能够结合来自各种学习器模型的预测,并构建具有正确预测的最终预测模型。

但这里可能会出现一个问题,如果我们应用相同的算法,那么多个决策树如何能够比单个决策树提供更好的预测?此外,每个决策树如何从相同的数据中捕获不同的信息?

GBM是如何运作的?

一般来说,大多数监督学习算法都基于单一预测模型,例如线性回归、惩罚回归模型、决策树等。但是机器学习中也有一些监督算法依赖于通过集成将各种模型组合在一起。换句话说,当多个基本模型贡献其预测时,所有预测的平均值将通过增强算法进行调整。

梯度增强机由以下3个要素组成:

损失函数

学习能力较弱

加法模型

让我们详细了解这三个要素。

1.损失函数:

尽管如此,机器学习中有很多损失函数,可以根据要解决的任务类型来使用。损失函数的使用是根据条件分布的鲁棒性等具体特征的需求来估计的。在我们的任务中使用损失函数时,我们必须指定损失函数和计算相应负梯度的函数。一旦我们得到了这两个函数,它们就可以很容易地实现到梯度提升机中。然而,已经为GBM算法提出了几种损失函数。

损失函数的分类:

根据响应变量y的类型,损失函数可以分为以下不同类型:

连续响应,y∈R:

高斯L2损失函数

拉普拉斯L1损失函数

Huber损失函数,指定δ

分位数损失函数,指定α

分类响应,y∈{0,1}:

二项式损失函数

Adaboost损失函数

其他响应变量系列:

生存模型的损失函数

损失函数计数数据

自定义损失函数

2.弱学习者:

弱学习器是基础学习器模型,可以从过去的错误中学习,并帮助构建强大的预测模型设计,以增强机器学习中的算法。一般来说,决策树在增强算法中充当弱学习器。

Boosting被定义为持续改进基础模型输出的框架。许多梯度增强应用程序允许您“插入”各种类别的弱学习器供您使用。因此,决策树最常用于弱(基础)学习器。

如何训练弱学习者:

下面是训练弱学习器以提高其性能的序列,其中每棵树都与前一棵树的残差位于序列中。此外,我们引入每棵新树,以便它可以从前一棵树的错误中学习。具体如下:

考虑一个数据集并在其中拟合决策树。

F1(x)=y

用前一棵树的最大误差来拟合下一棵决策树。

h1(x)=yF1(x)

通过在步骤1和2中添加这棵新树,将其添加到算法中。

F2(x)=F1(x)+h1(x)

再次将下一个决策树与前一个决策树的残差进行拟合。

h2(x)=yF2(x)

重复我们在步骤3中所做的相同操作。

F3(x)=F2(x)+h2(x)

继续这个过程,直到某种机制(即交叉验证)告诉我们停止。这里的最终模型是b个个体树的阶段性加性模型:

f(x)=BΣb=1fb(x)

因此,树是贪婪地构建的,根据基尼等纯度分数选择最佳分割点或最小化损失。

3.加法模型:

加性模型被定义为向模型添加树。尽管我们不应该一次添加多棵树,但必须只添加一棵树,这样模型中的现有树就不会改变。此外,我们还可以通过添加树来选择梯度下降法来减少损失。

该方法也称为函数梯度下降或函数梯度下降。

极限梯度提升机(XGBM)

XGBM使用各种正则化技术来减少模型的欠拟合或过拟合,这也比梯度增强机更能提高模型性能。

XGBM遵循每个节点的并行处理,而GBM则不然,这使得它比梯度增强机更快。

XGBM帮助我们摆脱缺失值的插补,因为默认情况下模型会处理它。它自行了解这些值是否应该位于右侧节点或左侧节点中。

光梯度增强机(LightGBM)

LightGBM是梯度增强机的升级版,因其效率高且速度快。与GBM和XGBM不同,它可以处理大量数据而没有任何复杂性。另一方面,它不适合那些数量较少的数据点。

LightGBM更喜欢树节点的叶向生长,而不是水平生长。此外,在lightGBM中,主节点被分裂为两个辅助节点,然后选择一个辅助节点进行分裂。辅助节点的这种分裂取决于两个节点之间哪个具有更高的损耗。

因此,由于叶向分割,在给定大量数据的情况下,光梯度提升机(LGBM)算法始终优于其他算法。

CATBOOST

catboost算法主要用于处理数据集中的分类特征。尽管GBM、XGBM和LightGBM算法适用于数值数据集,但Catboost旨在将分类变量处理为数值数据。因此,catboost算法包含一个重要的预处理步骤,用于将分类特征转换为任何其他算法中不存在的数值变量。

Boosting算法的优点:

增强算法遵循集成学习,这使得模型能够给出更准确的预测,这是不可超越的。

Boosting算法比其他算法灵活得多,因为它可以优化不同的损失函数并提供多种超参数调整选项。

它不需要数据预处理,因为它适用于数值变量和分类变量。

它不需要对数据集中的缺失值进行插补,它会自动处理缺失的数据。

Boosting算法的缺点:

以下是boosting算法的一些缺点:

提升算法可能会导致过度拟合以及过分强调异常值。

这是一种耗时且内存耗尽的算法。

尽管可以使用各种工具轻松解决这个问题,但本质上解释性较差。

结论:

通过这种方式,我们学习了机器学习中预测建模的增强算法。此外,我们还讨论了ML中使用的各种重要的boosting算法,例如GBM、XGBM、lightGBM和Catboost。此外,我们还了解了各种组件(损失函数、弱学习器和加性模型)以及GBM如何与它们配合使用。Boosting算法如何有利于在现实场景中的部署等。

THE END
1.24期丨信息学竞赛入门&拓展推荐书单及10大工具网站!建议收藏《信息学奥塞一本通》初赛篇和C++版,这套书比较适合零基础入门使用的,且有专门收录这套书所有习题进行在线评测的一本通题库网站(下文有介绍),初赛篇辅助学员学习信息学竞赛初赛知识。 05 《算法竞赛入门经典(第2版)》 作者:刘汝佳(NOI竞赛https://mp.weixin.qq.com/s?__biz=MzAwNDAzODg3NQ==&mid=2652999200&idx=4&sn=d8d09aa53fc360313c9883df2fe36139&chksm=818b64e26d863d533de572dbe5c816e34a38baa9f219e2a54bf1b1085a1421ab440db82a4f13&scene=27
2.推荐几个算法可视化网站,从此轻松学算法!@程序员大彬: 推荐几个算法可视化网站,从此轻松学算法! 大家好,我是大彬~ 很多初学者在学习数据结构与算法的时候,都会觉得很难,很大一部分是因为数据结构与算法本身比较抽象,不好理解。对于这一点,可以通过一些可视化动画来帮助理解。 下面大彬推荐几个学习数据结构和算法的可视化工具。 Data Structure Vihttps://m.nowcoder.com/feed/main/detail/6ecdab56f00b44bfacf3cb854929059e
3.吴师兄学算法五分钟学算法吴师兄学算法(www.cxyxiaowu.com)提供许多数据结构与算法学习的基础知识, 涵盖 LeetCode 题解、剑指 Offer 题解、数据结构等内容。https://www.cxyxiaowu.com/
4.有哪些高质量的自学网站?网站上还有专业团队为你服务,帮助你接单赚钱。为手中的画作增添变现途径,让我们的爱好,可以更长期地坚持下去。 10、优优课程网(http://uiiiuiii.com/) 学习设计必不可少的网站,设计界的同学都懂。 流传的一句“看行业设计文章到优设,学热门软件教程在优优。”就是最好的证明。 https://www.douban.com/note/767851363/
5.推荐几个正经网站,让你的数据结构和算法学习事半功倍!相信对于大部分程序员来说,数据结构和算法学起来是比较难的,但是它在工作中又是非常的重要,可以说是开发中的一块基石。 所以为了更好的学习和理解数据结构和算法,当时我是趁着双十一搞活动买了几本算法书,打算一鼓作气把它吃透,可想而知有点吃不消。 https://blog.csdn.net/weixin_48655626/article/details/112442781
6.全网最全程序员学习网站汇总,还不赶快收藏摘要:程序员是一个需要不断学习的职业。幸运的是,在这个互联网时代,知识就在那里,等着我们去获取。作为一个“收藏从未中止,学习从未开始”的博主,秉承着好东西不能独享的态度,把收藏的学习网站整理分享出来,希望大家不要学我,肯定要好好学习,天天进步,升职加薪?。好了,下面开始上货,因为博主是个Java程序员, https://www.songma.com/news/txtlist_i66992v.html
7.十大学习网站排名网上学习平台哪个好在线网络学习网站推荐→09 学银在线 0 10 智慧树网 0 学习强国 慕课网 Coursera 可汗学院 我要自学网 国图公开课 终身教育平台 大学资源网 Udacity 十大学习网站榜单中,榜单主要依据AI大数据算法关于学习平台的“用户规模、服务质量、运营状况、用户口碑、知名度与影响力、主题契合程度、网络十大排行情况”等因素综合判断得分系统自动生成https://www.maigoo.com/top/420080.html
8.6个超酷的练习算法,学习编程的网站如果您已经编程了一段时间,想学习一种新的语言,学习一种新的思维方式,那就去运动吧! 总结 在本文中,我分享了6个超酷的网站来练习算法和学习编程! 我个人认为您不需要学习太多,如果想在面试之前进行练习,请访问Skilled / Hackerrank / Leetcode。 或者,如果您需要学习新的语言,请选择运动。https://news.51cto.com/art/202006/618315.htm
9.通常从哪里获取最新的编程技术资讯和教程?Stack Overflow:全球最大的程序员专业问答网站,涵盖编程语言、软件开发工具、算法等多方面的问题和答案,https://www.zhihu.com/question/5392002679/answer/56183345264
10.九章算法九章算法致力于让顶尖的工程师在线传授最优质的计算机课程,帮助更多程序员找到好工作http://jiuzhang.com/
11.Pytorch深度学习实战教程(三):UNet模型训练好了,任务介绍完毕,开始准备训练模型。 三、UNet训练 想要训练一个深度学习模型,可以简单分为三个步骤: 数据加载:数据怎么加载,标签怎么定义,用什么数据增强方法,都是这一步进行。 模型选择:模型我们已经准备好了,就是该系列上篇文章讲到的 UNet 网络。 算法选择:算法选择也就是我们选什么 loss ,用什么优化算法。https://cuijiahua.com/blog/2020/03/dl-16.html
12.有哪些学习算法的网站推荐?推荐的讲解算法的网站、好博客:讲解、代码格式、图表都很规范,覆盖广Matrix67 的一些算法讲解类经典文章,平易近人BYVoid 的博客,计算机科学标签范浩强的博客(曾经)https://www.jianshu.com/p/06ff13b234e3
13.如何选择机器学习算法统计学和机器学习中的线性度表示数据集中的某个变量与常数之间存在线性关系。 例如,线性分类算法假设直线(或其更高维的模拟)可以将类分离。 许多机器学习算法都使用线性。 在 Azure 机器学习设计器中,这些算法包括: 多类逻辑回归 双类逻辑回归 支持向量机 https://docs.microsoft.com/zh-cn/azure/machine-learning/studio/algorithm-choice
14.2020年深度学习算法工程师面经(微软阿里商汤滴滴华为简单分为深度学习、机器学习基础、图像处理基础、数学基础、算法基础、程序设计语言、模型部署、HR面试以及与我本人简历相关的目标检测、属性识别、Kaggle及天池的比赛、创新想法等几个部分介绍。可能开始会有重叠或者分类不恰当,后面会逐渐更新完善。其中第一篇先介绍到HR面试,第二篇介绍个人相关的项目和比赛部分。https://maimai.cn/article/detail?fid=1514590373&efid=Oph3033j5Qs70xHZdz0sGA
15.相由心生?面部算法分析能否窥测你的内心?思想市场澎湃新闻而批评者认为,被建构起来的面部算法分析实际上不过是一种脆弱的、文化构建的假设,这是最令人担忧的。德布林在一封电子邮件中说:“社会心理学也有严肃的问题,它往往受到英语母语使用者、异性恋者、白人意识的主导,这无疑推动了这类研究。我无法想象,如果整个渠道的某些节点(同事、伦理委员会、编辑、评论家等)有更多不https://www.thepaper.cn/newsDetail_forward_1864416
16.人工智能机器学习常用算法总结及各个常用算法精确率对比相关技巧学过概率的同学一定都知道贝叶斯定理,这个在250多年前发明的算法,在信息领域内有着无与伦比的地位。贝叶斯分类是一系列分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。朴素贝叶斯算法(Naive Bayesian) 是其中应用最为广泛的分类算法之一。朴素贝叶斯分类器基于一个简单的假定:给定目标值时属性之间相https://www.jb51.net/article/182909.htm
17.AlphaZero加强版AlphaTensor问世,发现史上最快矩阵乘法算法医学图像的模式可以通过ML技术识别,允许放射科医生根据放射信息做出明智的决定,如基本放射照相术、计算机断层扫描(CT)、MRI、正电子发射断层扫描(PET)图像和放射学报告。例如研究人员提出了一种序列增强学习技术,用于在乳房X光片中使用SVM检测微钙化(MC)簇时提高性能等。ML和模式识别算法对大脑成像有重大影响,从长远来看https://www.medsci.cn/article/show_article.do?id=97c6e419443f
18.英语词汇软件哪个好?英语词汇大全词汇app下载英语词汇大全,集合了扇贝单词、网易有道词典、星火简词汇、乐词、英语四级词汇、海词词典、词管家等众多单词学习软件,拥有海量的词汇书、权威的例句、有趣的智慧词根,提供了多种模式的词汇记忆方法,其中包括情节、游戏、串词、歌曲等方式,智能启发用户记词汇流程,让记词汇不再变得枯燥,还可以定制适合你的学习计划,更好http://www.downcc.com/k/yingyucihui/
19.图分析与学习算法自动驾驶技术……这两位人大学子,获奖她曾获研究生国家奖学金、中国石油奖学金、一等学业奖学金等,入选中国人民大学“拔尖创新人才培育资助计划”。其研究关注大规模图分析与学习算法的可扩展性问题。她在计算机理论研究,特别是图分析和学习算法方向,取得了突破性的成果。其成果有望在搜索等业务领域落地,发挥重大作用。https://t.m.youth.cn/transfer/index/url/tech.youth.cn/wzlb/202201/t20220129_13411740.htm
20.常见用户行为分析模型解析MySecretRainbow预测用户分群——通过机器学习算法预测事件概率 互联网金融产品常常会用到预测用户分群的功能。互联网金融客户按照风险投资偏好这一属性分为保守、稳健和激进,按照投资行为可分为已投资和未投资。 运营人员可以根据这一属性和行为将满足某种条件的用户群体提取出来,譬如激进型但未投资的这群用户,然后分析这一群体的行为特http://www.mysecretrainbow.com/blog/12611.html
21.大数据基础术语精粹来袭由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。Entropy = 系统的凌乱程度,使用算法ID3, C4.5和C5.0生成树算法使用熵。这一度量是基于信息学理论中熵的概念。http://www.mudan.gov.cn/2c908084831c4eb30183205259ac001f/2c908084831c4eb3018320df837d0020/1669185201282129920.html
22.每日热点1102Nature子刊:深度学习算法可以在显微镜图像中识别出各种细菌 BMJ:人工甜味剂安全性再添新忧!超10万人研究发现,饮食中总甜味剂摄入量高,与心血管疾病和脑血管疾病风险增加9%和18%相关 舆情信息 新冠病毒疫苗接种情况 世卫组织:黎巴嫩霍乱疫情迅速蔓延 “个人碳账户”还应更多些 https://sccdc.cn/Article/View?id=30661
23.和数据滥用说再见,“少样本学习”能否拯救推荐系统?如果用户很懒,或者不愿意让系统知道自己的个人信息,推荐系统还可以使用热度模型,基于统计分析推荐一些大部分人都会感兴趣的热点信息。虽然很容易让平台调性显得有点low,但从概率学角度看,说不定就正好撞到用户心口上了呢。 比如一直强调算法推荐的今日头条,在冷启动状态就采用了这种做法,向新用户推荐的大多是“新娘给https://www.tmtpost.com/3559257.html