FL
- 1 minFederated Learning
转载: [联邦学习 | Federated Learning - 常鸣坤的个人网站 (nijikadesu.github.io)](https://nijikadesu.github.io/blog/2024/05/28/federated-learning/) |
联邦学习由于能够在多方数据源聚合的场景下协同训练全局最优模型, 近年来迅速成为安全机器学习领域的研究热点.
为什么要联邦学习
机器学习面临的挑战: 1. 数据安全与隐私问题 2. 网络安全隔离和行业隐私
机器学习作为海量数据的分析处理技术, 其性能总是取决于算法能够接触到的样本量. 然而, 不同部门之间存在数据壁垒, 形成的数据孤岛难以安全共享, 而仅凭各部门独立训练的机器学习模型性能无法达到全局最优化.
联邦学习通过将机器学习的数据存储与模型训练阶段转移至本地用户, 仅与中心服务器交互模型更新参数的方式保障用户的数据隐私安全.
联邦学习是什么
本质: 分布式的机器学习技术
客户端在中心服务器的协调下共同训练模型。其中客户端负责训练本地数据得到本地模型(local model),中心服务器负责加权聚合本地模型得到全局模型(global model),经过多轮迭代后最终得到一个趋近于集中式机器学习结果中的模型。
One Epoch:
- 客户端从服务器下载全局模型𝑤𝑡−1
- 客户端k训练本地数据得到本地模型𝑤𝑡,𝑘 (第k各客户端第t轮通信的本地模型更新)
- 各方客户端上传本地模型到中心服务器
- 中心服务器接收各方数据后进行加权聚合操作,得到全局模型𝑤𝑡 (第t轮通信后的全局模型更新)
综上,联邦学习技术具有以下几个特点。
① 参与联邦学习的原始数据都保留在本地客户端,与中心服务器交互的只是模型更新信息。
② 联邦学习的参与方联合训练出的模型w将被各方共享。
③ 联邦学习最终的模型精度与集中式机器学习相似。
④ 联邦学习参与方的训练数据质量越高,全局模型精度越高。
算法原理
联邦学习分类
一个完整的数据集应由(ID, Y, X)构成,ID表示样本ID,Y表示数据集的标签信息,X表示数据集的特征信息。
根据参与训练客户端的数据集特征信息X的不同,联邦学习被分为横向联邦学习、纵向联邦学习和联邦迁移学习。
横向联邦学习
纵向联邦学习
(这个人话真的是可以看懂)
联邦迁移学习
威胁与挑战
通信效率短板明显
各客户端数据集的数据特征呈现非独立同分布, 而传统分布式框架算法在处理此类数据时存在训练难以收敛, 通信轮数过多的问题.
隐私安全存在缺陷
理想情况下,联邦学习中客户端通过训练源数据上传本地模型,服务器仅聚合和分发每轮迭代形成的全局模型,然而,在真实的网络环境中,模型反演攻击、成员推理攻击、模型推理攻击层出不穷,参与训练的客户端动机难以判断,中心服务器的可信程度难以保证,理想状态难以保证。
梯度信息会泄露用户的隐私数据,攻击者可以通过客户端上传的梯度信息间接推出标签信息和数据集的成员信息。
联邦学习存在的威胁:
- 恶意客户端修改模型更新,破坏全局模型拟合。
- 恶意分析者提取模型更新信息,反推隐私信息。
- 恶意服务器企图获得客户端元数据。
解决方案:
差分隐私、安全多方计算、同态加密等。(缺点未解决)
缺乏信任与激励机制
数据联盟需要吸引大量客户端参与到训练过程中,没有高效的激励机制很难吸引足够的训练数据,无法保证最终的智能模型质量;另外,联邦学习并没有针对客户端的信任机制,对于客户端的信誉没有统一的分数评价,这严重影响了对优质客户端的选择,从而导致全局模型精度降低。
技术进展
通信效率
1. 算法优化: 开发NIID与友好型训练算法, 减少传输数据大小, 加速收敛 2. 压缩: 压缩通信数据大小, 同时保证精度 3. 分散训练: 联邦学习框架分层分级, 降低中心服务器负担(和信任程度?)隐私安全
根据隐私保护细粒度的不同, 联邦学习的隐私安全被分为全局隐私和本地隐私
典型隐私保护技术: 差分隐私, 安全多方计算, 同态加密等技术
信任与激励机制
基于区块链的联邦学习方案,提供信任与激励机制。
联邦学习与区块链的结合使系统成为一个完善的闭环学习机制。一方面,联邦学习技术能够为具有隐私数据的参与方提供跨域安全共享方案;另一方面,区块链技术作为核心数据库为参与方提供了安全存储、信任管理、细粒度区分和激励回报等应用需求,促使拥有数据的用户积极参与到数据联邦中。