一种基于模型水印的深度学习模型中毒防御方法

文档序号:26579898发布日期:2021-09-08 03:11阅读:371来源:国知局
一种基于模型水印的深度学习模型中毒防御方法

1.本发明涉及深度学习安全领域,特别涉及一种基于模型水印的深度学习模型中毒防御方法。


背景技术:

2.随着人工智能技术的不断发展,深度学习的研究成果在自然语言处理、图像识别、工业控制、信号处理、安全等领域得到广泛应用。但是深度学习若在自动驾驶、军事作战、舆论战等安全领域的数据或算法存在漏洞,则将带来重大的人身伤害和财产损失。例如,仅2018年全球就发生了12起自动驾驶车祸。
3.深度学习是目前人工智能机器学习最常用的技术之一,目前针对深度学习的攻击可以根据攻击的阶段分为对抗攻击和中毒攻击。对抗攻击发生在模型测试阶段,攻击者通过在原始数据上添加精心设计的微小扰动得到对抗样本,从而对深度学习模型进行愚弄,使其以较高置信度误判的恶意攻击。中毒攻击发生在模型训练阶段,攻击者将中毒样本注入训练数据集,从而在训练完成的深度学习模型中嵌入后门触发器,在测试阶段输入毒药样本,则触发攻击爆发。
4.目前对于中毒攻击的防御方法可以根据作用阶段分为:数据及特征修改、模型修改、输出防御三类。数据及特征修改主要是指在数据或者特征输入模型之前对其进行预处理,从而达到防御的效果;模型防御是指对模型进行修改从而实现防御效果;输出防御是指通过对模型的输出结果进行分析,从而实现防御的效果。
5.现还有一种对深度学习版权的保护方法:模型水印;具体来说,在目标模型的后面加入一个特殊的与任务无关的水印模块,在目标模型的输出中嵌入一个统一的、不可见的水印;当攻击者利用带有水印的模型输出训练替代模型时,不可见水印将被嵌入到该替代模型中;当用这个替代模型进行图像处理任务时,在输出中就会带有水印,那么就能够证明该模型是一个替代模型即对原模型进行了模型替代攻击。这是模型水印在模型版权保护上的应用,同样的道理我们可以做些改变把它用到模型中毒攻击的防御上。


技术实现要素:

6.为解决现有技术中存在的问题,本发明提供一种基于模型水印的深度学习模型中毒防御方法,提高了对模型防御中毒攻击的保护,使得模型在面对中毒攻击是具有更强的鲁棒性。
7.一种基于模型水印的深度学习模型中毒防御方法,所述方法包括如下步骤:
8.收集图片数据集并分类,针对每一类图片数据集制作一种相对应的水印图片;
9.利用水印嵌入器,将图片数据集中的原图片域a与水印组合成新图片域a+,利用嵌入损失函数对嵌入器进行训练;
10.利用分类损失函数训练得到分类模型,分类模型对图片进行分类,且将新图片域a+输入到分类模型在指定的一层的特征图中得到并保存特征区域t+,将原图片域a输入到分
类模型在指定的一层的特征图中得到并保存特征区域t;
11.利用提取损失函数训练得到水印提取器,将特征区域t和t+输入到水印提取器中对水印进行提取;
12.根据分类模型对图片进行的分类结果以及水印提取器中水印的提取结果进行加权后预测结果。
13.具体的,将新图片域a+输入到分类模型中将网络的第三层的特征图中得到并保存特征区域t+,将原图片域a输入到分类模型中将网络的第三层的特征图中得到并保存特征区域t
14.优选的,所述水印嵌入后利用判别器判别图片域为a或a+。
15.具体的,判别器使用lenet网络。
16.优选的,所述嵌入损失函数表示为:
17.l
嵌入
=λ1*l
基础
+λ2*l
对抗
[0018][0019][0020]
其中,n表示图像像素值总数,a表示为原图片域a中的图像,a+表示为新图片域a+中的图像,表示a域中图像在判别器d中的输出,表示1减去a+域中图像在判别器d中的输出,l
对抗
损失希望鉴别器d不能够将a域和a+域中的图片区分开来,λ1表示l
基础
的超参,λ2表示l
对抗
的超参。
[0021]
具体的,采用unet作为水印嵌入网络。
[0022]
优选的,所述分类损失函数表示为:
[0023][0024]
其中,m表示样本数量,n表示标签数量,i表示第i个样本,j表示第j个标签,x
ij
表示第i个样本预测为第j个标签,p(x
ij
)表示正确预测,q(x
ij
)表示第i个样本预测为第j个标签的概率。
[0025]
具体的,采用vgg网络作为分类模型。
[0026]
优选的,所述提取损失函数表示为:
[0027]
l
提取
=λ3*l
水印
+λ4*l
干净
+λ5*l
一致性
[0028][0029][0030][0031]
其中,l
水印
为含水印图像的提取损失函数,l
干净
为空白图像的提取损失函数,l
一致性
为不同含水印图像中提取出的水印图像的一致性损失函数,n表示图像像素值总数,e为水印
提取器,为水印图像,t
+
、为特征域t+中的图像,σ0为空白图像,σ为原始水印,λ3表示水印图像提取损失函数的超参,λ4表示空表图像提取损失函数的超参,λ5表示水印一致性损失函数的超参。
[0032]
具体的,使用unet作为水印提取网络;且从特征域t提取的水印为空白,而从特征域t+提取的水印为嵌入的水印。
[0033]
优选的,所述预测结果表示为:
[0034]
x=λ6f1(x,m)+λ7f2(σ
x
,σ)
[0035]
其中,λ6为图片分类结果的权值,λ7为水印提取器提取的水印的权值,f1函数代表输入图片x通过分类模型后获得的分类结果,f2函数代表输入图片x通过分类模型获得制定层的特征图后水印提取器从这个特征图提取到的水印σ
x
与原始水印σ的相似度得分。
[0036]
与现有技术相比,本发明的有益之处在于:
[0037]
(1)利用水印机制对模型最后的类别判断加入一个权衡项,使模型在面对中毒攻击时具有更强的鲁棒性。
[0038]
(2)在此种防御方法下,攻击者想要攻击成功,就必须要嵌入相应的中毒攻击类的水印,同时洗去原有类的水印,明显增大了攻击者攻击成功的难度,进而更好地保护模型的安全性。
附图说明
[0039]
图1为本发明提供的基于模型水印的深度学习模型中毒防御方法的整体流程图;
[0040]
图2为本发明提供的基于模型水印的深度学习模型中毒防御方法的水印嵌入流程图;
[0041]
图3为本发明提供的基于模型水印的深度学习模型中毒防御方法的水印提取流程图;
[0042]
图4为本发明提供的基于模型水印的深度学习模型中毒防御方法的判别器和分类模型网络结构图;
[0043]
图5为本发明提供的基于模型水印的深度学习模型中毒防御方法的水印嵌入器和水印提取器网络结构图。
具体实施方式
[0044]
下面结合附图和具体实施例,对本发明做进一步说明。
[0045]
基于模型水印的深度学习模型中毒防御方法,根据每一类的图片设定一张水印图片,在正常训练分类模型的时候,同时训练一个水印嵌入器,将水印嵌入到图片中;然后指定模型的某一层的输出特征图,用这些特征图来训练一个水印提取器,提取嵌入的水印;最后图片的类别判断会综合主分类要模型给出的每一类的置信度评分和水印提取器提取的水印评分。
[0046]
图1为本实施例提供的基于模型水印的深度学习模型中毒防御方法的整体流程图。基于模型水印的深度学习模型中毒防御方法可以用于自动驾驶领域,深度学习模型依据采集的图像数据构建神经通路,用于建立防御机制,以保证自动驾驶的安全性。
[0047]
根据图1

