Fate原理(面试必备)

目录

零.基础

一.横向联邦学习

二.纵向联邦学习


零.基础

主要包含三个组成部分:

  • Guest:数据应用方。纵向联邦时是拥有标签的一方;
  • Host:数据提供方。纵向联邦中不含label的建模方;
  • Arbiter:协作者,中立第三方,作用是聚合多方模型;

加密方案:

  • Paillier Encryption 加法同态加密算法
  • Affine Homomorphic Encryption 仿射同态加密算法,加法同态
  • IterativeAffine Homomorphic Encryption 变换仿射同态加密算法,加法同态基于同态加密的逻辑回归使用的是Paillier加法同态。

详细的内容可查阅PaillierAffine Homomorphic Encryption。(了解同态性质即可继续阅读)

一.横向联邦学习

主要解决的问题是,用户数据特征维度相同,但各方所拥有的用户不同。(不太用,不太考)

 流程:

(0)各参与方使用本地数据进行一次本地训练;

(1)各参与方与协调方通讯,上传模型参数(Guest:明文;Host:同态加密);

(2)协调方Arbiter聚合各方模型,对于HomoLR,做加权平均;

(3)各方获取更新的模型(Guest:明文;Host:同态加密);

(4)重复0~3,直到损失函数收敛或者达到迭代次数上限或者训练时间;

注意:

协调方是含有私钥的所以存在隐私威胁,必须假定他是半诚实的,但后期增加了随机数,这些随机数相加可以抵消,从而保护了host的数据。

二.纵向联邦学习

主要解决数据提供方用户相同,但是用户的特征维度不同。(重点!)

(1)Host(UA)算出它所拥有数据的单边w1 * x,记为ua;并把ua进行同态加密然后发给Guest(UB);

(2)Guest(UB)根据自己的数据计算单边w2 * x,记为ub;则两方数据总wx=ua+ub;把总wx代入(0.25 * wx - 0.5 * y)即可求得总d;Guest(UB)把d同态机密后返回给Host(UA);

===>> 至此,Host和Guest都拥有了:求解梯度公式中的d,且d是同态加密的;

(3)Host和Guest分别求出各自的单边梯度∑d*x,即ga和gb,并发给Arbiter;注:ga和gb也是同态加密的;

(4)Arbiter根据获得的ga和gb,使用加密私钥解密后,就可以求得真正的梯度g;然后切分后把相应的部分明文返回给guest和host;guest和host就可以拿着获得的梯度更新本地模型了;

注意:每个参与方只会拥有与自己特征相关的模型参数乘;对于横向联邦,数据应用方(Guest)能拿到完整模型,所以可以单独完成预测;但对于纵向联邦,数据应用方(Guest)只能拿到部分模型,所以需要与数据提供方(Host)一起联合预测。

参考:FATE横向联邦解析FATE纵向联邦解析

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值