利用GBDT进行对表格类数据的机器学习的案例解析

一:题目简介

在数据集中,每个样本都对应一个葡萄牙大学的学生。原始数据集中共有4424名学生,。对于每个学生,我们获得了人口统计数据、宏观经济数据以及课程前两个学期的表现。目标是预测学生在三年或四年学习后的状态:是否毕业、仍在就读,或退学。题目提供了训练集,测试集和提交格式。

下载或观看数据集入口:‌‍⁠​‍‬‬‍‍‌⁠‌​​‌​​​‌​‬⁠​​​​‍​‬​⁠​‌​​⁠‬​​利用GBDT进行对表格类数据的机器学习的实战项目所需数据集 - 飞书云文档 (feishu.cn)

二:利用GBDT来进行机器学习对问题求解

本文要采取的方法是表格类比赛经典建模方法

数据EDA、特征工程、GBDT模型家族、交叉验证,模型融合

我们跳过数据EDA,直接先进入特征工程。

GBDT(Gradient Boosting Decision Tree,梯度提升决策树)是一种流行的机器学习算法,它主要用于回归和分类问题。GBDT 是一种集成学习算法,它通过构建和组合多个决策树来形成一个强大的预测模型。
以下是 GBDT 的一些关键特性:
基本原理
1. 迭代增强:GBDT 通过迭代地训练决策树来最小化损失函数。每一棵树都是为了纠正前一棵树的错误而构建的。
2. 梯度提升:算法的名字来源于它使用梯度下降法的近似来训练模型。在每次迭代中,算法计算损失函数关于当前模型的梯度,然后用一棵新的决策树来拟合这个梯度。
构建过程
1. 初始化:通常,GBDT 以一个常数预测(例如,回归问题的均值或分类问题的众数)开始。
2. 负梯度:在每次迭代中,算法计算当前损失函数的负梯度,这些梯度代表了当前模型的误差。
3. 决策树拟合:算法训练一个新的决策树来拟合这些负梯度(也称为残差)。
4. 更新模型:新训练的决策树用来更新模型,通常是通过加权求和的方式(树的预测乘以一个学习率)。
核心优势
1. 准确性:GBDT 在许多问题上都表现出很高的预测准确性。
2. 灵活性:它可以处理各种类型的数据,包括连续值和类别值。
3. 鲁棒性:GBDT 对于异常值不敏感,并且通常不需要太多的数据预处理。
关键参数
1. 树的数量:构建的决策树的数量,更多的树可能会提高模型的准确性,但也可能导致过拟合。
2. 树的大小:单个决策树的大小(深度或叶子节点数),控制模型的复杂度。
3. 学习率:也称为收缩率,它控制每棵树对最终模型的影响程度。
应用场景
GBDT 在各种应用中都非常流行,包括但不限于:
- 广告点击率预测
- 信用评分
- 异常检测
- 排序问题
常用实现
GBDT 有几个流行的开源实现,包括:
- XGBoost
- LightGBM
- CatBoost
这些库提供了高效的算法实现,并且支持并行计算和分布式计算,使得 GBDT 能够在大数据集上快速训练。
总的来说,GBDT 是一个强大的机器学习算法,它通过结合多个简单的决策树来构建一个复杂的、高准确度的预测模型。由于它的准确性和灵活性,GBDT 在工业界和学术界都得到了广泛的应用。

在开始之前,环境配置需要先用Python导入我们所需的库,sklearn集成了大多数机器学习库。

import pickle
import json
import numpy as np
import pandas as pd
from sklearn.ensemble import RandomForestClassifier
from sklearn.tree import Ex
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值