书 书 书
第44卷 第12期
2021年12月 计 算 机 学 报
CHINESEJOURNALOFCOMPUTERS Vol.44NDec.o2.01221
收稿日期:20200914;在线发布日期:20210528.本课题得到国家重点研发计划(2017YFB1400700)、国家自然科学基金项目(62072487)、 北京市自然科学基金项目(M21036)、北京联合大学教育科学研究课题(JK202114),北京联合大学科研专项(ZK30202101)资助.朱建明,
博士,教授,主要研究领域为区块链技术与信息安全.Email:zjm@cufe.edu.cn.张沁楠(通信作者),博士研究生,主要研究方向为区块 链与智能边缘计算.Email:zhangqnp@163.com.高 胜(通信作者),博士,副教授,主要研究方向为区块链技术与隐私计算.Email: sgao@cufe.edu.cn.丁庆洋,博士,主要研究方向为区块链与大数据治理.袁丽萍,硕士研究生,主要研究方向为区块链技术与隐私保护.
基于区块链的隐私保护可信联邦学习模型
朱建明
1)张沁楠
1) 1)高 胜
1)丁庆洋
2)袁丽萍
1)(中央财经大学信息学院 北京 100081)
2)(北京联合大学管理学院 北京 100020)
摘 要 基于联邦学习的智能边缘计算在物联网领域有广泛的应用前景.联邦学习是一种将数据存储在参与节点 本地的分布式机器学习框架,可以有效保护智能边缘节点的数据隐私.现有的联邦学习通常将模型训练的中间参 数上传至参数服务器实现模型聚合,此过程存在两方面问题:一是中间参数的隐私泄露,现有的隐私保护方案通常 采用差分隐私给中间参数增加噪声,但过度加噪会降低聚合模型质量;另一方面,节点的自利性与完全自治化的训 练过程可能导致恶意节点上传虚假参数或低质量模型,影响聚合过程与模型质量.基于此,本文将联邦学习中心化 的参数服务器构建为去中心化的参数聚合链,利用区块链记录模型训练过程的中间参数作为证据,并激励协作节 点进行模型参数验证,惩罚上传虚假参数或低质量模型的参与节点,以约束其自利性.此外,将模型质量作为评估 依据,实现中间参数隐私噪声的动态调整以及自适应的模型聚合.原型搭建和仿真实验验证了模型的实用性,证实 本模型不仅能增强联邦学习参与节点间的互信,而且能防止中间参数隐私泄露,从而实现隐私保护增强的可信联 邦学习模型.
关键词 区块链;联邦学习;智能边缘计算;差分隐私;共识算法 中图法分类号TP18 犇犗犐号10.11897/SP.J.1016.2021.02464
犘 狉 犻 狏 犪 犮 狔 犘 狉 犲 狊 犲 狉 狏 犻 狀 犵 犪 狀 犱 犜 狉 狌 狊 狋 狑 狅 狉 狋 犺 狔 犉 犲 犱 犲 狉 犪 狋 犲 犱 犔 犲 犪 狉 狀 犻 狀 犵 犕 狅 犱 犲 犾 犅 犪 狊 犲 犱 狅 狀 犅 犾 狅 犮 犽 犮 犺 犪 犻 狀
ZHUJianMing1) ZHANGQinNan1) GAOSheng1) DINGQingYang2) YUANLiPing1)
1)(犛犮犺狅狅犾狅犳犐狀犳狅狉犿犪狋犻狅狀,犆犲狀狋狉犪犾犝狀犻狏犲狉狊犻狋狔狅犳犉犻狀犪狀犮犲犪狀犱犈犮狅狀狅犿犻犮狊,犅犲犻犼犻狀犵 100081)
2)(犛犮犺狅狅犾狅犳犕犪狀犪犵犲犿犲狀狋,犅犲犻犼犻狀犵犝狀犻狅狀犝狀犻狏犲狉狊犻狋狔,犅犲犻犼犻狀犵 100020)
犃犫狊狋狉犪犮狋 Intelligentedgecomputingbasedonfederatedlearninghasawideapplicationprospect inthefieldofInternetofThings(IoT).However,itisstillfacedwiththedilemmaoflacking enoughdatasourcesinthecurrentpracticeofartificialintelligence.Inthiscontext,distributed machinelearningaggregatesedgedevices’rawdataintoaparameterserverformodeltraining, butiteasilyleadstodataprivacyleakageandcausesexcessivestorageoverhead.Inparticular, federatedlearning(FL)isadistributedmachinelearningframeworkthatstoresdatalocally, whichcaneffectivelyprotectthedataprivacyofedgeintelligentnodes.Accordingtoclient settings,FLcanbeclassifiedintotwotypes:crossdeviceFLandcrosssiloFL.Incrossdevice FL,acentralentityactsasthecentralparameterserver,whichisalsotheowneroftheglobal model.Meanwhile,theparticipatingnodesastheclientstoperformlocaltraining.Incrosssilo FL,allparticipatingnodesactastheclientstoperformlocaltraining.Inaddition,theyarealso theownersoftheglobalmodelandcanmakeuseofthetrainedglobalmodel.Inthispaper,we focusoncrossdeviceFL,inwhichintelligenceedgedevicescanprovidemodeltrainingservices
《 计
算 机
学 报
》
bysensingtherawdatafromIoTdevicessuchasintelligencevehicles,smartphonesetc.Mostof theexistingcrossdeviceFLimplementsmodelaggregatedbyuploadingtheintermediateparameters ofmodeltrainingtotheparameterserver.Therearetwoproblemsinthisprocess.Ontheone hand,thereisprivacyleakageofintermediateparameters.Theexistingprivacyprotectionschemes usuallyusedifferentialprivacytoaddthenoiseonintermediateparameters,butexcessivenoise willreducethequalityoftheglobalmodel.Ontheotherhand,thetrainingprocessofnodeself interestandfullautonomymayleadtomaliciousnodesuploadingfalseparametersorlowquality models,thusaffecttheaggregationprocessesandmodelquality.Inthispaper,thecentralized parameterserverinfederatedlearningisconstructedasadecentralizedparameteraggregation chain,andtheintermediateparametersofthemodeltrainingprocessrecordedontheblockchain asevidence.Moreover,thecooperativenodesareencouragedtoverifythemodelparametersand punishtheparticipatingnodeswhouploadfalseparametersorlowqualitymodelssoastorestrict theirselfinterest.Inviewofabovechallenges,wetakethemodelqualityasthemetrictodynamically adjustprivacynoiseofintermediateparametersandproposeafederatedadaptive(FedAdp)model aggregationalgorithm.Theprototypedevelopmentandexperimentalsimulationsshowthatthe proposedFedAdpmodelaggregationalgorithmcanachievehigheraccuracyofaggregationmodel whenoccurpoisoningattack.BydynamicallyadjustingtheLaplacerandomnoise,it’srealized thetradeoffbetweenprivacyprotectionandtheaccuracyerroroftheaggregationmodel.The experimentofblockchainperformanceconfirmedthatourschemehasgoodpracticability.Itis provedthatthemodelcannotonlyenhancethemutualtrustbetweentheparticipatingnodesof federatedlearning,butalsopreventtheprivacydisclosureofintermediateparameters,soasto realizethefederatedlearningmodelwithenhancedtrustandprivacyprotection.
犓犲狔狑狅狉犱狊 blockchain;federatedlearning;intelligentedgecomputing;differentialprivacy; consensusalgorithm
1 引 言
联邦学习(FederatedLearning)[1]是一种协作 式机器学习框架,参与协作的节点利用本地数据训 练模型,通过参数聚合实现多来源数据的预测效果. 当前人工智能在实践过程中仍然面临数据来源不足 的困境.在医疗领域中,标注数据需动用1万人长达 10年的时间才能收集到足够多有效的数据[2].联邦 学习中数据存储在节点本地实现分布式机器学习, 实现了隐私保护的数据协作.随着移动通讯技术和 智能边缘设备的兴起,联邦学习在智慧城市[3]、电子 医疗[4]、无线通讯[5]、移动边缘网络[6]等领域有着广 泛的应用前景[7].目前联邦学习已产生基于同行业 数据的横向联邦学习,以及面向多行业数据的纵向 联邦学习与联邦迁移学习[8],并与大数据、云计算、 区块链、智能边缘计算等前沿技术深度融合,成为产 学研界共同关注的研究热点.
数字经济背景下,数据合规成为世界趋势.2018 年,欧盟颁布《通用数据保护条例》(GDPR)严格 规范数据的使用.2017年6月1日起我国施行的
《中国人民共和国网络安全法》指出不得泄露、篡改 用户数据.2019年5月28日,我国国家互联网信息 办公室公开《数据安全管理办法(征求意见稿)》,并 于2020年12月1日发布了《常见类型移动互联网 应用程序(APP)必要个人信息范围》公开征求意见 通知,可见用户数据的流转和使用必须满足越来越 严苛的数据管理条例.此外,数据要素具有巨大的潜 在价值,但由于行业竞争、利益冲突等因素,大多仍 呈现数据孤岛形式.联邦学习满足数据合规,并可以 解决数据孤岛问题[9].
大数据时代个人隐私保护一直备受关注.数据 隐私的泄露通常会引起公众不满,例如Facebook数 据泄露曾引发大范围抗议活动,国内求职简历售卖 也一度登上了微博热搜.造成数据隐私泄露的主要 原因可能是数据在流转过程中丢失,或者利用数据
5 6 4 12期 朱建明等:基于区块链的隐私保护可信联邦学习模型 2
《 计
算
机
学
报
》
挖掘技术从海量用户信息中非法获取个人敏感信 息[10].数据本身的无限复制特性导致数据一旦发生 泄露,数据的流转和使用难以追踪.
联邦学习是当前人工智能背景下实现数据隐私 保护的有效办法,根据初始设置不同,Kairouz等 人[11]将联邦学习分为跨设备(Crossdevice)和跨筒 仓(Crosssilo)两种类型.跨设备联邦学习的全局模 型由中心化的参数服务器控制,跨筒仓联邦学习的 每个参与者都可以是全局模型的聚合者和拥有者. 本文主要关注跨设备联邦学习,其基本思想是将模 型训练分散在k个节点进行,每轮训练结束后参数 服务器收集节点本地模型参数执行模型聚合算法, 并将更新的全局模型参数返回给各节点继续迭代训 练直至模型收敛.与分布式机器学习相比,联邦学习 具有以下优势:(1)参与节点协作训练,利益共享;
(2)数据不出节点本地,保护数据隐私并满足数据 合规;(3)模型准确率与数据聚合之后训练的准确 率效果相当.
跨设备联邦学习通过参数服务器执行模型聚合 算法,但中心化参数服务器可能遭受恶意攻击被截 获甚至篡改模型聚合过程的中间参数.此外,中心化 参数服务器使参与节点与参数服务器之间存在大量 远程数据通信,也导致了数据篡改与隐私泄露风险. 为了解决此问题,已有学者提出去除第三方的联邦 学习方法[12].在该方法中,通过交换用户公钥将模型 聚合委托给参与训练的节点一方来执行.然而,现有 的联邦学习隐私保护方案仍存在以下两方面问题:
(1)中间参数隐私泄露.联邦学习避免了因数 据收集而引起的数据泄露问题,但是仍然存在中间 参数的隐私泄露[13],尤其是梯度隐私泄露[14].现 有机器学习中的模型攻击[15]、数据攻击[16]、推理 攻击[1718](Inferenceattack)、后门攻击(Backdoor attacks)[19]、链接攻击(Linkabilityattack)[20]、投毒
攻击(Poisoningattack)[21]等方法都可对中间参数 包括梯度数据进行原始数据推断,从而泄露参与节 点本地数据的敏感信息.
(2)节点多方信任问题.在模型聚合过程中,可 能存在半诚实或者恶意的参数服务器与参与节 点[12].首先,参数服务器可能滥用或泄露数据,通过 将模型参数泄露给第三方获得额外收益;此外,参与 节点由于自利性考虑,可能会提供虚假参数以提高 活跃度与贡献度,存在搭便车行为.
如图1所示,假设企业A、B因数据匮乏有联合 建模需求,企业考虑数据隐私采用联邦学习建模方 案.在建模过程中,A、B无需交换本地数据,只需将
加密样本对齐,向参数服务器交换中间加密参数.参 数服务器执行模型聚合算法,将参数返回给A、B进 行新一轮模型更新,然后不断迭代此过程直至模型 收敛.在此过程中,假设企业B遭受恶意攻击而导 致数据隐私泄露甚至恶意篡改.由于自利性考虑,企 业B不愿消耗计算资源参与训练,但是想要从中获 利,因此选择搭便车上传未经训练的虚假参数,这两 种情况都会影响参数服务器的模型聚合.此外,在执 行模型聚合算法的过程中也难以避免程序漏洞,从 而影响联邦学习协作训练结果.
图1 参与节点提供低质量模型以及不可信的参数服务器
综上所述,为了解决跨设备联邦学习中间参数 隐私泄露以及多方互信问题,本文将中心化的参数 服务器构建为去中心化的参数聚合链,其中参与训 练节点犽将中间参数上传至区块链,通过共识算法 与智能合约进行参数验证和模型聚合,经过共识验 证后的聚合模型参数返回给各参与节点进行模型 更新.根据模型质量与节点信誉评分调整聚合权重, 降低误差较大模型参数所占比重,从而提升聚合 模型的准确率.基于这一研究思路,本文基于已有文 献[22]利用差分隐私实现联邦学习中间参数的隐私 保护.并设计协作者异步参数审计机制对模型质量 评估结果进行共识验证,防止搭便车行为.同时基于 模型质量与信誉评分构建自适应的模型聚合算法, 并通过智能合约自动触发算法执行.
与现有的基于区块链的联邦学习的工作相比, 本文主要贡献归纳为:
(1)自适应的模型聚合与隐私感知.本文以交
6 6 4
2 计 算 机 学 报 2021年
《 计
算
机
学
报
》
叉熵(CrossEntropy)[23]为模型质量评估依据,基于 模型质量与节点累计信誉值设计自适应的模型聚合 算法.其次,基于差分隐私保护联邦学习中间参数隐 私,根据模型质量评估结果在中间参数基础上增加 不同程度的拉普拉斯(Laplace)[24]噪声,防止中间参 数在传输过程中泄露本地数据隐私.
(2)区块链模型参数审计与共识.利用区块链去 中心化和强信任属性,对模型参数进行协作者参数 审计,有效识别恶意节点的投毒攻击与搭便车行为. 本文提出节点贡献度证明(ProofofContribution, PoC)共识算法,降低高贡献度节点共识挖矿难度,
减少计算资源浪费,提升节点参与公平性.
(3)支持轻量级智能边缘计算.目前已有的基 于区块链的联邦学习工作[2526]大多将联邦学习节点 构建为点对点(PeertoPeer)的区块链结构,本文将 区块链和联邦学习分层构建,适用于轻量级智能边 缘计算场景中的联邦学习.其中,区块链作为模型聚 合引擎,通过智能合约实现模型参数的自动化可配 置聚合操作,降低了中心化参数服务的恶意攻击与 计算偏差风险.轻量级智能边缘计算节点仅需完成 本地模型训练和参数更新,无需承担区块链节点面 临的数据冗余和共识过程中的通信开销.
(4)仿真实验与安全性分析.使用MNIST和 CIFAR10数据集,基于拉普拉斯差分隐私测试在 固定隐私噪声与动态隐私噪声情况下,MLP与 CNN模型训练的准确率对比情况.通过模拟投毒攻 击,进一步展示自适应模型聚合算法的抵御效果.利 用PythonFlask搭建区块链平台,为联邦学习提供 去中心化的模型聚合服务.大量实验表明,当参与节 点使用本模型进行联邦学习模型训练,计算时间开 销与存储开销较小,说明本模型有较好的实用性.
2 相关工作
21 联邦学习的隐私保护
联邦学习最早被Google提出用于用户输入法 预测,智能手机设备在本地进行模型训练后将参数 上传至云服务器进行模型更新[27].虽然在联邦学习 过程中数据保留在节点本地,但仍有可能泄露用户 隐私.Shmatikov等人[28]提出过度学习的概念,发现 模型训练过程可能隐式学习到不属于学习目标的数 据属性.Melis等人[17]通过推理攻击发现中间梯度 可能暴露训练数据的敏感信息.Hitaj等人[16]指出通 过生成对抗网络(GenerativeAdversarialNetwork, GAN)可以学习到差分隐私保护后参数中的重要信
息.Orekondy等人[20]发现通过链接攻击可以得到 中间梯度包含的重要数据特征.Dillenberger等 人[29]讨论了联邦学习的安全问题,地理上分散的节 点向集中的服务器发送更新参数时不仅容易受到网 络攻击,而且存在着隐私泄露风险.
现有的联邦学习参数隐私保护方案主要包 括差分隐私(DifferentialPrivacy,DP),同态加密
(HomomorphicEncryption,HE)和安全多方计算
(SecureMultipartyComputation,SMC)等,但同态 加密和安全多方计算由于密钥管理和多方通信面临 性能瓶颈问题,而差分隐私性能影响较小.Shokri 等人[30]提出差分隐私可以将模型参数扰动后传输, 但是其代价是模型准确率的降低,并且对于参与节 点较少的模型影响更加明显.Choudhury等人[31]提 出了在联邦学习的上下文中提供动态差分隐私的方 法,该方法旨在实现节点效用最大化与模型性能提 升,同时支持GDPR和HIPAA法案要求的隐私级 别.Aono等人[32]提出采用加性同态加密保护深度 学习中训练数据隐私性,但是具有参与节点诚实的 强假设.Bagdasaryan等人[33]研究发现不诚实的参与 方可能降低联邦学习聚合模型质量.Truex等人[34] 将差分隐私与安全多方计算结合,能够在保障隐私 的情况下,随着参与方的增加而减少噪声注入的增 长,同时保证训练结果的可信性.HybridAlpha[35]是 一种采用基于功能加密的安全多方计算联邦学习协 议,实验证明HybridAlpha可以减少约68%的训练 时间,并减少92%的数据传输量,同时实现与现有 解决方案相同的模型准确率和隐私保护级别. 22 基于区块链的联邦学习可信增强
区块链[3637]通过密码技术和点对点通讯形成去 中心化的分布式账本,利用智能合约实现可编程的 自动化可信交易,在实现去中心化数据共享的同时 确保数据的不可篡改.在结合联邦学习与区块链研 究中,一个主要方向是引入区块链来构建联邦学习 分布式可信计算框架,从而增强节点间的互信与聚 合模型的可信性.引入区块链的主要原因如下:
(1)联邦学习中节点本身和相互通信的过程中都可 能遭到恶意攻击;(2)参与联邦学习的节点可能存 在自身作恶或者因缺乏合理的激励机制而产生搭便 车行为,区块链的引入则可以有效解决此问题.
目前,已有一些学者将区块链和联邦学习结合, 以解决联邦学习应用过程中的数据安全性问题. 如果联邦学习的中心化参数服务器存在单点失效和 恶意攻击,其他参与节点将无法获知全局模型. FLChain[38]提出采用区块链实现不可篡改的局部模
7 6 4 12期 朱建明等:基于区块链的隐私保护可信联邦学习模型 2
《 计
算
机
学
报
》
型参数更新方案,设计了一个基于区块链点对点网 络的联邦学习架构,将全局模型以默克尔帕特里夏 树(MerklePatriciaTree,MPT)结构存入区块链. Awan等人[39]提出了一个基于区块链的隐私保护框 架,消除了参与者的半诚实假设,并采用加密技术来 保护数据隐私,但仍存在参数服务器单点失效风险. BAFFLE[40]利用去中心化的智能合约来协调联邦
学习中的模型聚合和参数更新任务,通过将全局参 数空间分解为不同的块,通过遵循评分和投标策略 提高计算性能.FLBlock[41]是一种基于区块链的联 邦学习方案,通过采用分布式哈希表来保证区块生 成效率,利用工作量证明共识机制维护全局模型一 致性.Kim等人[42]将区块链引入联邦学习解决单点 失效问题,并分析了最佳区块生成率.但忽略了中间 参数隐私保护.Zhao等人[43]提出将基于声誉的联 邦学习系统应用于移动边缘计算,并引入差分隐私 来保护客户的敏感信息.许多大型互联网公司已经 开展了区块链和联邦学习的研发工作并且代码开 源,其中包括IBM
①
、微软②
等.整体来看,现有研究 大多忽略了噪声误差对全局模型的影响,以及合作 式模型训练中的参与积极性与公平性.23 基于区块链的联邦学习节点贡献度激励 在现有的联邦学习中,假设参与节点拥有足够 的本地数据用于模型训练并且愿意参与协作训练过 程,但这与实际情况往往不符.比如,在电子医疗领 域,医药公司或研究机构很难收集到用户的医疗数 据,由于数据的特殊敏感性,大多医院不愿共享病人 的私人数据.此外,数据拥有方也担心无法达到预期 收益而不愿参与联邦学习.
现有研究已将区块链应用于联邦学习的参与节 点激励中,用于提升节点的参与积极性与公平性. Deepchain[44]是一个基于区块链激励的深度学习框
架,利用区块链和密码学实现了隐私保护的分布式 深度学习.通过Deepcoin平台资产奖励参与方对模 型训练的贡献,以提高节点参与的活跃性.此外, Deepchain通过智能合约实现自动化超时检查和参
数验证以实现激励的公平性.Kang等人[45]提出了 一种基于区块链的信誉值评估管理方案,利用多权 重主观逻辑模型计算参与节点信誉值并通过契约理 论实现联邦学习中可靠参与者的选择与激励. DPAFL[46]是一种用于车联网的异步联邦学习算
法,利用分布式异步更新方案避免中心化模型聚合 的安全威胁.Kim等人[25]认为在缺乏有效激励措施 的情况下设备可能存在欺骗行为,因此要求区块链 网络节点在共识过程中验证参数结果,对不诚实行
为给予一定的惩罚机制.Lu等人[47]提出在物联网 中将联邦学习节点构建为区块链网络,通过差分隐 私实现了隐私保护的数据共享方案,并提出一种基 于模型质量证明(ProofofQuilty,PoQ)的区块链共 识算法用于降低节点计算资源的开销,但该方案仍 难以避免投毒攻击以及节点的搭便车行为.
在已有研究的基础上,我们将区块链作为模型 聚合计算引擎,支持轻量级边缘节点的参与.根据模 型训练损失与历史累计信誉评分自适应调整本地模 型聚合权重,提升聚合结果的可信性.通过基于拉普 拉斯机制的差分隐私实现联邦学习的中间梯度参数 的动态隐私保护.设计基于节点贡献度的共识算法, 降低节点计算资源开销,提升参与积极性和对聚合 模型的贡献度.
基于区块链的可信联邦学习模型的研究架构如 图2所示.联邦学习层通过分布式本地模型训练、自 适应模型聚合、隐私需求感知等实现隐私保护的数 据价值融合;区块链服务层通过链式区块结构共享 模型参数,保证数据的不可篡改和可追溯特性,并通 过激励机制和智能合约实现参与节点的公平性与可 信的自动化模型聚合;基于区块链的隐私保护可信 联邦学习实现数据驱动的个性化模型调用与交易服 务,用户通过参数配置和API接口即可访问基于区 块链和联邦学习提供的安全可信数据模型服务.在 数字经济时代,数据即服务(DaaS)可以促进数据拥
图2 基于区块链的隐私保护可信联邦学习模型研究架构图 8
6 4
2 计 算 机 学 报 2021年
① ②
https://github.com/IBM/federatedlearninglib https://github.com/microsoft/0xDeCA10B《 计
算
机
学
报
》
有方的紧密合作,发挥海量数据背后的潜在价值,降 低各类用户构建数据模型的投入成本,为大数据交 易市场提供隐私保护的可信模型构建及交易范式.
3 预备知识
本文将区块链作为可信模型参数共享平台,记 录本地训练的中间梯度参数和训练损失,并通过区 块链节点执行智能合约实现联邦学习模型聚合,降 低中心化参数服务器的恶意攻击与不可信风险.为 了防止在联邦学习数据传输过程中参与节点身份信 息暴露以及数据隐私泄露,我们首先通过数据声明 创建联合训练小组,数据声明部分利用伪公钥地址 加密和数字签名技术防止攻击者非法获取节点的本 地数据以及用户抵赖行为.
31 数据声明
传统联邦学习通过参与节点本地数据合作训练 获得统一的全局模型.其中,参与节点犘代表模型 的数据拥有方,对本地数据具有完全的自治权,中心 化的参数服务器负责聚合训练节点的中间参数形成 全局模型.任务的目标函数可定义为[48]
mi犿n犉(犿),犉(犿)··=犽
∑
犖=1狑犽犉犽(犿) (1) 其中,犖代表参与联邦学习训练节点总量,犉犽为第犽 个训练节点的本地目标函数,狑犽为对应节点的影响 权重,满足狑犽0且犽∑
犖=1狑犽=1.犉犽(犿)通常被定义为 基于本地数据训练模型犿的经验风险.由于数据量 和隐私性考虑,参与节点本地数据不能直接存储在区 块链上.当一个数据提供者参与到联邦学习过程中, 会生成唯一的分布式身份标识(DID)存储在链上, 同时保存数据配置文件参数,包括数据的关键词、类 型、大小、Hash等.配置文件参数以合约账户的键 值对形式存储在区块链上,其中键保存参与节点的 身份标识信息,值保存配置文件参数,通过MPT 树[49]进行数据的存储与验证.下文符号描述见表1.表1 文中符号描述
符号 描述
狆犽狆犘狊狌 参与节点犘的伪公钥地址 狊犽狆 参与节点犘的密钥
犵犻 联合训练小组犻的素数生成器 狇 随机选择的大素数
犣狇 {1,2,…,狇-1} 犌1 循环倍增的素数序列组 犎1 抗冲突的Hash函数1 犎2 抗冲突的Hash函数2
开始训练之前,联邦学习任务发布者需要进行 联合训练小组的建立.首先每个训练节点提前声明 所拥有的数据信息,聚合相关关系较强的本地模型. 为了保证参与节点的数据隐私和匿名性,本文借鉴 Deepchain[44]采用伪公钥地址进行数据加密,伪公
钥地址定义如下:
狆犽狆犘狊狌∈{犵狊1犽狆,犵狊2犽狆,…,犵狊狀犽狆} (2) 参与节点犘选择密钥因子狊犽狆∈犣狇,并且生成 狀个公钥地址犵狊犻犽狆∈犌1,犻∈[1,狀].参与节点犘犻声明 数据资产犱犪狋犪犘犻,并使用伪公钥地址狆犽狆犘狊犻狌进行加 密,加密过程可表示为
狆犽狆犘狊犻狌(犱犪狋犪犘犻)={(犵犎1(犱犪狋犪犘犻),σ犼犘1),犱犪狋犪犽犲狔} s.t.σ犼犘1=(犎2(犼)·犵犎1(犱犪狋犪犼犘犻))犎1(犱犪狋犪犘犻) (3) 其中犱犪狋犪犘犻经过Hash运算后可以防止信息传输过 程中的数据篡改,将犱犪狋犪犘犻分别存储在犾个区块中, 犱犪狋犪犼犘犻代表第犼个区块中的内容,σ犼犘1由犱犪狋犪犼犘1经
Hash运算得到,犱犪狋犪犽犲狔代表数据声明包含的参数信 息,并将其作为联合训练组构成依据.
联邦学习目前的难点之一是因数据非独立同分 布(NonIID)[50]导致的数据样本无法对齐问题.如 果参与节点训练目标差异过大也无法进行协作训 练.因此,联邦学习开始之前需要自动化聚集相关 性较强的数据提供者.我们考虑将所有参与节点 根据加密数据声明中的犱犪狋犪犽犲狔通过文本分类算法 Word2Vec[51]分为不同的联合训练组,同组的节点 聚合目标相似.在训练过程中,每个节点维护一份检 索日志log(犻),当接收到数据模型访问请求时,节点 首先检索本地日志,如匹配到所需模型结果直接返 回,无需重复建模.
在区块链执行模型聚合算法过程中,各节点在 本地训练之后将中间梯度参数上传至区块链网络中 的共识节点进行模型聚合计算,各节点竞争记账权 将达成共识的聚合模型结果记录上链.参与训练节 点得到本地模型之后广播给联合训练组中的协作节 点进行模型质量验证,协作节点利用自身本地数据 验证模型,并将验证结果增加数据签名后进行广播. 验证之后的模型参数通过自适应模型聚合算法形成 本轮聚合模型犿犌,由区块链网络中的主节点返回给 联合训练组中的参与节点,开始进行下一轮的模型 更新迭代.
32 数据信息熵
联邦学习训练过程中需要多来源数据进行联合
9 6 4 12期 朱建明等:基于区块链的隐私保护可信联邦学习模型 2
《 计
算
机
学
报
》
建模,数据的信息量决定整体聚合模型的准确率.根 据经典的信息论原理,数据信息熵[52]可用于衡量数 据集中包含的信息量,因此可将其作为数据提供者 的贡献度评判依据,从而提升联邦学习联合建模的 准入门槛,从源头上防止低质量模型的引入,同时可 作为模型收益公平分配的依据.我们首先对数据信 息熵的相关概念进行界定.
定义1. 数据元组.对于给定的数据集犇,元组 狋被定义为犇中的一条记录狉的非空子集,即狋狉且 狋≠.
定义2. 元组集合.元组集合犜狌狆是一系列 元组{狋犻1,狋犻2,…,狋犻犽}的集合.因此,元组集合是数据 集犇的非空子集,即犜狌狆∈犇且犜狌狆≠.元组集 合可以是数据集的子集也可以是数据集本身.
定义3. 数据信息熵.数据信息熵是数据信息 量测量的基础方法,可以测量单个元组集合的信息 量,元组集合是信息熵度量的最小单位.对于一个有 狀个元组的元组集合,其信息熵犎犻狀犱的定义为
犎犻狀犱(犜狌狆)=-狋犻
∑
∈犜狌狆狆(狋犻)log犫狆(狋犻) (4) 其中,狆(狋犻)是数据元组狋犻的概率密度函数,犫是对数 函数的基,当犫=2时,信息量的度量单位是比特(Bit),即信息论中常用的数值单位.
除此之外,对于连续型的数据集在计算信息熵时, 由于样本数量有限很难准确计算其概率密度函数,因 此可以采用窗口函数的概率密度来估算连续型数据 集的信息熵.对于连续型数据集狓={狓1,狓2,…狓狀}, 如果真实概率密度函数是狆(狓),其估计密度函数 狆
^
(狋犻)定义为狆
^
(狋犻)=1狀
∫
犻狀=1(狓-狓犻,犺) (5)其中是窗口函数,犺是窗口高度,在本文中采用高 斯函数作为窗口函数:
(狕,犺)= 1(2π)犱2犺犱σ12exp-狕Tσ-1狕 2犺
( )
2 (6)其中,狕是数据集的犱维随机向量,σ是协方差 矩阵.
33 激励机制
联邦学习涉及多个相互独立的参与方,建立一 个合理的激励机制有利于公平地分配利益,有效降 低节点搭便车风险.在信息不对称的情况下,激励机 制的设计需要满足个人理性(IndividualRationality, IR)与激励相容(IncentiveCompatibility,IC),以确
保参与节点得到充分激励[53].联邦学习中每个参与
节点训练目标是实现节点效用最大化,每个节点希 望从协作式的联邦学习中获得比单一节点训练更优 的模型质量.此外,平台通过对外提供数据模型交易 获得收益,参与节点犘犽可以分得一定的平台奖励 犚(犘犽).节点参与训练的主要成本是其模型训练过 程中存储资源与通信资源开销.因此,参与节点犘犽 的效用函数犝(犘犽)定义如下:
犝(犘犽)=犚(犘犽)+
∑
τ犜=狋(犙τ(犕犌)-犙τ(犕犘犽)-犆τ(犘犽))(7) 其中,τ是模型迭代次数,犙τ(犕犌)是经过联邦学习模 型聚合之后的全局模型质量,犙τ(犕犘犽)是单节点训练 的模型质量,犆τ(犘犽)是模型在τ次迭代过程中节点 犘犽的资源开销.由于个人理性考虑,参与者个人效用
满足非负性,即犝(犘犽)0.
由此,联邦学习中参与节点激励机制的目标函数 可以定义为
犝(犘犽)=a犿rgmax
犽∈{犿犽(狋):狋<犜}犝(犘犽)
s.t.犘犽∈犘,犽∈(1,2,…,犖) (8) 激励机制需要保证参与节点的一致性和活跃 性[44].一致性指在模型训练过程中所有参与节点的 共同贡献决定联合训练模型的质量,因此需要所有参 与节点尽可能提供高质量的模型参数.活跃性通过激 励策略吸引参与节点积极参与合作训练过程,使各节 点趋于效用最大化目标.激励机制可以增加参与节点 的活跃度,并且能根据节点贡献获得效用最大化,满 足激励相容.
从整体福利角度考虑,激励机制的目标是达到帕 累托最优的资源配置,每个参与节点的福利状态取决 于节点在联邦学习中的参与贡献度.假设参与节点 犘犽在模型训练过程中的贡献度为犆(犘犽),模型收益之 后所分配的奖励为犚(犘犽),奖励形式以平台积分形式 发放,用于支付使用数据模型的费用.因此,所有参与 节点的总体福利狑犲犾犳犪狉犲(犘)满足:
狑犲犾犳犪狉犲(犘)=犽
∑
犖=0犚(犘犽)-犆(犘犽)s.t.犆(犘犽)=θ·犆(犘犽) (9) 其中,奖励犚(犘犽)根据节点贡献度犆(犘犽)分配,贡献 度越高的节点所获得奖励越多.节点贡献度犆(犘犽)主 要由三部分构成:数据贡献度犆犇(犘犽)、在线资源开销 犆犚(犘犽)以及模型质量贡献度犆犙(犘犽).其中数据贡献 度主要通过数据信息熵犎犻狀犱(犘犽)与数据量在总体数 据中的占比犆犽衡量,α为权重参数.模型质量贡献度 通过节点犘犽提供的本地模型质量犙(犕犘犽)判断,因此
0 7 4
2 计 算 机 学 报 2021年