当前位置: 首页 > 科技观察

gbdt不能建模多个对象?尝试Mtgbm!

时间:2023-03-13 13:19:27 科技观察

在上一篇GBDT为什么能够超越深度学习的文章中,我们提到了GBDT在特定的表格数据场景中有着得天独厚的优势。在以往的研究中,多目标一直是神经网络的主场。我们能否将GBDT和多目标结合起来大放异彩?答案是,是的!MTGBM为您提供GBDT多目标建模的最后一英里。多目标学习背景多目标学习近年来在??推荐系统领域大放异彩。ESSM、MMoE等著名的神经网络模型是多目标的典型代表方法。他们的基本思想是考虑不同任务之间的差异。并联系以提高每项任务的学习质量和效果。除了NN,GBDT(Gradientboosteddecisiontrees)模型在推荐系统、广告系统和金融风控等领域应用广泛,但是一些业内知名的GBDT实现(微软的LightGBM、XGBoost和CatBoost)做没有多目标学习。功能。在现实场景中引入多任务学习往往能带来稳定的性能提升和更好的鲁棒性。举几个简单的例子:在预测一个商品的点击率时,不仅要用模型学习历史点击率,还要学习点赞、收藏、收藏、分享等数据,从而更好的学习用户的爱好信息,完成预测任务。在进行欺诈分类预测时,如果不仅预测是否欺诈,还预测多个二分类任务对欺诈方法进行细分,不仅增加了模型的表达能力,而且在是否欺诈方面也更加准确,提高了模型对目标的准确度。理解。MTGBM介绍点击阅读原文直接到GitHub。论文地址:https://arxiv.org/pdf/2201.06239.pdf开源实现:https://github.com/antmachineintelligence/mtgbmcode这里想说说作者,经常玩游戏的ID可能你知道Bird,他是MTGBM的作品,在蚂蚁金服的风控业务实践和竞争场景中,落地MTGBM取得了显着的效益。本文创造性地提出了多任务学习GBDT算法,并高效地实现了该算法。目前通过该算法可以实现的功能有:多标签性能提升、历史模型知识蒸馏、多任务迁移学习等,经过大量公开数据集测试,主要目标均有较大提升与XGB、LightGBM和Catboost相比。该算法基于LightGBM实现,您可以像之前使用LightGBM一样使用它,几乎没有学习成本。原理和细节目前业界有很多单目标学习,比如LightGBM、XGBoost。缺点是模型容易过拟合,鲁棒性不足;而目前可用的多目标GBDT只适用于互斥多分类,并且不能应用于多个独立的任务。而且,多个分类是独立学习的,没有提取共同部分,导致模型提升有限。此外,神经网络深度学习用于完成多目标学习,但由于特征数量众多,取值范围非常大,神经网络在这些场景中表现不佳。一般来说,多目标学习需要共享中间层的参数,从而实现多目标学习的过程。在树模型中,由于没有中间参数共享,我们决定使用共享树结构进行多目标学习。新的树结构称为同构异构树,它为不同的目标提供相同的分裂结构和不同的输出值。传统的单目标GBDT计算是计算每棵树的过程。所有之前的树预测结果和当前目标的残差和梯度通过每个样本的梯度。拆分每个树节点时,使用合适的特征。该位置将样本分成两部分,使损失增益L(gradient)最小化。对于每个叶节点,它会根据落在它们上的数据的梯度平均值进行更新。达到指定深度后或样品不再可拆分时结束拆分。得到一棵树。多目标MGBM算法训练过程通过每个样本的多个目标梯度计算融合前所有树预测结果和多个目标的残差和梯度,使得每个样本都有一个融合梯度,在每个树节点处分裂次,使用合适的特征和一定的位置将样本分成两部分,使损失增益L(融合梯度)最小。对于每个叶节点,都会产生等于学习目标数量的输出,并使用落在相应目标上的数据梯度的平均值进行更新。达到指定深度后或样品不再可拆分时结束拆分。得到一棵树。最后,在预测不同的目标时,只需要使用同一棵树的不同目标值即可。实验结果MTGBM在ChinaForeignCurrencyVolume和IEEE-CISFraudDetectiononKaggle这两个实际表数据场景的数据集上进行了对比实验,实验结果更加详细,多任务组合,多折叠实验可以看出,MTGBM在实际表格数据场景的数据集上,取得了比NN和多个GBDT、LGB/XGB/CTB更好更稳定的提升。