5所示的基于模型水印的深度学习模型中毒防御方法,所述方法包括如
下步骤:
[0048]
(1)收集图片数据集并分类,针对每一类图片数据集制作一种相对应的水印图片;
[0049]
(2)将原图片域输入到水印嵌入器i中,水印嵌入器i使用unet网络,水印嵌入器i输出带有水印b的新图片域a+;并利用判别器d判别水印嵌入器i输出的是否为a+;利用a和a+对水印嵌入器i进行训练;
[0050]
用于训练水印嵌入器i的嵌入损失函数表示如下:
[0051]
l
嵌入
=λ1*l
基础
+λ2*l
对抗
[0052][0053][0054]
其中,n表示图像像素值总数,a表示为原图片域a中的图像,a+表示为新图片域a+中的图像,表示a域中图像在判别器d中的输出,表示1减去a+域中图像在判别器d中的输出,l
对抗
损失希望鉴别器d不能够将a域和a+域中的图片区分开来,λ1表示l
基础
的超参,λ2表示l
对抗
的超参。
[0055]
(3)将a+输入到分类模型m中将图片进行分类,并把网络第三层的特征图保存为特征区域t+,将a输入到分类模型m中,并把网络第三层的特征图保存为特征区域t;
[0056]
同于训练分类模型m的分类损失函数表示如下:
[0057][0058]
其中,m表示样本数量,n表示标签数量,i表示第i个样本,j表示第j个标签,x
ij
表示第i个样本预测为第j个标签,p(x
ij
)表示正确预测,q(x
ij
)表示第i个样本预测为第j个标签的概率。
[0059]
(4)利用t和t+训练水印提取器e,利用水印提取器e提取t和t+的水印;且特征域t提取的水印为空白,而从特征域t+提取的水印为嵌入的水印。
[0060]
用于训练水印提取器e的提取损失函数表示如下:
[0061]
l
提取
=λ3*l
水印
+λ4*l
干净
+λ5*l
一致性
[0062][0063][0064][0065]
其中,l
水印
为含水印图像的提取损失函数,l
干净
为空白图像的提取损失函数,l
一致性
为不同含水印图像中提取出的水印图像的一致性损失函数,n表示图像像素值总数,e为水印提取器,为水印图像,t
+
、为特征域t+中的图像,σ0为空白图像,σ为原始水印,λ3表示水印图像提取损失函数的超参,λ4表示空白图像提取损失函数的超参,λ5表示水印一致性损失函数的超参。
[0066]
(5)对(3)中分类的出的各类图片进行加权计算,同时对(4)中的出的水印进行加权计算,计算的出预测结果;
[0067]
加权计算公式表示如下:
[0068]
x=λ6f1(x,m)+λ7f2(σ
x
,σ)
[0069]
其中,λ6为图片分类结果的权值,为λ7水印提取器e提取的水印的权值,f1函数代表输入图片x通过分类模型m后获得的分类结果,f2函数代表输入图片x通过分类模型m获得制定层的特征图后水印提取器从这个特征图提取到的水印σ
x
与原始水印σ的相似度得分。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1