【技术实现步骤摘要】
一种基于区块链和可信执行环境的联邦学习方法及系统
[0001]本专利技术涉及一种基于区块链和可信执行环境的联邦学习方法及系统,属于人工智能机器学习
技术介绍
[0002]机器学习作为一种极具前景的技术,已经成为计算机领域研究的热点,其理论和方法在工程应用和科学领域得到了广泛的应用。
[0003]联邦学习(Federated Learning)是一种新兴的人工智能技术,原本用于解决安卓手机终端用户在本地更新模型的问题,其设计目标是在保障大数据交换时的信息安全、保护终端数据和个人数据隐私、保证合法合规的前提下,在多参与方或多计算结点之间开展高效率的机器学习。联邦学习能够有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下进行数据使用和机器学习建模,可以避免非授权的数据扩散和解决数据孤岛问题,被广泛应用在金融、物流、供应链等领域。
[0004]作为一种具有隐私保护特性的机器学习框架,联邦学习为分布式合作机器学习提供了新的方法。联邦学习将训练任务进行拆分并分配给训练数据所有者进行模型更新,最后聚合所有的模型更新来完成训练任务并获得准确的联合模型。联邦学习的优势在于:1.数据隔离,数据不会泄露到外部,满足用户隐私保护和数据安全的需求。
[0005]2.能够保证模型质量无损,不会出现负迁移,保证联邦模型比割裂的独立模型效果好。
[0006]3.参与者地位对等,能够实现公平合作。
[0007]4.能够保证参与各方在保持独立性的情况下,进行信息与模型参数的加密交换,并同时获 ...
【技术保护点】
【技术特征摘要】
1.一种基于区块链和可信执行环境的联邦学习方法,其特征在于,包括以下步骤:步骤1:征集任务;在任务开始前,任务发布节点首先拟定任务征集合约,并设置对合格参与者的具体要求;之后,任务发布节点发布合约征集参与者;步骤2:参与节点申请加入;步骤3:任务发布节点选择参与者;步骤4:训练本地模型,生成模型更新,方法如下;参与节点下载获取最新的全局模型,在当前模型上采用深度神经网络模型和训练数据data,在本地执行局部训练;通过迭代运算和模型更新,最终完成模型训练,生成模型更新,t表示学习的轮数;步骤5:参与节点调用可信执行环境TEE内的程序,生成证明,方法如下:参与节点在本地TEE环境中运行算法,算法随机选择训练轮次,验证这些轮次的模型更新训练执行正确性;其中,表示 TEE的私钥秘密保存;参与者在每轮训练结束时,对所有模型参数进行哈希运算得到消息,并在所有训练轮结束时向TEE提交消息;当TEE随机请求检查一轮训练结果时,首先输入模型参数、哈希值和训练数据;然后TEE检查这些参数是否与承诺一致,并使用相应数据和输入参数执行训练,将其输出模型参数的哈希值与传入的哈希值进行比较;如果,则验证通过,TEE给出正确性证明;如果所有随机选择的训练轮次均验证成功,则认为参与者诚实地执行了所有训练轮次,否则判定训练参与者未诚实进行训练,生成模型不可信,不能用于模型聚合;最后,节点进行最后一轮模型参数验证,检查承诺消息,计算模型更新,即,最后一个输出模型和全局模型之间所有参数变化的向量;步骤6:提交训练结果;任务发布节点通过部署模型聚合合约,收集参与者在本地训练完成更新的模型参数;参与者将训练得到的模型和TEE环境给出的证明一起发送至合约,执行合约内容将模型和正确性证明σ存储在合约中;步骤7:聚合模型验证;当聚合合约完成模型参数和可信证明模型更新时,合约执行函数,其中,表示TEE对承诺进行的签名,以确认参与者是否诚实地进行了预期的训练;如果函数返回1,则聚合合约将汇总这些更新聚合成为新的全局模型,否则表示TEE验证承诺和参与者发送的聚合模型不符,验证失败,认为参与者存在不诚实行为,模型更新将不再作为正确结果被聚合;
若验证通过,则认为所有参与节点都诚实地进行了模型训练并得到了正确的模型参数;之后,聚合合约对所有参与者提交的局部模型进行聚合,收敛生成最终的训练模型;步骤9:当完成所有的模型聚合后,合约执行最后一步,按照约定给众包训练的所有节点发放奖励。2.如权利要求1所述的一种基于区块链和可信执行环境的联邦学习方法,其特征在于,步骤2中,首先,参与节点启动本地可信执行环境并生成证明报告,以证明正确的执行环境设置;之后,参与节点将验证信息提交至合约触发合约执行,通过合约执行来验证提交信息的正确性;在合规定执行时间内,设列表中参与节点数量为m,满足条件的参与者节点将通过验证加入列表。3.如权利要求1所述的一种基于区块链和可信执行环境的联邦学习方法,其特征在于,步骤3中,当有训练任务产生,首先确定联邦学习任务需要众包学习的参与节点数目n;之后,任务发布节点调用任务征集合约,采用随机算法从参与节点列表的m个节点中随机选择能够参加学习的n个节点,;当参与节点确定后,参与者将接受训练任务,使用持有的相关数据集开始在本地进行训练与更新。4.如权利要求1所述的一种基于区块链和可信执行环境的联邦学习方法,其特征在于,步骤5在生成证明过程中,TEE生成随机函数集以生成检查点,以代表要检查的训练轮次,为本地训练数据,为训练模型,,表示模型训练输入函数,表示前一轮训练的结果,哈希函数;当获得轮次的、和 后,TEE环境用训练数据对模型进行训练,得到模型更新;之后,判断 是否成立,表示在TEE中进行学习时的模型输入;若成立,则验证成功,否则验证失败;最后,TEE验证最后的模型更新,其中表示最后一轮的模型更新、表示开始学习时的输入模型,并对验证信息进行签名。5.如权利要求1所述的一种基于区块链和可信执行环境的联邦学习方法,其特征在于,步骤6中,设合约设置阈值为N,从N=1开始一直循环收取参数模型,直到收到第N=n个参与者后合约执行完毕,收到所有n个参与众包学习的结果。6.如权利要求1所述的一种基于区块链和可信执行环境的联邦学习方法,其特征在于,步骤8中,为获得收敛的全局模型,要进行反复迭代训练,最终的全局模型表示为 ,其中,表示参与人第t+1轮模型更新,表示参与人第t+1轮模型更新;对于所有收到的更新,合约通过执行加权平均,得...
【专利技术属性】
技术研发人员:徐蕾,陆鑫,肖尧,张子剑,祝烈煌,
申请(专利权)人:北京理工大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。