联邦学习:密码学 + 机器学习 + 分布式 实现隐私计算,破解医学界数据孤岛的长期难题

联邦学习:密码学 + 机器学习 + 分布式

    • 提出背景:数据不出本地,又能合力干大事
      • 联邦学习的问题
    • 分布式机器学习:解决大数据量处理的问题
    • 横向联邦学习:解决跨多个数据源学习的问题
    • 纵向联邦学习:解决数据分散在多个参与者但部分特征重叠的问题
    • 联邦 + 迁移学习:不同任务间共享知识,让模型适应新环境
    • 医疗 + 联邦学习:跨多个医疗机构共享模型学习,同时保护患者隐私
    • 大模型 + 联邦学习

 


提出背景:数据不出本地,又能合力干大事

这联邦学习呢,就是让不同的地方一起弄一个学习的模型,但重要的是,大家的数据都是自己家的,不用给别人。

这样一来,人家的秘密就不会到处乱跑(数据不出本地),又能合力干大事。

 
<没有联邦学习的情况>

在没有联邦学习的情况下,医院面临的一个主要问题是数据隔离。

每个医院只能依赖自己收集的数据来训练疾病诊断(如糖尿病)模型。

这意味着模型的有效性和准确性受限于各自医院的数据量和多样性。

对于罕见病例或特殊种群,数据量可能不足以准确训练模型。

此外,由于患者隐私和数据保护的关切,医院之间共享详细的患者数据存在法律和道德障碍。

 

在这里插入图片描述

<引入联邦学习后的情况>

在这种模式下,不同医院可以合作训练一个共享的疾病诊断(如糖尿病)模型。

每个医院使用自己的患者数据本地训练模型,然后将模型的更新(而不是敏感的患者数据)分享给其他医院。

  1. 初始模型共享:首先,所有参与的医院都从一个初始模型开始。这个初始模型可以是一个基础的、未经过大量训练的模型。

  2. 本地训练:然后,每个医院使用自己的患者数据在本地独立训练这个模型。由于每个医院的患者构成可能不同,这意味着每个医院训练出的模型会稍有不同,反映了它们各自独特的患者数据特征。

  3. 模型更新共享:训练完成后,每个医院不是共享其患者数据,而是只共享其模型训练的更新。这些更新可以是模型权重的调整或其他形式的技术细节。

  4. 集成学习:最后,这些来自不同医院的模型更新被集成到初始模型中。这样,模型就能从每个医院的数据中学习,而不需要直接访问这些数据。

通过这种方式,联邦学习允许每个医院贡献它们的专业知识和数据见解,同时保护患者数据的隐私。

 
优势在于:

  1. 增强模型的准确性和泛化能力:由于模型是基于更广泛和多样化的数据集训练的,因此联邦学习模型性能比只使用本地数据训练的好,性能趋近于(低于)使用全部数据训练的模型
  2. 保护患者隐私:患者数据不离开原医院,降低了隐私泄露的风险。而且模型参数是加密的,无法反推其他参与方的原始数据
  3. 跨医院合作:即使面临法律和伦理限制,医院仍能通过共享模型更新而非数据本身来实现合作。

因此,联邦学习解决了数据孤岛问题,提高了诊断模型的准确性和可靠性,同时保障了患者数据的隐私安全。

当需要多个参与方共同完成一件事,每个参与方都有其他方不具备的数据,同时也不能共享,就能使用联邦学习。

 


联邦学习的问题

联邦学习的问题,源于数据的特性和分布。

一、非独立同分布(Non-IID)的数据

不同的机构或个人,持有的数据往往在统计特性上有所不同。

这意味着数据可能不是独立的(一个病人得了糖尿病,还有高血压)或者具有不同的分布(山区的医院多心脏病,而海边的医院多糖尿病)。

这种差异可能导致模型在某些数据属主上表现良好,而在其他数据属主上表现不佳。

