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

一种基于GAN的多模态重构攻击的防御方法

文献发布时间:2024-04-18 20:00:25


一种基于GAN的多模态重构攻击的防御方法

技术领域

本发明属于人工智能安全技术领域,具体涉及一种基于GAN的多模态重构攻击的防御方法。

背景技术

联邦学习(Federated Learning)是一种分布式机器学习框架,用于进行多客户协作式模型训练。联邦学习允许客户将其敏感数据保存在本地设备上,并且只与中央服务器共享超参数信息,进而保护训练数据隐私。

近些年来研究表明,即便客户端共享到中央服务器的是训练信息,也可能会受到超参数泄漏攻击,并侵犯客户端训练数据的隐私。重构攻击会导致联邦学习的正常参与方本地隐私数据被窃取,包括采用生成对抗网络(GAN)的重构攻击、采用变分自动编码(VAE)的重构攻击等。其中生成对抗网络被广泛应用于生成具有与训练集相同统计特征的新数据,是目前最广泛有效的攻击方式。其核心是通过生成器和鉴别器的博弈迭代,不断学习数据分布特征,最终完成隐私数据重构。目前国内外重构攻击针对的都是单一模态数据集,而在实际的联邦学习场景中,各个参与方的本地训练数据可能包含多种模态,现有技术因而具有局限性。此外,现有技术在一系列假设前提下探讨攻击和防御,这也与实际生产环境存在差异,不足以方便快捷的应用到实际中。

发明内容

本发明要解决的问题是加强对联邦学习过程中GAN的多模态重构攻击的特征数据安全性,提出一种基于GAN的多模态重构攻击的防御方法。

为实现上述目的,本发明通过以下技术方案实现:

一种基于GAN的多模态重构攻击的防御方法,包括如下步骤:

S1.攻击方获取其他参与方参与联邦学习训练过程中的梯度信息;

S2.攻击方根据步骤S1得到的其他参与方参与联邦学习训练过程中的梯度信息进行数据重构攻击;

S3.基于步骤S2的数据重构攻击方法,构建抵御数据重构攻击的防御方法,包括在联邦学习的每轮训练开始前,中央服务器随机选择不定数量的参与方参与本次训练,并将当前全局模型参数发送给被选中的每一个参与方;对于中央服务器发送至其他参与方参与联邦学习训练过程中的梯度信息数据,通过梯度压缩和稀疏化的方式进行防御;对于中央服务器发送至其他参与方参与联邦学习训练过程中的梯度信息数据传输过程中采用加密传输协议。

进一步的,步骤S1的具体实现方法包括如下步骤:

S1.1.设置参与联邦学习深度神经网络模型训练过程的第i个正常参与方host

S1.2.设置参与方初始的权重信息w

设置攻击方表明上传给中央服务器的本地训练数据足够大,表达式为:

结合公式(1)、公式(2),得到参与方第一轮的权重信息的计算表达式为:

其中,η为超参数;

S1.3.中央服务器将步骤S1.2得到的w

根据得到的超参数,攻击方虚假上传n

S1.4.自第三轮开始,攻击方基于步骤是1.3得到第二轮中央服务器通过联邦平均算法计算发放的w

S1.5.重复步骤S1.3-S1.4,得到全部正常参与方第t轮梯度信息的计算表达式为:

从而攻击方实现获取自第二轮到完成整个联邦学习训练迭代关于全部正常参与方的所有梯度信息。

进一步的,步骤S2的具体实现方法包括如下步骤:

