本发明涉及加密,尤其是涉及一种黑盒模型水印生成与验证方法、装置和介质。
背景技术:
1、随着计算机硬件条件和大数据的发展,以深度神经网络(dnns)为代表的人工智能技术在图像识别、自然语言处理和自动驾驶等众多应用领域都取得了显著的成就。构建这些高性能的深度神经网络模型不仅需要设计师的智慧,而且还需要消耗大量的训练数据和计算资源。因此,作为一种昂贵的数字资产,保护深度神经网络模型的知识产权不受任何形式的侵犯都至关重要。
2、dnn水印技术已经被广泛研究用于保护模型的知识产权,主要有两类:白盒水印和黑盒水印。在验证阶段,白盒水印需要获取受害者dnn模型的内部具体细节,而黑盒水印可以直接访问dnn的应用程序编程接口(api)。dnn通常是一种基于在线的服务,只可以通过api访问,因此黑盒水印在日常生活中更实用。
3、最近的研究主要集中在提高水印技术的性能上,但处理验证相关问题的工作相对较少。最重要的是,几乎所有最先进的工作都是在假设验证操作简单且由所有者或可靠的验证机构执行的前提下执行的。然而,通过验证过程,被审计的攻击者和验证机构都知道了这些水印,被审计的攻击者也可以提交获取的触发集来验证可疑模型的版权,从而不能保证模型所有者的唯一所有权验证。
技术实现思路
1、本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种黑盒模型水印生成与验证方法、装置和介质。
2、本发明的目的可以通过以下技术方案来实现:
3、一种黑盒模型水印生成与验证方法,包括以下步骤:
4、生成阶段:建立生成器,将预设标签和符合高斯正态分布的随机噪声组成的潜在向量同时输入到生成器中,得到图像作为触发器;
5、嵌入阶段:基于触发器和原始训练样本,对预先训练好的目标dnn模型进行微调,更新dnn模型的参数,得到含水印的dnn模型;
6、验证阶段:使用生成器、潜在向量和预设标签,生成触发样本,将触发样本输入待验证模型,得到触发样本的分类准确率,当分类准确率大于阈值时,验证成功。
7、进一步地,dnn模型的目标函数的计算表达式为:
8、
9、式中,c'g为触发器的预测标签,c'为原始样本的标签,为生成样本c'g与cg之间的交叉熵损失,loriginal为原始样本的交叉熵损失,表示目标模型c对原始训练样本的分类性能。
10、进一步地,分类准确率的计算表达式为:
11、
12、式中,cs为待测模型,为触发样本,c'v为预设标签,1condition表示条件函数,当条件为真或假时分别返回1或0,p表示预先设定的logits分布。
13、进一步地,生成器由多个转置卷积层、一个relu层、多批处理归一化层、一个relu层和一个tahn层依次连接组成。
14、进一步地,包括鉴别器,鉴别器用于判断输入模型中的样本为原始训练样本或触发器。
15、进一步地,鉴别器由多个卷积层,多组由批处理归一化层、leakyrelu层和dropout层依次连接组成的第一组合层,由批处理归一化层和leakyrelu层依次连接组成的第二组合层,sigmoid函数层和softmax函数层。
16、进一步地,生成器的目标函数和鉴别器的目标函数的计算表达式分别为:
17、ld=logbreal+log(1-bfake)+logcreal+logcfake
18、
19、式中,breal表示原始训练样本输入鉴别器时的二值输出,bfake表示触发器输入鉴别器时的二值输出,creal表示原始训练样本输入鉴别器时得到的类别可能性输出结果,cfake表示触发器输入鉴别器时得到的类别可能性输出结果,lcg是触发器的预测标签和预定义标签之间的交叉熵损失,l为分类任务的图像种类,pi为分类模型输出的概率分布。
20、进一步地,还包括无效数据集,触发样本在测试过后进入无效数据集,当验证阶段中已进入无效数据集的触发样本再次输入待验证模型时,拒绝进行验证。
21、本发明的第二方面,一种黑盒模型水印生成与验证装置,包括存储器、处理器,以及存储于存储器中的程序,处理器执行程序时实现如上任一的一种黑盒模型水印生成与验证方法。
22、本发明的第三方面,一种存储介质,其上存储有程序,程序被执行时实现如上任一的一种黑盒模型水印生成与验证方法。
23、与现有技术相比,本发明具有以下有益效果:
24、1)本发明使用潜在向量和预设标签通过生成对抗网络gan生成触发器,将特殊触发器表示的后门水印通过微调方法嵌入到目标dnn模型中,根据预先设定的验证规则,当每次发现怀疑模型时,所有者能够有效地生成新的触发样本,通过怀疑模型对触发样本的分类结果验证水印dnn模型,保护水印dnn模型,同时避免对模型性能造成显著影响。
25、2)本发明通过无效数据集,验证触发样本的有效性,被使用过的触发样本无法再次用于验证,避免盗用触发样本用于版权验证。
1.一种黑盒模型水印生成与验证方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种黑盒模型水印生成与验证方法,其特征在于,所述dnn模型的目标函数的计算表达式为:
3.根据权利要求1所述的一种黑盒模型水印生成与验证方法,其特征在于,所述分类准确率的计算表达式为:
4.根据权利要求1所述的一种黑盒模型水印生成与验证方法,其特征在于,所述生成器由多个转置卷积层、一个relu层、多批处理归一化层、一个relu层和一个tahn层依次连接组成。
5.根据权利要求1所述的一种黑盒模型水印生成与验证方法,其特征在于,还包括鉴别器,所述鉴别器用于判断输入模型中的样本为原始训练样本或触发器。
6.根据权利要求5所述的一种黑盒模型水印生成与验证方法,其特征在于,所述鉴别器包括多个卷积层,多组由批处理归一化层、leakyrelu层和dropout层依次连接组成的第一组合层,由批处理归一化层和leakyrelu层依次连接组成的第二组合层,sigmoid函数层和softmax函数层。
7.根据权利要求5所述的一种黑盒模型水印生成与验证方法,其特征在于,所述生成器的目标函数和鉴别器的目标函数的计算表达式分别为:
8.根据权利要求1所述的一种黑盒模型水印生成与验证方法,其特征在于,还包括无效数据集,所述触发样本在测试过后进入无效数据集,当验证阶段中已进入无效数据集的触发样本再次输入待验证模型时,拒绝进行验证。
9.一种黑盒模型水印生成与验证装置,包括存储器、处理器,以及存储于所述存储器中的程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-8中任一所述的一种黑盒模型水印生成与验证方法。
10.一种存储介质,其上存储有程序,其特征在于,所述程序被执行时实现如权利要求1-8中任一所述的一种黑盒模型水印生成与验证方法。