掌桥专利:专业的专利平台
掌桥专利
首页

一种联邦迁移学习算法

文献发布时间:2024-04-18 19:54:45


一种联邦迁移学习算法

技术领域

本发明属于联邦迁移学习框架领域,更具体地说,尤其涉及一种联邦迁移学习算法。

背景技术

根据数据在组织之间的分布情况,可以划分为三种联邦模式:横向联邦学习,纵向联邦学习,联邦迁移学习。其中,联邦迁移学习相较于前两种是一种较新的联邦学习方案,适用于不同组织间持有的数据样本和特征重合都较少,但数据间蕴含某种知识关联的场景;

Liu Y.等人提出了一种联邦迁移学习框架,该框架针对两方联邦迁移学习的场景提供了基于同态加密和秘密共享的两种方案。其中,基于同态加密的方案在参与方双方都使用了同态加密技术来保证数据安全,这使得双方的运算都在同态加密下进行,速度较慢。并且,由于该方案使用的是半同态加密技术,不得不将运算中涉及的同态加密状态下的向量积运算转换为数乘运算,这种转换使得算法从原来需要计算和传输向量变为需要计算和传输该向量对应的中间结果矩阵,通信量和计算量很大。

发明内容

本发明的目的是为了解决现有技术中存在的缺点,将原学习框架中的双方采用同态加密保护数据隐私的方法改为一方采用同态加密,另一方采用加入噪声的方式来保护数据隐私,使得其中一方的运算可以在包含噪声的明文状态下进行,并且不再需要计算和传输同态加密状态下的中间结果矩阵,同时对训练过程中的一些计算项进行了优化,使得联邦迁移学习训练过程的计算量和通信量都有大幅下降,下降比例与维度d成正相关,使得联邦迁移学习的效率有大幅提升,带来的计算和通信效益远大于多建立两轮通信连接的影响,而提出的一种联邦迁移学习算法。

为实现上述目的,本发明提供如下技术方案:一种联邦迁移学习算法,包括A方和B方,所述A方的数据保护方式改为添加噪声,B方使用同态加密,需要计算的损失和偏导可采用如下公式表示:

/>

在(4-6)式中,所有的同态加密算子均由B的公钥产生,

其中,A可计算的与

B需要计算后发送给A的部分:

另外,中间变量的定义如下:

/>

优选的,包括如下步骤:

S1、B生成公私钥对,将公钥发给A;

S2、双方初始化网络;