例子

  • 假设一个联邦学习系统用于不同地区医院的病例数据分析。
  • 每个医院的病例分布可能因地理位置、患者人群和医院专长等因素而有所不同。
  • 某个地区可能有更高的糖尿病发病率,而另一个地区可能有更多心脏疾病案例。
  • 这些差异会影响学习模型的整体性能。

 
二、数据不平衡

一些机构可能拥有大量的数据,而其他机构只有少量数据。

在聚合模型参数时,数据量较大的属主可能对模型的训练结果有更大的影响,这可能会导致模型偏向于这些数据多机构的特点,忽视其他数据少机构。

 
三、通信、计算的效率

同态加密会导致高的计算量。

混淆电路会导致高的通信量。

 
四、信任问题

  1. 信任问题

    • 在联邦学习中,不同的数据属主(例如医院)和集中式服务器之间存在信任问题。因为参与者或服务器中的任何一方都有可能不完全可靠,甚至可能有攻击者。
  2. 潜在的攻击者

    • 参与者或服务器中的某些人可能是恶意攻击者,他们可能试图窃取私人信息或干扰训练算法。
  3. 交换模型参数而非原始数据

    • 联邦学习通过交换模型参数(如局部梯度),而不是原始数据,来保护每个数据属主的隐私。这意味着参与者不会共享他们的原始数据,只分享用于模型训练的信息(如权重更新、梯度等)。
  4. 梯度泄露风险

    • 即使是这些模型参数,如果被恶意分析,也可能泄露原始数据的敏感信息。例如,通过对交换的梯度进行分析,攻击者可能推断出一些原始数据特征。

假设有一个联邦学习项目涉及多家医院,旨在通过共享学习提高疾病诊断的准确性。

每家医院都有自己的患者数据,但由于隐私问题,这些数据不能直接共享。因此,医院们只分享用于模型训练的梯度信息。

现在,假设其中一个医院或服务器被一个攻击者控制了。

这个攻击者可能通过分析从其他医院来的梯度信息,推断出某些患者的敏感信息,比如他们可能患有某种特定的疾病。

即使梯度本身不包含直接的患者数据,但通过复杂的分析方法,攻击者仍然可能获得关于原始数据的有价值信息。

为了防止这种隐私泄露,可以采取一些措施:

  1. 差分隐私:通过在数据或梯度中添加随机噪声,使得从共享的梯度中推断出任何个人数据变得非常困难。

  2. 安全多方计算(SMC):这是一种加密技术,允许多个方协作计算一个函数,而无需暴露各自的输入数据。

  3. 鲁棒的聚合机制:设计鲁棒的聚合算法,可以减少恶意参与者对模型的影响。

这些方法可以提高联邦学习系统在医学等敏感领域的安全性和隐私保护。

 


分布式机器学习:解决大数据量处理的问题

 


横向联邦学习:解决跨多个数据源学习的问题

横向联邦学习同领域,不同数据。

比如有三家医院:每家医院都有大量糖尿病视网膜病变的数据,但由于隐私法规,他们无法共享这些数据。

阳光医院的数据科学家提出使用横向联邦学习。

在这个模式下,每个医院在本地训练模型,然后只共享模型的更新,而不是患者的实际数据。

这样,三家医院共同建立了一个强大的DR预测模型,而不违反隐私法规。

通过这种合作,医院间的模型学习到了不同患者群体的特点,大大提高了诊断的准确性。
 


纵向联邦学习:解决数据分散在多个参与者但部分特征重叠的问题

相关,但不同的领域(跨领域关联)。

药物公司“生命源泉”持有大量关于糖尿病药物的效果数据,而保险公司“安全盾”拥有糖尿病患者的医疗历史数据。

为了更全面地研究DR,医院与这两家公司展开合作,

采用纵向联邦学习。不同于横向联邦学习,纵向联邦学习允许不同领域的机构在保持数据私有性的同时,共同改进模型。

