构建更优学习器:梯度提升与极端梯度提升算法解析
1. 梯度提升算法概述
梯度提升(Gradient Boosting)是一种基于提升算法的进化方法,它将提升过程视为一个优化问题,利用梯度下降技术来解决。在神经网络中,我们曾使用梯度下降来优化权重,通过分析权重变化对成本函数(即预测误差)的影响,找到使成本最小化的权重集合。在梯度提升中,集成模型中的弱学习器被视为待优化的参数,使用这种技术的模型被称为梯度提升机(Gradient Boosting Machines,GBMs)或广义提升模型。
GBMs具有诸多优点,同时也存在一些不足,具体如下表所示:
| 优点 | 缺点 |
| — | — |
| 通用分类器,在分类和数值预测任务中表现出色 | 可能需要调整参数以匹配随机森林算法的性能,要超越其性能则需要更广泛的调优 |
| 性能可能优于随机森林 | 有多个超参数需要调整,寻找最佳组合需要多次迭代和更多计算资源 |
| 在大型数据集上表现良好 | |
2. 使用GBMs进行贷款违约预测
我们可以使用 gbm 包中的 gbm() 函数创建GBMs模型,用于分类和数值预测。以下是在信用数据集上训练简单GBM模型以预测贷款违约的步骤:
1. 数据准备 :
credit <- read.csv("credit.csv", stringsAsFactors = TRUE)
credit$default <- ifelse(credi
超级会员免费看
订阅专栏 解锁全文
2350

被折叠的 条评论
为什么被折叠?