S2.1.将参与联邦学习的训练数据按模态特征划分为三类,包括视频、文本和图像,攻击方基于模态特征在本地构造生成对抗网络GAN模型,包括两个神经网络,一个神经网络作为生成器Generator,另一个神经网络作为鉴别器Discriminator,然后生成器将初始化数据进行处理,得到具有概率表示的初始化虚拟标签数据(x'

S2.2.攻击方将初始化的初始化虚拟标签数据输入到联邦学习深度神经网络模型中,得到初始化虚拟标签数据的权重信息w'

S2.3.鉴别器采用均方误差并基于余弦相似度构造损失函数,计算度量梯度差距信息D,计算表达式为:

其中,x为真实训练数据,x

S2.4.求解度量梯度差距信息关于虚拟标签数据x'和样本标签y的梯度,并更新x'

其中,x'

进一步的,步骤S2.1中当训练数据为图像时,生成器初始化具有与真实分辨率相同分辨率的虚拟图像,并初始化具有概率表示的虚拟标签(x'

进一步的,步骤S2.1中当训练数据为文本时,定义已知真实文本信息比例,生成器使用BERT模型结构,BERT的主要预训练任务包括MLM和NSP,分别用于学习文本中单词的上下文语义和文本中句子之间的关系,根据文本序列中的已知单词有效预测缺失单词,进行语句重构,生成器初始时,随机将已知文本序列中的单词按一定比例替换为MASK标记,并将整个离散的文本序列进行预处理,转化为连续的向量表示(x'

进一步的,步骤S2.1中当训练数据为视频时,通过分离视频中的画面信息和音频信息,得到带有时间戳的帧序列,音频信息主要关注其中的对话部分,通过语音识别的相关神经网络,得到带有时间戳的文本,进而转化为图像和文本两种情形。

进一步的,步骤S3中的中央服务器随机选择不定数量的参与方参与本次训练的具实现方法为:

在每轮训练开始前,中央服务器随机选择不定数量的参与方参与本次训练,并将当前全局的模型参数发送给被选中的每一个参与方,计算表达式为:

其中,w

由于采用随机选择策略,且每次选择参与方的数量不同,攻击方无法根据公式(13)推知参与方数量,针对攻击方被选中参与的第j+1次全局训练参数信息w

然后得到:

攻击方表明上传给中央服务器的本地训练数据足够大,基于公式(2)和公式(15),得到以下计算表达式:

为此,在第一次训练前,中央服务器通过检查记录每个参与方实际拥有的训练数据量,以确保不会有恶意方后续训练中谎称数据量很大发生;

当中央服务器检查到存在某一参与方训练数据量足够大时,通过将其拆分为较小数据量的多参与方,使得无法通过公式(2)得到参与方的权重信息。

进一步的,步骤S3中的对于中央服务器发送至其他参与方参与联邦学习训练过程中的梯度信息数据,通过梯度压缩和稀疏化的方式进行防御为中央服务器完成参数计算后,将其中较小的梯度权重信息直接修剪为0,对于未被修剪的权重信息,设定一个阈值来判断权重的重要程度,筛选出其中最重要的k%个权重发送给参与方,k为设定值,剩余的权重信息保留在中央服务器中不断累积,直到达到阈值再发送给参与方。

进一步的,步骤S3中对于中央服务器发送至其他参与方参与联邦学习训练过程中的梯度信息数据传输过程中采用加密传输协议为选择AES对传输数据进行加密,并使用RSA对AES中使用的密钥进行加密,整个网络通信过程采用HTTPS协议,包括如下步骤:

S3.1.中央服务器为每一个参与方生成对应的RSA密钥对,其中公钥保存在参与方,私钥保存在中央服务器;

S3.2.每个参与方在本地生成各自的AES密钥,并保存AES密钥;

S3.3.参与方用AES密钥对请求传输数据进行加密;

S3.4.参与方使用RSA公钥对AES密钥进行加密,并将加密后的值放到自定义的请求头中;

S3.5.参与方向中央服务器发起请求;

S3.6.中央服务器拿到自定义的请求头后使用RSA私钥进行解密,获取AES密钥;

S3.7.中央服务器使用各AES密钥对各参与方的上传数据进行解密;

S3.8.中央服务器将联邦平均得到的各参数信息使用对应的AES密钥加密;

S3.9.中央服务器将加密后的各参数信息发送给对应参与方;

S3.10.参与方拿到中央服务器发放的加密数据,并使用之前保存的AES密钥解密,获取本轮下发的训练参数。

本发明的有益效果:

本发明所述的一种基于GAN的多模态重构攻击的防御方法,打破重构攻击的局限性,从对图像数据的攻击扩展至离散的文本数据以及音视频更复杂的数据维度情况,将目前所提出的单一模态的重构攻击方式进行改进,提出了基于生成对抗网络(GAN)模型的多模态攻击框架,这种新型的攻击框架将进一步加强对联邦学习过程中梯度信息包含的特征数据安全的研究。

本发明所述的一种基于GAN的多模态重构攻击的防御方法,提出了针对重构攻击的多种防御方式,从而在实际应用场景中,有效提高联邦学习的隐私保护水平,具有现实意义和良好的应用前景。

附图说明

图1为本发明所述的一种基于GAN的多模态重构攻击的防御方法的流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施方式,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅用以解释本发明,并不用于限定本发明,即所描述的具体实施方式仅仅是本发明一部分实施方式,而不是全部的具体实施方式。通常在此处附图中描述和展示的本发明具体实施方式的组件可以以各种不同的配置来布置和设计,本发明还可以具有其他实施方式。

因此,以下对在附图中提供的本发明的具体实施方式的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定具体实施方式。基于本发明的具体实施方式,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他具体实施方式,都属于本发明保护的范围。

为能进一步了解本发明的发明内容、特点及功效,兹例举以下具体实施方式,并配合附图1详细说明如下:

具体实施方式一

一种基于GAN的多模态重构攻击的防御方法,包括如下步骤:

S1.攻击方获取其他参与方参与联邦学习训练过程中的梯度信息;

进一步的,步骤S1的具体实现方法包括如下步骤:

S1.1.设置参与联邦学习深度神经网络模型训练过程的第i个正常参与方host

S1.2.设置参与方初始的权重信息w

设置攻击方表明上传给中央服务器的本地训练数据足够大,表达式为:

结合公式(1)、公式(2),得到参与方第一轮的权重信息的计算表达式为:

其中,η为超参数;

S1.3.中央服务器将步骤S1.2得到的w

根据得到的超参数,攻击方虚假上传n

S1.4.自第三轮开始,攻击方基于步骤是1.3得到第二轮中央服务器通过联邦平均算法计算发放的w

S1.5.重复步骤S1.3-S1.4,得到全部正常参与方第t轮梯度信息的计算表达式为:

从而攻击方实现获取自第二轮到完成整个联邦学习训练迭代关于全部正常参与方的所有梯度信息;

S2.攻击方根据步骤S1得到的其他参与方参与联邦学习训练过程中的梯度信息进行数据重构攻击;

进一步的,步骤S2的具体实现方法包括如下步骤:

S2.1.将参与联邦学习的训练数据按模态特征划分为三类,包括视频、文本和图像,攻击方基于模态特征在本地构造生成对抗网络GAN模型,包括两个神经网络,一个神经网络作为生成器Generator,另一个神经网络作为鉴别器Discriminator,然后生成器将初始化数据进行处理,得到具有概率表示的初始化虚拟标签数据(x'

进一步的,步骤S2.1中当训练数据为图像时,生成器初始化具有与真实分辨率相同分辨率的虚拟图像,并初始化具有概率表示的虚拟标签(x'

进一步的,步骤S2.1中当训练数据为文本时,定义已知真实文本信息比例,生成器使用BERT模型结构,BERT的主要预训练任务包括MLM和NSP,分别用于学习文本中单词的上下文语义和文本中句子之间的关系,根据文本序列中的已知单词有效预测缺失单词,进行语句重构,生成器初始时,随机将已知文本序列中的单词按一定比例替换为MASK标记,并将整个离散的文本序列进行预处理,转化为连续的向量表示(x'

进一步的,训练数据是文本时,假定知道一定比例的真实文本信息,例如知道一段文本序列中85%的单词,剩下的15%单词需要攻击方重构。生成器使用BERT模型结构,其功能是在给定前t个字典中单词的情况下,估计第t+1个单词的概率分布P(x

进一步的,步骤S2.1中当训练数据为视频时,通过分离视频中的画面信息和音频信息,得到带有时间戳的帧序列,音频信息主要关注其中的对话部分,通过语音识别的相关神经网络,得到带有时间戳的文本,进而转化为图像和文本两种情形;

S2.2.攻击方将初始化的初始化虚拟标签数据输入到联邦学习深度神经网络模型中,得到初始化虚拟标签数据的权重信息w'

S2.3.鉴别器采用均方误差并基于余弦相似度构造损失函数,计算度量梯度差距信息D,计算表达式为:

其中,x为真实训练数据,x

S2.4.求解度量梯度差距信息关于虚拟标签数据x'和样本标签y的梯度,并更新x'

其中,x'

S3.基于步骤S2的数据重构攻击方法,构建抵御数据重构攻击的防御方法,包括在联邦学习的每轮训练开始前,中央服务器随机选择不定数量的参与方参与本次训练,并将当前全局模型参数发送给被选中的每一个参与方。

进一步的,步骤S3中的中央服务器随机选择不定数量的参与方参与本次训练的具实现方法为:

在每轮训练开始前,中央服务器随机选择不定数量的参与方参与本次训练,并将当前全局的模型参数发送给被选中的每一个参与方,计算表达式为:

其中,w

由于采用随机选择策略,且每次选择参与方的数量不同,攻击方无法根据公式(13)推知参与方数量,针对攻击方被选中参与的第j+1次全局训练参数信息w

然后得到:

攻击方表明上传给中央服务器的本地训练数据足够大,基于公式(2)和公式(15),得到以下计算表达式:

为此,在第一次训练前,中央服务器通过检查记录每个参与方实际拥有的训练数据量,以确保不会有恶意方后续训练中谎称数据量很大发生;

当中央服务器检查到存在某一参与方训练数据量足够大时,通过将其拆分为较小数据量的多参与方,使得无法通过公式(2)得到参与方的权重信息。

具体实施方式二

一种基于GAN的多模态重构攻击的防御方法,包括如下步骤:

S1.攻击方获取其他参与方参与联邦学习训练过程中的梯度信息;

进一步的,步骤S1的具体实现方法包括如下步骤:

S1.1.设置参与联邦学习深度神经网络模型训练过程的第i个正常参与方host

S1.2.设置参与方初始的权重信息w

设置攻击方表明上传给中央服务器的本地训练数据足够大,表达式为:

结合公式(1)、公式(2),得到参与方第一轮的权重信息的计算表达式为:

其中,η为超参数;

S1.3.中央服务器将步骤S1.2得到的w

根据得到的超参数,攻击方虚假上传n

S1.4.自第三轮开始,攻击方基于步骤是1.3得到第二轮中央服务器通过联邦平均算法计算发放的w

S1.5.重复步骤S1.3-S1.4,得到全部正常参与方第t轮梯度信息的计算表达式为:

从而攻击方实现获取自第二轮到完成整个联邦学习训练迭代关于全部正常参与方的所有梯度信息;

S2.攻击方根据步骤S1得到的其他参与方参与联邦学习训练过程中的梯度信息进行数据重构攻击;

进一步的,步骤S2的具体实现方法包括如下步骤:

S2.1.将参与联邦学习的训练数据按模态特征划分为三类,包括视频、文本和图像,攻击方基于模态特征在本地构造生成对抗网络GAN模型,包括两个神经网络,一个神经网络作为生成器Generator,另一个神经网络作为鉴别器Discriminator,然后生成器将初始化数据进行处理,得到具有概率表示的初始化虚拟标签数据(x'

进一步的,步骤S2.1中当训练数据为图像时,生成器初始化具有与真实分辨率相同分辨率的虚拟图像,并初始化具有概率表示的虚拟标签(x'

进一步的,步骤S2.1中当训练数据为文本时,定义已知真实文本信息比例,生成器使用BERT模型结构,BERT的主要预训练任务包括MLM和NSP,分别用于学习文本中单词的上下文语义和文本中句子之间的关系,根据文本序列中的已知单词有效预测缺失单词,进行语句重构,生成器初始时,随机将已知文本序列中的单词按一定比例替换为MASK标记,并将整个离散的文本序列进行预处理,转化为连续的向量表示(x'

进一步的,训练数据是文本时,假定知道一定比例的真实文本信息,例如知道一段文本序列中85%的单词,剩下的15%单词需要攻击方重构。生成器使用BERT模型结构,其功能是在给定前t个字典中单词的情况下,估计第t+1个单词的概率分布P(x

进一步的,步骤S2.1中当训练数据为视频时,通过分离视频中的画面信息和音频信息,得到带有时间戳的帧序列,音频信息主要关注其中的对话部分,通过语音识别的相关神经网络,得到带有时间戳的文本,进而转化为图像和文本两种情形;

S2.2.攻击方将初始化的初始化虚拟标签数据输入到联邦学习深度神经网络模型中,得到初始化虚拟标签数据的权重信息w'

S2.3.鉴别器采用均方误差并基于余弦相似度构造损失函数,计算度量梯度差距信息D,计算表达式为:

其中,x为真实训练数据,x

S2.4.求解度量梯度差距信息关于虚拟标签数据x'和样本标签y的梯度,并更新x'

其中,x'

S3.基于步骤S2的数据重构攻击方法,构建抵御数据重构攻击的防御方法,对于中央服务器发送至其他参与方参与联邦学习训练过程中的梯度信息数据,通过梯度压缩和稀疏化的方式进行防御。

进一步的,步骤S3中的对于中央服务器发送至其他参与方参与联邦学习训练过程中的梯度信息数据,通过梯度压缩和稀疏化的方式进行防御为中央服务器完成参数计算后,将其中较小的梯度权重信息直接修剪为0,对于未被修剪的权重信息,设定一个阈值来判断权重的重要程度,筛选出其中最重要的k%个权重发送给参与方,k为设定值,剩余的权重信息保留在中央服务器中不断累积,直到达到阈值再发送给参与方。

具体实施方式三

一种基于GAN的多模态重构攻击的防御方法,包括如下步骤:

S1.攻击方获取其他参与方参与联邦学习训练过程中的梯度信息;

进一步的,步骤S1的具体实现方法包括如下步骤:

S1.1.设置参与联邦学习深度神经网络模型训练过程的第i个正常参与方host

S1.2.设置参与方初始的权重信息w

设置攻击方表明上传给中央服务器的本地训练数据足够大,表达式为:

结合公式(1)、公式(2),得到参与方第一轮的权重信息的计算表达式为:

其中,η为超参数;

S1.3.中央服务器将步骤S1.2得到的w

根据得到的超参数,攻击方虚假上传n

S1.4.自第三轮开始,攻击方基于步骤是1.3得到第二轮中央服务器通过联邦平均算法计算发放的w

S1.5.重复步骤S1.3-S1.4,得到全部正常参与方第t轮梯度信息的计算表达式为:

从而攻击方实现获取自第二轮到完成整个联邦学习训练迭代关于全部正常参与方的所有梯度信息;

S2.攻击方根据步骤S1得到的其他参与方参与联邦学习训练过程中的梯度信息进行数据重构攻击;

进一步的,步骤S2的具体实现方法包括如下步骤:

S2.1.将参与联邦学习的训练数据按模态特征划分为三类,包括视频、文本和图像,攻击方基于模态特征在本地构造生成对抗网络GAN模型,包括两个神经网络,一个神经网络作为生成器Generator,另一个神经网络作为鉴别器Discriminator,然后生成器将初始化数据进行处理,得到具有概率表示的初始化虚拟标签数据(x'

进一步的,步骤S2.1中当训练数据为图像时,生成器初始化具有与真实分辨率相同分辨率的虚拟图像,并初始化具有概率表示的虚拟标签(x'

进一步的,步骤S2.1中当训练数据为文本时,定义已知真实文本信息比例,生成器使用BERT模型结构,BERT的主要预训练任务包括MLM和NSP,分别用于学习文本中单词的上下文语义和文本中句子之间的关系,根据文本序列中的已知单词有效预测缺失单词,进行语句重构,生成器初始时,随机将已知文本序列中的单词按一定比例替换为MASK标记,并将整个离散的文本序列进行预处理,转化为连续的向量表示(x'

进一步的,训练数据是文本时,假定知道一定比例的真实文本信息,例如知道一段文本序列中85%的单词,剩下的15%单词需要攻击方重构。生成器使用BERT模型结构,其功能是在给定前t个字典中单词的情况下,估计第t+1个单词的概率分布P(x

进一步的,步骤S2.1中当训练数据为视频时,通过分离视频中的画面信息和音频信息,得到带有时间戳的帧序列,音频信息主要关注其中的对话部分,通过语音识别的相关神经网络,得到带有时间戳的文本,进而转化为图像和文本两种情形;

S2.2.攻击方将初始化的初始化虚拟标签数据输入到联邦学习深度神经网络模型中,得到初始化虚拟标签数据的权重信息w'

S2.3.鉴别器采用均方误差并基于余弦相似度构造损失函数,计算度量梯度差距信息D,计算表达式为:

/>

其中,x为真实训练数据,x

S2.4.求解度量梯度差距信息关于虚拟标签数据x'和样本标签y的梯度,并更新x'

其中,x'

S3.基于步骤S2的数据重构攻击方法,构建抵御数据重构攻击的防御方法,对于中央服务器发送至其他参与方参与联邦学习训练过程中的梯度信息数据传输过程中采用加密传输协议。

进一步的,步骤S3中对于中央服务器发送至其他参与方参与联邦学习训练过程中的梯度信息数据传输过程中采用加密传输协议为选择AES对传输数据进行加密,并使用RSA对AES中使用的密钥进行加密,整个网络通信过程采用HTTPS协议,包括如下步骤:

S3.1.中央服务器为每一个参与方生成对应的RSA密钥对,其中公钥保存在参与方,私钥保存在中央服务器;

S3.2.每个参与方在本地生成各自的AES密钥,并保存AES密钥;

S3.3.参与方用AES密钥对请求传输数据进行加密;

S3.4.参与方使用RSA公钥对AES密钥进行加密,并将加密后的值放到自定义的请求头中;

S3.5.参与方向中央服务器发起请求;

S3.6.中央服务器拿到自定义的请求头后使用RSA私钥进行解密,获取AES密钥;

S3.7.中央服务器使用各AES密钥对各参与方的上传数据进行解密;

S3.8.中央服务器将联邦平均得到的各参数信息使用对应的AES密钥加密;

S3.9.中央服务器将加密后的各参数信息发送给对应参与方;

S3.10.参与方拿到中央服务器发放的加密数据,并使用之前保存的AES密钥解密,获取本轮下发的训练参数。

需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

虽然在上文中已经参考具体实施方式对本申请进行了描述,然而在不脱离本申请的范围的情况下,可以对其进行各种改进并且可以用等效物替换其中的部件。尤其是,只要不存在结构冲突,本申请所披露的具体实施方式中的各项特征均可通过任意方式相互结合起来使用,在本说明书中未对这些组合的情况进行穷举性的描述仅仅是出于省略篇幅和节约资源的考虑。因此,本申请并不局限于文中公开的特定具体实施方式,而是包括落入权利要求的范围内的所有技术方案。

技术分类

06120116526764