通过这种方式,研究者能够结合药物效果和病历数据,对糖尿病视网膜病变的发展和治疗效果进行更深入的分析。
 


联邦 + 迁移学习:不同任务间共享知识,让模型适应新环境

这个城市的模型尝试在相邻城市应用时,研究人员发现效果并不理想。

为了解决这个问题,他们采用了联邦迁移学习。通过这种方法,他们能够调整已有模型,使其更适应新的环境和患者特征,而无需从头开始收集和训练数据。

通过联邦迁移学习,模型迅速适应了新环境。

 


医疗 + 联邦学习:跨多个医疗机构共享模型学习,同时保护患者隐私

 


大模型 + 联邦学习

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/641596.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(一)SpringBoot3---尚硅谷总结

目录 示例Demo: 1、我们先来创建一个空工程: 2、我们通过Maven来创建一个Module: 3、让此Maven项目继承父项目: 4、导入web开发的场景启动器 5、创建Springboot项目的主入口程序: 6、举例测试: 7、Springboot还能…

020-信息打点-红蓝队自动化项目资产侦察企查产权武器库部署网络空间

020-信息打点-红蓝队自动化项目&资产侦察&企查产权&武器库部署&网络空间 #知识点: 1、工具项目-红蓝队&自动化部署 2、工具项目-自动化侦查收集提取 3、工具项目-综合&网络空间&信息 演示案例: ➢自动化-武器库部署-F8x ➢自…

leetcode—图 岛屿数量

岛屿数量 给你一个由 1(陆地)和 0(水)组成的的二维网格,请你计算网格中岛屿的数量。 岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。 此外,你可以假设该网…

RabbitMQ入门篇【图文并茂,超级详细】

🥳🥳Welcome 的Huihuis Code World ! !🥳🥳 接下来看看由辉辉所写的关于Docker的相关操作吧 目录 🥳🥳Welcome 的Huihuis Code World ! !🥳🥳 前言 1.什么是MQ 2.理解MQ 3.生活…

记一个奇怪的万能密码

前言 打的站点打多了,什么奇怪的问题都会发生 打点 开局一个登录框 用户枚举到账号爆破 测了一下,没发现admin的弱口令,但是发现存在用户枚举漏洞,因此准备跑一下账号 输入密码为123456 进行账号爆破 成功爆破出账号 是的…

【ARM 嵌入式 编译系列 7.3 -- GCC 链接脚本中 DISCARD 与 .ARM.exidx】

请阅读【嵌入式开发学习必备专栏 之 ARM GCC 编译专栏】 文章目录 背景.ARM.exidx方法一:使用链接器脚本方法二:使用链接器选项注意事项背景 在移植 RT-Thread 到 cortex-m33(RA4M2)上的时候,在编译的时候遇到下面问题: Building target: ra4m2.elf arm

PyTorch视觉工具箱:图像变换与上采样技术详解(1)

目录 Pytorch中Vision functions详解 pixel_shuffle 用途 用法 使用技巧 注意事项 参数 数学理论公式 示例代码及输出 pixel_unshuffle 用途 用法 使用技巧 注意事项 参数 数学理论公式 示例代码及输出 pad 用途 用法 使用技巧 注意事项 参数 示例代码…

智能机器人与旋量代数(9)

Chapt 3. 螺旋运动与旋量代数 3.1 螺旋运动 螺旋运动是关于一条空间直线的一个旋转运动,并伴随沿此直线的一个平移。是一种刚体绕空间轴 s s s旋转 θ \theta θ角,再沿该轴平移距离 d d d的复合运动,类似螺母沿螺纹做进给运动的情形。 一…

2024年【焊工(初级)】考试内容及焊工(初级)新版试题

题库来源:安全生产模拟考试一点通公众号小程序 焊工(初级)考试内容参考答案及焊工(初级)考试试题解析是安全生产模拟考试一点通题库老师及焊工(初级)操作证已考过的学员汇总,相对有…

