【技术实现步骤摘要】
基于区块链的可信联邦梯度提升树参与者贡献评估方法
[0001]本专利技术涉及联邦学习(Federated Learning)
,具体涉及一种基于区块链的可信联邦梯度提升树参与者贡献评估方法。
技术介绍
[0002]机器学习模型的训练需要大量的训练数据,传统的集中式机器学习方法需要收集各方的数据,这些数据可能来自医院、银行、政府、公司或个人,如果直接将原始数据暴露无疑会对隐私造成严重侵害。随着各个国家和地区出台相应的法律法规,直接收集和处理原始数据受到约束。联邦学习的提出在一定程度上缓解了以上问题,这是一种分布式机器学习范式,每个参与方在本地使用本地数据进行模型训练后,中心服务器对每个参与方的本地梯度提升决策树模型进行聚合得到全局梯度提升决策树模型。在这个过程中,各方数据保留在本地,通信内容只包含模型梯度信息,提供了一定的隐私保障。
[0003]梯度提升决策树(Gradient Boosting Decision Tree,GBDT)是一种集成学习方法,通过迭代训练决策树来进行集成,每轮训练一棵决策树(弱分类器)来组合成一个树集合模型(强分类器)来提高预测精度。与大量研究工作中使用的深度神经网络(Deep Neural Network,DNN)相比,梯度提升决策树有可解释性好的特点。目前对于联邦梯度提升决策树已经有很多研究,但仍面临隐私和公平方面的挑战。隐私方面的挑战主要在于,从梯度信息能反推出原始数据信息,直接将梯度进行通信仍会对隐私造成侵害。公平方面的挑战主要在于,缺乏量化各方对最终模型贡献的机制,可 ...
【技术保护点】
【技术特征摘要】
1.基于区块链的可信联邦梯度提升树参与者贡献评估方法,其特征是,包括步骤如下:步骤1、任务发起方新建一条许可链,并在区块链上发布模型请求事务;其中模型请求事务中的相关参数包括模型规范、数据集描述以及报酬金额;步骤2、各个符合要求的任务参与方从区块链中获取模型请求事务中的模型规范和数据集描述,生成本地数据分布摘要后签名发送给任务发起方;步骤3、任务发起方验证各任务参与方的本地数据分布摘要后提交任务初始化交易;步骤4、各任务参与方通过区块链获取其他任务参与方的本地数据分布摘要后,在本地进行签名验证,并使用本地数据查询其他任务参与方的本地数据分布摘要以构建任务参与方的分布权重矩阵;步骤5、各任务参与方从区块链获取当前全局梯度提升决策树模型作为其当前本地梯度提升决策树模型,并使用当前本地梯度提升决策树模型计算本地数据的每个特征的分裂增益,并将最大分裂增益的特征记为本地投票特征,再将本地投票特征及其特征梯度直方图一并加密并签名发送给其他任务参与方;步骤6、各任务参与方收到其他任务参与方的本地投票特征及其特征梯度直方图,在可信执行环境中进行签名验证和解密,并对所有通过验证的其他任务参与方的本地投票特征进行得票统计,选出得票最高的特征记为全局投票特征;步骤7、对于本地投票特征不是全局投票特征的任务参与方,将本地投票特征更新为全局投票特征,并将本地投票特征及其特征梯度直方图一并加密并签名发送给其他任务参与方,其他任务参与方在可信执行环境中进行签名验证和解密;步骤8、各任务参与方在可信执行环境中,先利用本地数据的分布权重矩阵构造拟合其他任务参与方的特征梯度直方图,再计算所构造拟合出的其他任务参与方的特征梯度直方图与对应其他任务参与方所发送来的特征梯度直方图的重叠度:若两者的重叠度大于设定的重叠度阈值,则认为该其他任务参与方的特征梯度直方图可靠;否则认为该其他任务参与方的特征梯度直方图不可靠;后整合可靠的特征梯度直方图生成全局直方图,并利用全局直方图计算出全局最佳分裂点后,将本轮的全局投票特征和最佳分裂点作为事务写入区块链并据此更新全局梯度提升决策树模型;步骤9、各任务参与方从区块链获取本轮的全局投票特征和最佳分裂点,在可信执行环境中利用Shapley值法计算其边际贡献;步骤10、各任务参与方通过共识机制对边际贡献达成一致后,将边际贡献记录区块链;步骤11、区块链智能合约判断当前全局梯度提升决策树模型是否达到设定的最大树量:如果未达到,则返回步骤5;否则,转至步骤12;步骤12、区块链将当前全局梯度提升决策树模型作为最终梯度提升决策树模型并记录在区块链上;步骤13、任务发起方根据区块链所记录的边际贡献向各任务参与方分发金钱奖励;步骤14、各任务参与方从区块链获取最终梯度提升决策树模型,并利用最终梯度提升决策树模型对本地新样本进行预测。2.根据权利要求1所述的基于区块链的可信联邦梯度提升树参与者贡献评估方法,其特征是,任务参与方包括任务发起方...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。