这篇文章是与 FedML 的 Chaoyang He、Al Nevarez 和 Salman Avestimehr 共同撰写的。
许多组织正在实施机器学习 (ML),通过自动化和使用大型分布式数据集来增强其业务决策。随着数据访问的增加,机器学习有潜力提供无与伦比的业务洞察和机会。然而,在不同地点共享原始、未经消毒的敏感信息会带来重大的安全和隐私风险,尤其是在医疗保健等受监管行业。
为了解决这个问题,联邦学习 (FL) 是一种去中心化、协作式的 ML 训练技术,可提供数据隐私,同时保持准确性和保真度。与传统的 ML 训练不同,FL 训练使用独立的安全会话在隔离的客户端位置进行。客户端仅与中央服务器(称为训练协调器或聚合服务器)共享其输出模型参数,而不是用于训练模型的实际数据。这种方法缓解了许多数据隐私问题,同时实现了模型训练的有效协作。
尽管 FL 是实现更好的数据隐私和安全性的一步,但它并不是一个有保证的解决方案。缺乏访问控制和加密的不安全网络仍然可能向攻击者暴露敏感信息。此外,如果通过推理攻击重建,本地训练的信息可能会暴露私人数据。为了减轻这些风险,FL 模型在与训练协调员共享信息之前使用个性化训练算法以及有效的屏蔽和参数化。本地和集中位置的强大网络控制可以进一步降低推理和渗透风险。
在这篇文章中,我们分享了一种 FL 方法,使用 FedML, Amazon Elastic Kubernetes服务 (亚马逊 EKS),以及 亚马逊SageMaker 改善患者治疗结果,同时解决数据隐私和安全问题。
医疗保健领域联邦学习的需求
医疗保健严重依赖分布式数据源来对患者护理做出准确的预测和评估。为了保护隐私而限制可用数据源会对结果准确性产生负面影响,并最终影响患者护理的质量。因此,ML 给 AWS 客户带来了挑战,他们需要在不影响患者治疗结果的情况下确保分布式实体的隐私和安全。
医疗保健组织在实施 FL 解决方案时必须遵守严格的合规性法规,例如美国的健康保险流通和责任法案 (HIPAA)。确保数据隐私、安全性和合规性在医疗保健领域变得更加重要,需要强大的加密、访问控制、审核机制和安全通信协议。此外,医疗保健数据集通常包含复杂且异构的数据类型,这使得数据标准化和互操作性成为 FL 设置中的挑战。
用例概述
本文概述的用例是不同组织中的心脏病数据,机器学习模型将在这些数据上运行分类算法来预测患者的心脏病。由于这些数据是跨组织的,因此我们使用联合学习来整理研究结果。
心脏病数据集 来自加州大学欧文分校的机器学习存储库是心血管研究和预测建模广泛使用的数据集。它由 303 个样本组成,每个样本代表一名患者,并包含临床和人口统计属性的组合,以及是否存在心脏病。
该多变量数据集在患者信息中包含 76 个属性,其中 14 个属性最常用于开发和评估 ML 算法,以根据给定属性预测心脏病的存在。
FedML 框架
FL 框架有多种选择,但我们决定使用 FedML 框架 对于这个用例,因为它是开源的并且支持多种 FL 范例。 FedML 为 FL 提供了流行的开源库、MLOps 平台和应用程序生态系统。这些有助于 FL 解决方案的开发和部署。它提供了一套全面的工具、库和算法,使研究人员和从业者能够在分布式环境中实施和实验 FL 算法。 FedML 解决了 FL 中数据隐私、通信和模型聚合的挑战,提供用户友好的界面和可定制的组件。 FedML 专注于协作和知识共享,旨在加速 FL 的采用并推动这一新兴领域的创新。 FedML 框架与模型无关,包括最近添加的对大型语言模型 (LLM) 的支持。欲了解更多信息,请参阅 发布 FedLLM:使用 FedML 平台在专有数据上构建您自己的大型语言模型.
FedML 八达通
系统层次结构和异构性是现实生活中 FL 使用案例中的一个关键挑战,其中不同的数据孤岛可能具有不同的 CPU 和 GPU 基础设施。在这种情况下,您可以使用 FedML 八达通.
FedML Octopus 是跨筒仓 FL 的工业级平台,用于跨组织和跨账户培训。与 FedML MLOps 相结合,它使开发人员或组织能够以安全的方式从任何地方、任何规模进行开放协作。 FedML Octopus 在每个数据竖井内运行分布式训练范例,并使用同步或异步训练。
FedML MLOps
FedML MLOps 支持本地开发代码,稍后可以使用 FedML 框架将其部署到任何地方。在开始训练之前,您必须创建一个 FedML 帐户,并在 FedML Octopus 中创建并上传服务器和客户端包。欲了解更多详情,请参阅 步骤 和 FedML Octopus 简介:通过简化的 MLOps 将联合学习扩展到生产中.
解决方案概述
我们将 FedML 部署到与 SageMaker 集成的多个 EKS 集群中以进行实验跟踪。我们用 Terraform 的 Amazon EKS 蓝图 部署所需的基础设施。 EKS 蓝图可帮助构建完整的 EKS 集群,这些集群通过部署和操作工作负载所需的操作软件进行完全引导。通过 EKS 蓝图,EKS 环境所需状态的配置(例如控制平面、工作节点和 Kubernetes 附加组件)被描述为基础设施即代码 (IaC) 蓝图。配置蓝图后,可使用持续部署自动化跨多个 AWS 账户和区域创建一致的环境。
本文分享的内容反映了现实生活中的情况和经历,但需要注意的是,这些情况在不同地点的部署可能会有所不同。尽管我们使用具有单独 VPC 的单个 AWS 账户,但了解个人情况和配置可能有所不同至关重要。因此,所提供的信息应作为一般指南,并可能需要根据具体要求和当地条件进行调整。
下图说明了我们的解决方案体系结构。
除了 FedML MLOps 为每次训练运行提供的跟踪之外,我们还使用 Amazon SageMaker实验 跟踪每个客户端模型和集中式(聚合器)模型的性能。
SageMaker Experiments 是 SageMaker 的一项功能,可让您创建、管理、分析和比较 ML 实验。通过记录实验细节、参数和结果,研究人员可以准确地重现和验证他们的工作。它可以对不同方法进行有效比较和分析,从而做出明智的决策。此外,跟踪实验通过提供对模型进展的洞察并使研究人员能够从之前的迭代中学习,从而促进迭代改进,最终加速更有效解决方案的开发。
我们将每次运行的以下内容发送到 SageMaker Experiments:
- 模型评估指标 – 训练损失和曲线下面积 (AUC)
- 超参数 – Epoch、学习率、批量大小、优化器和权重衰减
先决条件
要继续阅读这篇文章,您应该具备以下先决条件:
部署解决方案
首先,克隆本地托管示例代码的存储库:
然后使用以下命令部署用例基础设施:
Terraform 模板可能需要 20-30 分钟才能完全部署。部署后,请按照下一节中的步骤运行 FL 应用程序。
创建 MLOps 部署包
作为 FedML 文档的一部分,我们需要创建客户端和服务器包,MLOps 平台会将其分发到服务器和客户端以开始训练。
要创建这些包,请运行根目录中的以下脚本:
这将在项目根目录的以下目录中创建相应的包:
将包上传到 FedML MLOps 平台
完成以下步骤来上传包:
- 在 FedML UI 上,选择 我的申请 在导航窗格中。
- 新申请.
- 从您的工作站上传客户端和服务器包。
- 您还可以调整超参数或创建新参数。
触发联邦训练
要运行联合训练,请完成以下步骤:
- 在 FedML UI 上,选择 项目清单 在导航窗格中。
- 创建一个新项目.
- 输入组名称和项目名称,然后选择 OK.
- 选择新创建的项目并选择 创建新运行 触发训练运行。
- 为此训练运行选择边缘客户端设备和中央聚合器服务器。
- 选择您在前面的步骤中创建的应用程序。
- 更新任何超参数或使用默认设置。
- Start 开始 开始训练。
- 选择 培训状态 选项卡并等待训练运行完成。您还可以导航到可用的选项卡。
- 训练完成后,选择 系统 选项卡可查看边缘服务器上的训练持续时间和聚合事件。
查看结果和实验详细信息
训练完成后,您可以使用 FedML 和 SageMaker 查看结果。
在 FedML UI 上 型号 选项卡,您可以看到聚合器和客户端模型。您还可以从网站下载这些模型。
您也可以登录 亚马逊SageMaker Studio 并选择 实验 在导航窗格中。
以下屏幕截图显示了记录的实验。
实验跟踪代码
在本节中,我们将探讨将 SageMaker 实验跟踪与 FL 框架训练集成的代码。
在您选择的编辑器中,打开以下文件夹以查看对代码的编辑,以将 SageMaker 实验跟踪代码作为训练的一部分注入:
为了跟踪训练,我们 创建 SageMaker 实验 使用记录的参数和指标 log_parameter
和 log_metric
命令如以下代码示例中所述。
中的一个条目 config/fedml_config.yaml
文件声明实验前缀,在代码中引用该前缀来创建唯一的实验名称: sm_experiment_name: "fed-heart-disease"
。您可以将其更新为您选择的任何值。
例如,请参阅以下代码 heart_disease_trainer.py
,每个客户端都使用它在自己的数据集上训练模型:
对于每个客户端运行,使用 heart_disease_trainer.py 中的以下代码跟踪实验详细信息:
同样,您可以使用以下代码 heart_disease_aggregator.py
更新模型权重后对本地数据运行测试。每次与客户端进行通信后都会记录详细信息。
清理
当您完成解决方案后,请务必清理所使用的资源,以确保高效的资源利用和成本管理,并避免不必要的开支和资源浪费。主动清理环境,例如删除未使用的实例、停止不必要的服务以及删除临时数据,有助于构建干净且有组织的基础架构。您可以使用以下代码来清理您的资源:
总结
通过使用 Amazon EKS 作为基础设施和 FedML 作为 FL 的框架,我们能够提供一个可扩展的托管环境来训练和部署共享模型,同时尊重数据隐私。借助 FL 的去中心化性质,组织可以安全地协作、释放分布式数据的潜力并改进 ML 模型,而不会损害数据隐私。
一如既往,AWS 欢迎您提供反馈。请在评论部分留下您的想法和问题。
作者简介
兰迪·德福 是 AWS 的高级首席解决方案架构师。他拥有密歇根大学电子工程硕士学位,在那里从事自动驾驶汽车的计算机视觉研究。他还拥有科罗拉多州立大学的 MBA 学位。 Randy 在技术领域担任过多种职位,从软件工程到产品管理。他于 2013 年进入大数据领域,并继续探索该领域。他积极致力于 ML 领域的项目,并在包括 Strata 和 GlueCon 在内的众多会议上发表演讲。
阿纳布·辛哈 是 AWS 的高级解决方案架构师,担任现场首席技术官,帮助组织设计和构建可扩展的解决方案,支持数据中心迁移、数字化转型和应用程序现代化、大数据和机器学习方面的业务成果。他为多个行业的客户提供支持,包括能源、零售、制造、医疗保健和生命科学。 Arnab 拥有所有 AWS 认证,包括 ML 专业认证。在加入 AWS 之前,Arnab 是一名技术领导者,并曾担任架构师和工程领导职务。
普拉奇库卡尼 是 AWS 的高级解决方案架构师。她的专业是机器学习,她正在积极致力于使用各种 AWS ML、大数据和分析产品设计解决方案。 Prachi 拥有多个领域的经验,包括医疗保健、福利、零售和教育,并曾在产品工程和架构、管理和客户成功方面担任过多个职位。
塔梅尔·谢里夫 是 AWS 的首席解决方案架构师,在技术和企业咨询服务领域拥有多元化的背景,担任解决方案架构师已超过 17 年。 Tamer 专注于基础设施,其专业知识涵盖广泛的垂直行业,包括商业、医疗保健、汽车、公共部门、制造业、石油和天然气、媒体服务等。他的熟练程度扩展到各个领域,例如云架构、边缘计算、网络、存储、虚拟化、业务生产力和技术领导力。
汉斯·内斯比特 是位于南加州的 AWS 的高级解决方案架构师。他与美国西部的客户合作,打造高度可扩展、灵活且有弹性的云架构。在业余时间,他喜欢与家人共度时光、烹饪和弹吉他。
朝阳河 FedML, Inc. 的联合创始人兼首席技术官,这是一家初创公司,致力于在任何地方、任何规模构建开放和协作的人工智能社区。他的研究重点是分布式和联合机器学习算法、系统和应用程序。他在南加州大学获得计算机科学博士学位。
阿尔内瓦雷斯 是 FedML 的产品管理总监。在加入 FedML 之前,他曾担任 Google 的集团产品经理和 LinkedIn 的数据科学高级经理。他拥有多项数据产品相关专利,并在斯坦福大学学习工程学。
萨尔曼·阿维斯蒂尔 是 FedML 的联合创始人兼首席执行官。他曾担任南加州大学院长教授、南加州大学-亚马逊可信人工智能中心主任以及 Alexa AI 领域的亚马逊学者。他是联邦和去中心化机器学习、信息论、安全和隐私方面的专家。他是 IEEE 院士,并在加州大学伯克利分校获得了 EECS 博士学位。
萨米尔·拉德 是一位出色的 AWS 企业技术专家,与客户的 C 级管理人员密切合作。作为一名曾推动多家财富 100 强公司转型的前高管,Samir 分享了他的宝贵经验,以帮助客户在转型之旅中取得成功。
史蒂芬·克雷默 是 AWS 的董事会和最高层顾问以及前高管。斯蒂芬主张文化和领导力是成功的基础。他认为安全和创新是云转型的驱动力,可帮助实现高度竞争的数据驱动型组织。
- :具有
- :是
- :不是
- :在哪里
- $UP
- 10
- 100
- 14
- 154
- 17
- 20
- 2013
- 247
- 300
- 7
- a
- Able
- 关于
- 缺席
- 加快
- 加速
- ACCESS
- 访问数据
- 完成
- 账号管理
- 问责制
- 账户
- 精准的
- 准确
- 实现
- 横过
- 法案
- 演戏
- 要积极。
- 积极地
- 实际
- 适应
- 加
- 添加
- 增加
- 另外
- 地址
- 地址
- 解决
- 调整
- 采用
- 顾问
- 倡导者
- 后
- 聚合
- 聚合
- AI
- 目标
- AL
- Alexa的
- 算法
- 所有类型
- 允许
- 沿
- 还
- 尽管
- 时刻
- Amazon
- 亚马逊SageMaker
- 亚马逊网络服务
- an
- 分析
- 分析
- 分析
- 和
- 任何
- 分析数据
- 应用领域
- 应用领域
- 的途径
- 方法
- 架构
- 架构
- 保健
- 国家 / 地区
- AS
- 评估
- At
- 攻击
- 属性
- 澳柯
- 审计
- 自动化和干细胞工程
- 汽车
- 自主性
- 自主车辆
- 可使用
- 避免
- AWS
- 背景
- 基于
- BE
- 因为
- 成为
- 很
- before
- 开始
- 好处
- 伯克利
- 更好
- 大
- 大数据运用
- 蓝图
- 板
- 广阔
- 建立
- 建筑物
- 商业
- 但是
- by
- C-套房
- 加州
- CAN
- 能力
- 关心
- 案件
- 例
- Center
- 中央
- 集中
- CEO
- 证书
- 认证
- 挑战
- 挑战
- 选择
- 情况
- 分类
- 清洁
- 客户
- 客户
- 临床资料
- 密切
- 云端技术
- 联合创始人
- 码
- 合作
- 合作
- 共同
- 科罗拉多州
- 组合
- 注释
- 商业的
- 常用
- 沟通
- 社体的一部分
- 社区建设
- 公司
- 比较
- 对照
- 竞争的
- 完成
- 复杂
- 符合
- 组件
- 全面
- 折中
- 一台
- 计算机科学
- 计算机视觉
- 计算
- 关注
- 条件
- 进行
- 会议
- 配置
- 配置
- 一贯
- 由
- 咨询
- 包含
- 包含
- 内容
- 继续
- 连续
- 有助于
- 控制
- 控制
- 协调员
- 价格
- 成本管理
- 再加
- 盖
- 手艺
- 创建信息图
- 创建
- 创建
- 危急
- 关键
- 首席技术官
- 文化塑造
- 曲线
- 顾客
- 客户成功
- 合作伙伴
- 定制
- CXO
- data
- 数据中心
- 数据隐私
- 数据隐私与安全
- 数据科学
- 数据驱动
- 数据集
- 分散
- 决定
- 决策
- 声明
- 默认
- 人口统计学
- 部署
- 部署
- 部署
- 部署
- 描述
- 设计
- 设计
- 期望
- 摧毁
- 详情
- 开发
- 开发
- 发展
- 研发支持
- 设备
- 设备
- 图表
- 不同
- 不同
- 数字
- 数字化改造
- 副总经理
- 目录
- 疾病
- 分发
- 分布
- 分布式培训
- 不同
- 文件
- 域名
- 完成
- 下载
- 驾驶
- 驱动
- 驱动程序
- 每
- 生态系统
- 边缘
- 边缘计算
- 编辑
- 教育
- 有效
- 高效
- 新兴经济体的新市场。
- enable
- 使
- 使
- 加密
- 能源
- 工程师
- 提高
- 确保
- 保证
- 进入
- 企业
- 实体
- 条目
- 环境
- 环境中
- 时代
- 时代
- 特别
- 评估
- 评估
- 甚至
- 事件
- 例子
- 执行
- 管理人员
- 渗出
- 开支
- 体验
- 体验
- 实验
- 实验
- 技术专家
- 专门知识
- 探索
- 扩展
- 促进
- 功能有助于
- 家庭
- 联盟的
- 反馈
- 同伴
- 保真度
- 部分
- 文件
- 发现
- 柔软
- 专注焦点
- 重点
- 遵循
- 以下
- 针对
- 前
- 运气
- 发现
- Foundations
- 骨架
- 框架
- 止
- 充分
- 功能
- 进一步
- 天然气
- 其他咨询
- GitHub上
- 特定
- 谷歌
- 图形处理器
- 团队
- 保证
- 指南
- 有
- he
- 健康管理
- 健康险
- 医疗保健
- 胸襟
- 心脏疾病
- 严重
- 保持
- 帮助
- 帮助
- 这里
- 等级制度
- 高度
- 他的
- 持有
- 托管
- 但是
- HTML
- HTTPS
- i
- IEEE
- if
- 说明
- 实施
- 实施
- 重要
- 改善
- 改进
- in
- 公司
- 包含
- 增加
- 独立
- 个人
- 行业
- 行业中的应用:
- 信息
- 通知
- 基础设施
- 注入
- 創新
- 不安全
- 内
- 可行的洞见
- 保险
- 集成
- 集成
- 接口
- 互操作性
- 成
- 无价
- 孤立
- 问题
- IT
- 迭代
- 它的
- 加盟
- 旅程
- JPEG
- JPG
- 键
- 知识
- 已知
- 不足
- 语言
- 大
- 后来
- 领导者
- 领导团队
- 领导
- 学习用品
- 学习
- 离开
- 让
- 库
- 自学资料库
- 生活
- 生命科学
- 限制
- 本地
- 当地
- 圖書分館的位置
- 地点
- 日志
- 记录
- 离
- 机
- 机器学习
- 维护
- 使
- 制作
- 管理
- 管理
- 颠覆性技术
- 经理
- 方式
- 制造业
- 许多
- 可能..
- 机制
- 媒体
- 指标
- 密歇根州
- 分钟
- 减轻
- ML
- 多播
- 模型
- 造型
- 模型
- 模块
- 更多
- 最先进的
- 多
- 必须
- 姓名
- 名称
- 自然
- 导航
- 旅游导航
- 需求
- 打印车票
- 负
- 网络
- 工业网络
- 网络
- 全新
- 新
- 下页
- 节点
- 注意
- 众多
- of
- 提供
- 供品
- 优惠精选
- 经常
- 油
- 石油&天然气
- on
- 那些
- 仅由
- 打开
- 开放源码
- 操作
- 操作
- 机会
- or
- 组织
- 举办
- 我们的
- 输出
- 结果
- 概述
- 产量
- 超过
- 己
- 包
- 面包
- 范例
- 范式
- 参数
- 部分
- 通过
- 专利
- 病人
- 性能
- 个性化你的
- 博士学位
- 平面
- 平台
- 柏拉图
- 柏拉图数据智能
- 柏拉图数据
- 播放
- 请
- 热门
- 可移植性
- 构成
- 职位
- 帖子
- 潜力
- 预测
- 预测
- 先决条件
- 存在
- 呈现
- 以前
- 先前
- 校长
- 先
- 隐私
- 隐私和安全
- 私立
- 产品
- 产品管理
- 产品经理
- 生产
- 生产率
- 教授
- 级数
- 项目
- 项目
- 所有权
- 保护
- 协议
- 提供
- 提供
- 提供
- 优
- 国家
- 质量
- 有疑问吗?
- 范围
- 范围
- 排名
- 率
- 原
- 境界
- 收到
- 最近
- 了解
- 减少
- 参考
- 引用
- 反映
- 地区
- 监管
- 受管制行业
- 法规
- 依赖
- 删除
- 知识库
- 代表
- 要求
- 必须
- 岗位要求
- 研究
- 研究人员
- 弹性
- 资源
- 资源
- 关于
- 那些
- 导致
- 成果
- 零售
- 风险
- 健壮
- 角色
- 根
- 圆
- 运行
- 运行
- 运行
- sagemaker
- 萨勒曼
- 样品
- 可扩展性
- 鳞片
- 缩放
- 情景
- 学者
- 科学
- 科学
- 脚本
- 部分
- 部分
- 扇形
- 安全
- 安全
- 保安
- 看到
- 选择
- 提交
- 前辈
- 敏感
- 分开
- 服务器
- 服务器
- 特色服务
- 会议
- 设置
- 几个
- Share
- 共用的,
- 分享
- 共享
- 她
- 应该
- 作品
- 显著
- 筒仓
- 简
- 单
- 情况
- 尺寸
- 软件
- 软件工程
- 方案,
- 解决方案
- 来源
- 来源
- 南
- 太空
- 张力
- 其他
- 具体的
- 光谱
- 花费
- 标准化
- 斯坦福
- 斯坦福大学
- 开始
- 启动
- 州/领地
- 州
- 步
- 斯蒂芬·
- 步骤
- 仍
- 停车
- 存储
- 监督
- 强烈
- 研究
- 走向成功
- 成功
- 这样
- 套房
- SUPPORT
- 支持
- 支持
- 支持
- 肯定
- 产品
- 采取
- 文案
- 技术
- 技术专家
- 专业技术
- 模板
- 临时
- Terraform
- test
- 这
- 信息
- 其
- 然后
- 理论
- 因此
- 博曼
- Free Introduction
- 通过
- 次
- 至
- 工具
- 向
- 跟踪时
- 跟踪
- 传统
- 培训
- 熟练
- 产品培训
- 培训
- 转型
- 转换
- 触发
- 可靠
- 类型
- ui
- 最终
- 下
- 理解
- 独特
- 联合的
- 美国
- 大学
- 美国加州大学
- 不像
- 开锁
- 不必要
- 空前的
- 未使用
- 更新
- 更新
- us
- 使用
- 用例
- 用过的
- 用户友好
- 使用
- 运用
- 利用
- 验证
- 验证
- 折扣值
- 各种
- 各个
- 变化
- 车辆
- 垂直
- 查看
- 愿景
- 等待
- 是
- we
- 卷筒纸
- Web服务
- 您的网站
- 重量
- 欢迎光临
- 井
- 西式
- 这
- 而
- WHO
- 宽
- 广泛
- 将
- 中
- 也完全不需要
- 工作
- 工作
- 工人
- 加工
- 合作
- 工作站
- 年
- 完全
- 您一站式解决方案
- 和风网