docker 使用 vcs/2018 Verdi等 eda 软件

好不容易在ubuntu 安装好了eda软件,转眼就发现了自己的无知。 有博主几年前就搞定了docker上的EDA工具。而且更全,更简单。只恨自己太无知啊。 Synopsys EDA Tools docker image - EDA资源使用讨论 - EETOP 创芯网论坛 (原名:电子顶级开发网…

python解决从有序数组中寻找中位数

如果给定两个长度分别是m和n的有序数组array1和array2,需要对这两个有序数组找出其中的中位数,需要保证时间复杂度是O(long(min(m,n)),空间复杂度是O(1)。如下例子: 添加图片注释,不超过 140 字(可选&#…

【教程】混淆Dart 代码

什么是代码混淆? 代码混淆是一种将应用程序二进制文件转换为功能上等价,但人类难于阅读和理解的行为。在编译 Dart 代码时,混淆会隐藏函数和类的名称,并用其他符号替代每个符号,从而使攻击者难以进行逆向工程。 Flut…

ChatGPT和文心一言哪个更好用?

目录 一、ChatGPT和文心一言大模型的对比分析 1.1 二者训练的数据情况分析 1.2 训练大模型数据规模和参数对比 1.3 二者3.5版本大模型对比总结 二、ChatGPT和文心一言功能对比分析 2.1 二者产品提供的功能情况分析 2.2 测试一下各种功能的特性 2.2.1 文本创作能力 2.2…

电脑提示“No Boot Device”怎么办?

在Windows 11/10/8/7启动时遇到错误如“No Boot Device Found”和“未找到引导设备硬盘3F0”时,会导致电脑无法正常开机。那么,No Boot Device错误该怎么修复呢?下面我们就来了解一下。 修复 1. 检查启动顺序并将BIOS的设置重置为默认值 为…

非线性最小二乘问题的数值方法 —— 狗腿法 Powell‘s Dog Leg Method (II, Python 简单实例)

Title: 非线性最小二乘问题的数值方法 —— 狗腿法 Powell‘s Dog Leg Method (II, Python 简单实例) 姊妹博文 非线性最小二乘问题的数值方法 —— 狗腿法 Powell‘s Dog Leg Method (I - 原理与算法) 0.前言 本篇博文作为对前述 “非线性最小二乘问题的数值方法 —— 狗腿法…

【mars3d】内置的右键测量菜单单击关闭按钮无法关闭测量结果说明

1.【mars3d】内置的右键测量菜单单击关闭按钮无法关闭测量结果说明 2.内置的右击地图查看此处坐标,出现的弹框按钮同样无法关闭的解决方案。 解决说明: 1.这个问题和mars3d没有关系,是and那边的问题,需要尝试固定下vue版本3.3.0或…

测试 yolov8 分割模型 边缘检测

发现 cfg/default.yaml 参数 mask_ratio 等于4 直接训练如下边缘分割标签,推理时mask 稀疏,训练时分数偏低,mask_ratio 改为1训练时打印的mask 的 P指标一直为0,将imgsz原图size 训练分数也不高 标注用的是labelme多边形 阅读源码发现可能是因为mask缩放导致 且出现…

springboot配置项动态刷新

文章目录 一,序言二,准备工作1. pom.xml引入组件2. 配置文件示例 三,自定义配置项动态刷新编码实现1. 定义自定义配置项对象2. 添加注解实现启动时自动注入3. 实现yml文件监听以及文件变化处理 四,yaml文件转换为java对象1. 无法使…

IPv4 开始收费!新的 IT 灾难?

对于想要继续使用公共IPv4地址的用户而言,他们主要靠回收和未使用地址段的释放才能用上IPv4,其中这些地址要么来自倒闭的组织,要么来自于那些已经迁移到IPv6时不再需要的地址。 不难想象,获取日益稀缺的IPv4中间过程变得复杂&…

接口测试之webservice

什么是Webservice Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发…