当前位置: 首页 > backend >正文

区块链联邦学习思路一

联邦学习(FL)因为其“数据可用不可见”的特点,既满足了隐私保护要求,也符合现代人工智能的发展方向。尽管联邦学习在计算机界越来越受欢迎,但是在模型训练过程中,客户端上传的参数和服务器下发的参数,依然存在攻击问题,例如:中间人攻击窃取参数迫使参数成为纂改参数。参与训练的客户端也有恶意用户,我们对此还要付出更多的通信代价预防该问题。

针对上述问题,本文提出一种基于区块链的联邦学习新框架(A New Blockchain-based Federated Learning Framework, ABFLF)。该框架的思想由以下三点实现:

  1. 工作量证明(PoW)+可持续监控+法律信任管理:在联邦学习训练中,为了防止女巫攻击,在参与训练之前,利用工作量证明“有付出才有权利”的特点先检验所有客户端,挑选所有善意的客户端。但是“客户端善意不等于其行为善意”,防止投毒攻击以及在之后的联邦学习训练过程中,客户端被攻击者以“巨大收益”收买。我们在后续训练过程中,所有客户端会上传参数的哈希值,利用区块链进行数据可持续监测,当检测到恶意数据、投毒数据、隐蔽威胁性数据时,进行区块链溯源,可排除行为恶意的客户端。以上两种办法,依然无法排除攻击者为了参与训练,而用“代价换取权利”的动机,因此在筛选出善意客户端之后,使用身份认证+合同签订进行双重验证,确保参与联邦学习的客户端身份是善意的及其行为也是善意的,保证后续的训练能够正常进行。

  2. 双重验证机制:在传统联邦学习架构中引入区块链作为分布式账本,所有客户端在上传本地模型参数至中央服务器前,需先将参数哈希值写入区块链;首先会对参数进行加密或者加噪,防止被攻击者窃取。客户端本地训练的参数,会进行加密或者加噪,同时利用哈希算法生成唯一哈希值并存入区块链结点,然后客户端将处理过后的参数和哈希值上传,服务器接收后,通过查询区块链节点进行双重校验:通过比对哈希值验证参数完整性,其次通过零知识证明(zk-SNARKs)验证计算过程的有效性,确保参数未被篡改且来自可信客户端。如果通过零知识证明等技术发现参数不可效,区块链上的哈希值可作为“提交证明”,在进行训练之前采用“工作量证明(PoW)+可持续监控+法律信任管理”三重验证条件下,可对客户端进行追责。

  3. 隐私增强架构:保留联邦学习的核心优势:原始数据始终保留在本地,仅交换加密梯度参数。梯度参数可根据需求不同:采用同态加密+差分隐私组合方案、引入多方计算(MPC)等技术实现。

为解决数据孤岛和避免相互通信时直接暴露数据本身等问题,Google在2016年首次提出了联邦学习(Federated Learning, FL)[1]。FL 技术是一种分布式机器学习,能够在提高模型训练效率的同时,提供一定的隐私保护。然而,传统 的联邦学习依然面临着一些问题。例如,中央服务器存在单点故障[2]、缺乏激励机制[3]。传统的联邦学习结构依赖于中央服务器去进行模型的聚合和维护,当服务器受到攻击而无法工作时,整个联邦学习模型就无法工作,从而导致单点故障问题。同时,上传参数的过程中,依然可能会受到中间人攻击,也有研究表明,预防中间人攻击,可以采用差分隐私[4]或者同态加密[5]对参数进行加噪和加密。对参数加密的私钥如果被窃取也会导致敏感数据泄露;对参数加噪,加噪越多隐私越好,但是可能导致模型性能下降。

