XGBoost 论文翻译+个人注释

最近研究机器学习理论,学习了一下陈天奇博士的论文,做了一点简单的翻译和批注,在这里记录一下。

本文将按照论文的顺序来介绍xgb,其中穿插我自己的理解和我对于论文原文的中文翻译,以及一些公式的截图。原文翻译将使用红色来标注,其余的皆为我自己理解的内容,涉及参数调整的我会加粗。

===================================================

 

论文题目是 

XGBoost: A Scalable Tree Boosting System

从题目中就可以看出来,这篇文章重点讲的是一个system,而不是algorithm,本文的重点大篇幅地介绍了xgb整个系统是如何搭建,如何实现的,在模型算法的公式改进上只做了一点微小的工作。

摘要

 

树的提升是一种非常有效且被广泛使用的机器学习方法。 在本文中,我们描述了一个名为XGBoost的有延展性的端到端的树提升系统,数据科学家们广泛使用该系统来实现许多机器学习挑战的最新成果。我们提出了一种新颖的稀疏数据感知算法用于稀疏数据,一种带权值的分位数略图(weighted quantile sketch) 来近似实现树的学习。更重要的是,我们提供有关缓存访问模式,数据压缩和分片的见解,以构建有延展性的提升树系统。通过结合这些见解,XGBoost可用比现系统少得多的资源来处理数十亿规模的数据。

关键词:大规模机器学习

摘要这段没什么好说的,后面都会详细介绍,这段内容不多,我就翻译了一下。

第一章 绪论

 

机器学习和数据驱动的方法在许多领域变得非常重要。智能垃圾邮件分类器通过从大量的垃圾邮件数据和用户反馈中学习来保护我们的邮箱;广告系统学习将正确的广告与正确的背景相匹配;欺诈检测系统保护银行免受恶意攻击;异常事件检测系统帮助实验物理学家发现新的物理现象。有两个重要因素可以推动这些成功的应用:使用能捕获复杂数据依赖性的有效的(统计)模型,以及能从大型数据集里学习出模型的可扩展的学习系统。

在实际应用的机器学习方法里,GradientTree Boosting (GBDT)是一个在很多应用里都很出彩的技术。提升树方法在很多有标准分类基准的情况下表现很出色。LambdaMART这个提升树的变种,用来排序的,也表现出了不错的结果,它除了被用于单独的预测器,还在实际生产中被用于广告点击率预测。它是很多集成方法里的实际选择,此外还用于Netflix这样的比赛。

本文描述的可扩展的提升树机器学习系统已经开源了,它的影响力已经被许多机器学习和数据挖掘的比赛所广泛认可。拿机器学习大赛Kaggle举例:2015年发布的29个获胜方法里有17个用了XGBoost。在这些方案里,有8个仅用了XGBoost,另外的大多数用它结合了神经网络。对比来看,第二流行的方法,深度神经网络,只被用了11次。这个系统的成功性也被KDDCup2015所见证了,前十的队伍都用了XGBoost。此外,据胜出的队伍说,很少有别的集成学习方法效果能超

1、可以使用的数据集包含: (1)收入分类 Adult - UCI Machine Learning Repository数据集有近5万个样本。每个样本是一个人的数据,包含了年龄,教育程度,工作类型等,和年收入是否大于5万。你们的任务是创建机器学习模型,从一个人各方面的数据来预测这个人的年收入是否大于5万。 这个数据集有5个文件,其中adult.data是训练数据,adult.test是测试数据,adult.names是对数据集的说明。 数据集有缺失数据,和个别重复和冲突数据,详见adult.names。 (2)sklearn.dataset中的数据集 (3)其他正规开源的数据集也可以。(但需要提供下载路径) 2、建模有以下步骤和要求: 1. 数据准备 用 pandas 加载数据 检查并处理缺失值、重复值、异常值 拆分训练集与测试集 可视化部分字段的分布(柱状图、热力图、箱线图等) 2. 模型构建与分析 (1)选定主模型 自选一个主模型(建议如:决策树、随机森林、KNN、SVM、逻辑回归、XGBoost等) 简要用数学公式或流程图说明该模型的基本原理和算法思路(可以查阅课本或网络资料) (2)模型调参(必做) 主模型至少测试 5 组不同参数组合,并说明: o改变了哪些参数?为什么? o原本期望提升哪项效果? o实际是否达到了预期?若没有,原因可能是什么? 可以使用 GridSearchCV、RandomizedSearchCV,也可以自定义循环测试 将调参结果用图表展示(折线图或柱状图) (3)对比建模(必做) 除主模型外,至少再实现 3 种对比模型 o示例:逻辑回归、KNN、决策树、朴素贝叶斯、支持向量机(SVM)等 说明是否对不同模型使用了不同的特征子集(可选) 使用交叉验证评估不同模型的准确率或误差 将不同模型的准确率用图表比较 3. 模型评估与可视化 计算模型在测试集上的性能(分类模型建议使用 accuracy / precision / recall / f1) 可视化内容包括: o混淆矩阵(热力图形式) o调参过程准确率变化图 o各模型性能柱状图对比 简要总结各模型优缺点、适用场景 这是一个python语言课程论文的考核要求,梳理一下内容告诉我大概要做什么,再写一份怎么做的大纲
最新发布
06-22
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值