S3、双方通过各自的网络进行映射Net(x

S4、对于每个i∈N

S5、B解密

S6、A收到

S7、B解密[[L]]、

S8、A对

S9、A使用L判断是否达到终止条件,若达到则终止训练,否则回到第3步开始下一轮迭代。

优选的,在一轮交互中,A、B双方分别可获得的明文状态下的信息如下:

A:

B:

A可由此构造方程:

其中,

优选的,B可构造的方程有:

其中,

优选的,由于每轮训练后双方更新各自的模型,导致每轮训练的

优选的,计算A与B之间的通信数据量:

A到B:

B到A:

总通信量为(2N

优选的,分析A方与B方的计算量:

A方:

a1、同态加法和数乘次数:

b1、加解密:

A方无加解密运算,需要对Φ

B方:

a2、同态加法和数乘次数:

B方自己持有私钥,所有运算均可在明文状态下进行;

b2、加解密:

首先需要对

解密

综上,B方在一轮训练中总共需要(N

本发明的技术效果和优点:本发明提供的一种联邦迁移学习算法,与现有技术相比,本发明将原学习框架中的双方采用同态加密保护数据隐私的方法改为一方采用同态加密,另一方采用加入噪声的方式来保护数据隐私,使得其中一方的运算可以在包含噪声的明文状态下进行,并且不再需要计算和传输同态加密状态下的中间结果矩阵,同时对训练过程中的一些计算项进行了优化,使得联邦迁移学习训练过程的计算量和通信量都有大幅下降,下降比例与维度d成正相关,使得联邦迁移学习的效率有大幅提升,带来的计算和通信效益远大于多建立两轮通信连接的影响。

附图说明

图1为本发明的流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合具体实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

两方参与联邦迁移学习,参与方A(guest)拥有源域数据集:

目的:双方协同训练,在保证双方数据隐私的前提下,使得参与方B可以利用A的源域数据集中的知识帮助B方在目标域上进行预测。

原联邦迁移学习框架:

A、B分别在本地生成神经网络模型Net

定义损失函数:

原框架采用经典的梯度下降法更新模型参数Θ

/>

L对于双方网络中每一层的偏导可由L对网络输出层的偏导乘以输出层对每一层的偏导得到,这部分工作可由参与方本地的pytorch、Tensorflow等框架来做,FATE

其中,需要由A方计算后发送给B方的有:

需要由B方计算后发给A方的有:

基于上述定义,[[·]]

原联邦迁移学习框架不包括如下步骤:

一、A、B双方进行样本对齐;

二、A、B双方各自初始化网络,生成公私钥对,互换公钥;

三、A、B双方各自在本地根据自己的网络和数据计算得到

四、A本地可计算的数据用B的公钥同态加密,利用

五、A、B分别将对方发过来的偏导进行解密,得到对方的偏导和mask的和,再分别发送给对方,即A收到

六、A、B分别去掉自己加的mask,得到自己模型的梯度,分别对自己本地模型进行反向传播更新参数;

七、A根据迭代次数或Loss值判断是否训练结束,若结束,向B发送终止信号,训练终止;若未结束,则本轮训练完成,返回第3步开始下一轮训练。

请参阅图1,本发明提供了一种联邦迁移学习算法,包括A方和B方,所述A方的数据保护方式改为添加噪声,B方使用同态加密,需要计算的损失和偏导可采用如下公式表示:

在(4-6)式中,所有的同态加密算子均由B的公钥产生,

其中,A可计算的与

B需要计算后发送给A的部分:

/>

另外,中间变量的定义如下:

包括如下步骤:

S1、B生成公私钥对,将公钥发给A;

S2、双方初始化网络;

S3、双方通过各自的网络进行映射Net(x

S4、对于每个i∈N

S5、B解密

S6、A收到

S7、B解密[[L]]、

S8、A对

S9、A使用L判断是否达到终止条件,若达到则终止训练,否则回到第3步开始下一轮迭代。

在一轮交互中,A、B双方分别可获得的明文状态下的信息如下:

A:

B:

A可由此构造方程:

其中,

B可构造的方程有:

/>

其中,

由于每轮训练后双方更新各自的模型,导致每轮训练的

计算A与B之间的通信数据量:

A到B:

B到A:

总通信量为(2N

分析A方与B方的计算量:

A方:

a1、同态加法和数乘次数:

b1、加解密:

A方无加解密运算,需要对Φ

B方:

a2、同态加法和数乘次数:

B方自己持有私钥,所有运算均可在明文状态下进行;

b2、加解密:

首先需要对

解密

综上,B方在一轮训练中总共需要(N

计算原联邦迁移学习框架A与B之间的通信数据量:

A到B:

B到A:

总通信量:N

在以下表示中,使用下标P表示同态加,M表示同态数乘,E表示加密运算,D表示解密运算。

分析原联邦迁移学习框中A方与B方的计算量:A方的同态加法和数乘次数:

A方的加密次数:

A方的解密次数:

B方的同态加法和数乘次数:

B方的加密次数:

B方的解密次数:

相较于原联邦迁移学习框架的学习效率与本方案的联邦迁移学习框架的学习效率,得到对比数据的汇总表如下所示:

通过对通信数据量和计算量的分析,以及考虑参与双方由于依赖关系互相等待的情况,计算在理论上一轮训练需要耗费的时间,其中,计算时间统一换算成相对于同态加法的时间,换算关系由python的phe.paillier模块实验得到:1E≈50P,1D≈15P,1M≈1.7P。单位数据的通信时间由下标c表示,updateNet表示更新本地网络需要的时间。

原联邦迁移学习框架与本方案的联邦迁移学习框架的一轮训练所需理论时间对比如下表:

综上所述,本发明将原学习框架中的双方采用同态加密保护数据隐私的方法改为一方采用同态加密,另一方采用加入噪声的方式来保护数据隐私,使得其中一方的运算可以在包含噪声的明文状态下进行,并且不再需要计算和传输同态加密状态下的中间结果矩阵,同时对训练过程中的一些计算项进行了优化,使得联邦迁移学习训练过程的计算量和通信量都有大幅下降,下降比例与维度d成正相关,使得联邦迁移学习的效率有大幅提升,带来的计算和通信效益远大于多建立两轮通信连接的影响。

最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术分类

06120116381230