区块链是一种分布式账本技术,它有去中心化、不可篡改[6]、智能合约[6]、共识机制[8]和高透明度的特点,为联邦学习提供了一个安全、可靠的数据交换平台。利用区块链的分布式账本技术和去中心化的特点,在参数存证与历史可追溯性[8]层面,区块链可实现模型参数全生命周期的可信记录。客户端上传的每一轮参数更新,都会经过哈希算法处理生成唯一指纹,与客户端标识、时间戳等信息共同写入区块。由于区块链的链式结构与共识机制,任何后续对参数记录的篡改都需修改全网51%以上的节点数据,在技术层面几乎不可能实现。这使得服务器在参数聚合时,能通过链上记录快速追溯每一份参数的来源与历史修改轨迹,一旦发现异常参数,可精准定位问题客户端并终止其参与资格,大幅提升异常排查效率。​在联邦学习训练中,为了防止女巫攻击,在参与训练之前,利用区块链的共识机制[7],例如利用PoW工作量证明“有付出才有权利”的特点先检验所有客户端,挑选所有善意的客户端。区块链保证链上数据不被篡改, 但依旧无法保证所有客户端都是诚实的,缺乏对恶意客户端与模型的检测[8]。现有的BCFL系统方案研究综述Oktian等人[9]从联邦学习整个训练过程入手,给出一个庞大的BCFL 通用架构,针对每个热点提出问题并分析现有解决方 案,但并没有对现有的BCFL进行分类。Hallaji等人[10]则是对去中心化联邦学习可能受到的各种攻击进行了详细总结,并概述了一些潜在的保护方案。Ali等人[11]针对工业互联网中BCFL系统的入侵检测方法进行总结。

综上所述,本研究旨在设计实现PoW+法律信任的双重客户端准入机制,提升客户端之间的信任问题,保证联邦学习训练更好的进行;设计实现参数哈希上传到区块链的梯度哈希存证,实现双向验证,防止参数被中间人攻击所纂改,提升模型准确率;使用同态加密、差分隐私或者多方安全加密等加密方法提升区块链和联邦学习模型的可解释性问题。本研究尝试构建一种结合密码学验证和法律约束的可信联邦学习框架,旨在为相关领域的研究提供新的技术思路和实现路径。

http://www.xdnf.cn/news/18290.html

相关文章:

  • 机器学习两大核心算法:集成学习与 K-Means 聚类详解
  • 如何保证数据库和缓存的一致性?
  • Java设计模式-模板方法模式
  • 常见开源协议详解:哪些行为被允许?哪些被限制?
  • B站 韩顺平 笔记 (Day 24)
  • K8S-Secret资源对象
  • 学习数组①
  • 1.Shell脚本修炼手册之---为什么要学Shell编程?
  • 【MySQL的卸载】
  • 读《精益数据分析》:规模化(Scale)—— 复制成功,进军新市场
  • PiscCode集成Hand Landmarker:实现高精度手部姿态检测与分析
  • JVM面试精选 20 题(终)
  • 【北京迅为】iTOP-4412精英版使用手册-第三十二章 网络通信-TCP套字节
  • 30.Linux cobbler自动化部署
  • 基于51单片机自动浇花1602液晶显示设计
  • STM32_0001 KEILMDK V5.36 编译一个STM32F103C8T6说core_cm3.h文件找不到以及编译器版本不匹配的解决办法
  • 多模型创意视频生成平台
  • 设计模式1-单例模式
  • PyTorch如何修改模型(魔改)?/替换模型,一般除了注意输入输出一致,还有其他要修改的吗?
  • 【Python】新手入门:python面向对象编程的三大特性是什么?python继承、封装、多态的特性都有哪些?
  • IT运维背锅权限泄露?集中式管控如何化解风险?
  • postman+newman+jenkins接口自动化
  • 次短路P2865 [USACO06NOV] Roadblocks G题解
  • cobbler
  • 换根DP(P3478 [POI 2008] STA-StationP3574 [POI 2014] FAR-FarmCraft)
  • Linux I/O 多路复用实战:深入剖析 Select 与 Poll
  • 在 Ubuntu Linux LTS 上安装 SimpleScreenRecorder 以录制屏幕
  • GPT-5 上线风波深度复盘:从口碑两极到策略调整,OpenAI 的变与不变
  • Jupyter Notebook 的终极进化:VS Code vs PyCharm,数据科学的IDE王者之争
  • 全球首款 8K 全景无人机影翎 A1 发布解读:航拍进入“先飞行后取景”时代