百科问答小站 logo
百科问答小站 font logo



联邦学习是否有必要学习密码学知识? 第1页

  

user avatar   duan_bing 网友的相关建议: 
      

先要了解联邦学习解决的问题域。从wiki(参考1)可以看到,简而言之,实现无需数据交换(只需参数交换)实现跨域数据上的机器学习联合建模, 可以被认为是保护隐私的分布式协作机器学习。

图片来自wiki(参考1)。

同时重点指出了需要保证计算过程中保护本地数据的隐私(保证原始数据不出域,符合GDPR等保护条例),以及节点之间数据的安全互访。因此你可以看到,引入密码学相关的知识是必不可少的。

同样,你看看现有很多关于联邦学习的产品,包括百度的MesaTEE(参考2)、PaddleFL以及腾讯的FedAI、蚂蚁摩斯等,都有不同的实现。

我总结联邦学习过程中主要有以下流派:

  1. 半同态流派: 例如微众FATE,字节fedlearner;
  2. MPC流派: 百度BFC, PaddleFL[6], 阿里摩斯等
  3. TEE流派: 百度mesatee等

涉及到的隐私计算技术包括:

  1. TEE 可信计算环境: 基于硬件可信基(TCB) ,以及内存安全访问机制,提供安全系统API,通过远程认证完成跨安全容器访问;常见有intel sgx等。
  2. MPC 多方安全计算: 针对无可信第三方的且保护输入数据隐私的情况下完成联合计算,包含加密电路、不经意传输以及秘钥共享等多种协议以及相互之间组合实现;特别是最近借助batched OT在解决psi问题,效率极大的提升。
  3. 同态加密: 密文计算的输出解密等于其对应明文计算; 例如基于rsa盲签名实现psi等。
  4. DP 差分隐私: 保留统计学特征的前提下去除个体特征以保护用户隐私

实际应用中主要在样本和特征对齐、emb以及梯度等中间结果传递涉及到数据安全保护。

以上基本上都属于或者包含比较现代的密码学应用知识。 学习他们之前,最基本的密码学知识,包括对称密码体系、公钥密码体系(RSA,ECC等),以及哈希散列、数字签名、身份认证等,推荐书籍可以参考zhihu.com/question/2039 这个问题的高赞回答,另外b站也有不少课程可以去看。

对于TEE,参考2有比较详细的介绍。

对于MPC,建议去看MP-SPDZ(参考3)、PSI(参考5)以及相关的论文,里面也提到了对机器学习相关激活函数优化器的封装。

参考4 是WeBank的FATE相关的资料,里面介绍非常体系。

参考:

  1. en.wikipedia.org/wiki/F
  2. anquan.baidu.com/produc & https://github.com/apache/incubator-teaclave & github.com/apache/incub;
  3. github.com/data61/MP-SP
  4. aisp-1251170195.cos.ap-hongkong.myqcloud.com
  5. github.com/encryptogrou
  6. github.com/PaddlePaddle

user avatar   chaoyanghe 网友的相关建议: 
      

这个问题很好。很多同学和朋友不知道从何入手。我特此分享一下我的学习曲线:
我大概是2017年接触到这样一个概念,当时在公司有与外部企业联合学习的需求,比如公司有用户画像,而外部公司可能会有用户的金融特征,这时候就需要学习特征分割的机器学习如何训练,当时还不叫Vertical Federated Learning,所以我补了一些机器学习中Optimizer的论文,所以偏优化的入门角度。当时更重视分布式系统的研发,所以同时也偏向系统的入门角度,当然会考虑到加密算法。从公司离开后,现在我也开始做FL相关的科研,我觉得入门FL还是要先从机器学习算法入手,特别是几篇经典的FedAvg, FedOpt等算法,理解算法的挑战比较重要。算法之后我觉得应该多学一些模型,比如CV/NLP/DM领域的重要模型分别是CNN, Transformer, GCN,掌握这些算法和模型才有可能解决现实场景下的机器学习问题。基于这个基础再去学习分布式系统、安全/隐私角度的问题会更容易理解。我不赞成以黑盒的方式看待算法和模型,否则很难做好分布式和安全/隐私。

