机器学习算法(二): 基于XGBoost的分类预测
本学习笔记为阿里云天池龙珠计划机器学习训练营的学习内容,学习链接为:https://tianchi.aliyun.com/specials/promotion/aicampml
1. 学习知识点概要
1.1 XGBoost介绍
XGBoost的主要优点:
- 简单易用。相对其他机器学习库,用户可以轻松使用XGBoost并获得相当不错的效果。
- 高效可扩展。在处理大规模数据集时速度快效果好,对内存等硬件资源要求不高
- 鲁棒性强。相对于深度学习模型不需要精细调参便能取得接近的效果。
- XGBoost内部实现提升树模型,可以自动处理缺失值。
XGBoost的缺点:
- 相对于深度学习模型无法对时空位置建模,不能很好地捕获图像、语音、文本等高维数据。
- 在拥有海量训练数据,并能找到合适的深度学习模型时,深度学习的精度可以遥遥领先XGBoost。
1.2 学习目标
- 了解XGBoost相关参数与原理
- 将XGBoost用于天气数据集预测
1.3 简单XGBoost原理与参数分析
参数 | 说明 | 默认值 |
---|---|---|
eta |
2. 学习内容
代码流程:
- Step1: 库函数导入
- Step2: 数据读取/载入
- Step3: 数据信息简单查看
- Step4: 可视化描述
- Step5: 对离散变量进行编码
- Step6: 利用 XGBoost 进行训练与预测
- Step7: 利用 XGBoost 进行特征选择
- Step8: 通过调整参数获得更好的效果
3. 学习问题与解答
主要有以下几个问题:
- XGBoost的数学原理推导
- 代码复用(准备后面搞个gitee仓库)
4. 学习思考与总结
这里简单接触了XGBoost算法,XGBoost的GBDT算法的升级版,做了很多改进,因此详细的算法原理需要先学习GBDT;除了算法本身以外,这里对数据的可视化也进行了学习。