学习笔记:XGB算法与SGB算法开发实践

学习笔记:

一、背景-纵向数据分割场景和树模型
1. 纵向树模型是基于纵向分割数据集训练的决策树模型,相同样本在不同特征维度上进行训练。
2. 通常需要前置求交集,SS-XGB/SGB XGB有优势的场景包括提高AUC、合作完成建模以及更多数据->更多价值等。
3. 纵向联合建模需要考虑数据、算法和可解释性等因素。

二、使用-隐语纵向树模型
1. 隐语提供的纵向树模型算法实现了XGB的经典功能,采用MPC进行密态计算,无信息泄漏,可证安全。
2. 网络条件好时效率高,支持SS-XGB和SecretShared ExtremeGradientBoost两种算法。

三、原理和实现-从理论到工程
1. SS-XGB/SGB算法是如何炼成的?经典算法到MPC算法需要进行算法改造三部曲,确定保护的数据部分、准备安全原语和改造数据结构和算法。
2. 如何修改源码实现合适的功能?开发实战包括组件封装、算法修改和模型导出三部曲。
3. SS-XGB / SGB 在隐语实现有什么独特优势?隐语的优势包括提供设备抽象、重点算子优化破瓶颈、分层架构和开源共建。

四、实践
1. 用ss-XGB来完成刚才老师演示的SGB流程。
2. 当用ss-XGB跑完相同的流程后,它的test AUC是多少?
3. 如果Alice有15个特质,Bob有1个特质,如果用SGB和ss-XGB做联合建模,我们是否还会获得额外的 AUC的收益?

提示:
1. 查看ss xgb的文档和教程。
2. 可以使用Python Pandas包在本地拆分数据,然后将文件上传到Alice或Bob。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
XGBoost(eXtreme Gradient Boosting)是一种基于决策树的集成学习算法,它在Kaggle等数据科学竞赛中表现优异。XGBoost使用梯度提升算法(Gradient Boosting)来训练决策树模型,该算法通过不断迭代提高模型的预测准确率。其主要思想是将许多弱的学习器(决策树)组合成一个强的学习器。 SecureBoost是一种使用联邦学习的安全XGBoost算法,它可以在多个参与方之间进行模型训练,同时保证数据隐私和模型安全。SecureBoost算法的主要过程如下: 1. 初始化:参与方之间通过安全多方计算(Secure Multiparty Computation,SMC)协议进行通信,并对模型参数进行初始化。 2. 加密:参与方将本地的数据进行加密,然后将加密后的数据发送给其他参与方。 3. 训练:参与方使用加密数据进行模型训练,并将训练得到的模型参数发送给其他参与方。在模型训练过程中,使用了加密梯度提升算法(Encrypted Gradient Boosting,EGB)来进行模型训练。 4. 反向传播:参与方使用接收到的模型参数进行反向传播,计算每个参与方的梯度,并将梯度发送给其他参与方。 5. 模型更新:参与方使用接收到的梯度更新模型参数,并将更新后的模型参数发送给其他参与方。 6. 合并:参与方将更新后的模型参数进行合并,得到最终的模型参数。 7. 预测:参与方使用最终的模型参数进行预测,最终得到预测结果。 总体来说,SecureBoost算法通过使用加密技术和联邦学习来保证数据隐私和模型安全,可以在多个参与方之间进行模型训练,使得模型更加准确和鲁棒。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值