我这样讲可能有点不是很清晰,大家可以看看我在FedML开源框架第一期视频中分享的文章分类,可以帮助你快速定位到你想研究的问题。同时FedML也非常适合你入门,希望你可以试用并给我们反馈。

FedML联邦机器学习框架正式开源!

Federated Learning 联邦学习是机器学习领域中快速发展的研究领域。尽管已经进行了大量的研究工作,但是现有的软件框架不能充分支持多样化的算法开发(例如,多样化的拓扑和灵活的消息交换),并且实验中不一致的数据集和模型使用使公平的比较变得困难。近日,美国南加州大学USC联合MIT、Stanford、MSU、UW-Madison、UIUC以及腾讯、微众银行等众多高校与公司联合发布了FedML联邦学习开源框架。 FedML是一个开放的研究库和基准,可促进新的联合学习算法的开发和公平的性能比较。 FedML支持三种计算范例:分布式训练,移动设备训练和独立仿真,以便用户在不同的系统环境中进行实验。 FedML还通过灵活且通用的API设计和参考基准实现促进了各种算法研究。针对非I.I.D设置的精选且全面的基准数据集旨在进行公平的比较。相信FedML可以为联合学习研究社区提供开发和评估算法的有效且可重复的手段。

FedML团队欢迎研究人员或工程师使用FedML库,并随时反馈不恰当的设计。更多信息大家可以查阅以下资料:
FedML Homepage: https://fedml.ai
FedML White Paper: arxiv.org/abs/2007.1351
FedML GitHub: github.com/FedML-AI/Fed
FedML Video Tutorial: bilibili.com/video/BV1j (B站)

FedML由一群对联合学习研究充满热情的研究人员和专家工程师维护。今年,FedML的作者在机器学习顶会NeurIPS 2020上发表了7篇论文(https://github.com/FedML-AI/FedML/blob/master/publications.md) 足见其学术水准。

该项目的Technical Lead何朝阳目前在美国南加州大学攻读博士学位,主攻机器学习算法与模型方向,之前他在业界有丰富的分布式系统与移动研发研发经验,目前他的学术指导老师包括毕业于UC Bekerley现就职于USC的Salman Avestimehr教授,以及来自于香港港科大学的张潼教授。

另外,FedML团队也正在招募开源志愿者,也邀请研究人员加入该开源项目。学生或研究人员不仅可以在机器学习算法和模型的开发中获得经验,而且可以发现新的研究思路。如果您想讨论潜在的开源贡献或研究合作,请发送电子邮件至chaoyang.he@usc.edu

最后提供一个视频给你,希望对你有所帮助!




  

相关话题

  区块链技术是什么?未来可能用于哪些方面? 
  人工智能会统治人类吗? 
  大四年级,完全没接触过高数,目前对机器学习产生浓厚兴趣,该如何学习数学? 
  为什么熵值最大的分布状态是正态分布而不是均匀分布? 
  在未来,人造子宫+社会化抚养能否真正实现? 
  如何理解Inductive bias? 
  《模仿游戏》中艾伦·图灵是如何破译英格玛的? 
  AlphaGo 和人类棋手比起来谁消耗的资源更多? 
  人类在过去两百年中积累起来的技术红利,是否已经耗尽?技术范式是否将进入几百年的停滞期? 
  如何以「一觉醒来,我变成了一台人工智能机器」为开头写一个故事? 

前一个讨论
如何评价《王者荣耀》最新绝悟挑战的难度?
下一个讨论
所有从事科研的博士生和硕士生们,你们觉得你们现在研究的问题有意义吗?还是只是为了获得学历?





© 2024-12-22 - tinynew.org. All Rights Reserved.
© 2024-12-22 - tinynew.org. 保留所有权利