一种图像处理模型与图像处理算法的产权保护方法与流程

文档序号:21187881发布日期:2020-06-20 18:15阅读:155来源:国知局
一种图像处理模型与图像处理算法的产权保护方法与流程

本发明涉及深度学习模型产权保护技术领域,尤其涉及一种图像处理模型与图像处理算法的产权保护方法。



背景技术:

深度学习已经在各个领域取得了巨大的成功,诸如图像分类、语音识别、自然语言处理等。训练一个性能好的深度学习模型往往需要大量的高质量的数据和昂贵的计算资源。然而,这些模型存在着严重的被侵权的风险。例如,已知包括目标网络的详细网络结构和参数在内的全部信息(白盒攻击场景),攻击者可以根据目标模型在新的特定数据集上进行微调或剪枝从而达到有效的攻击目的。即使只能通过api访问目标模型的输出(黑盒攻击场景),攻击者仍然可以通过使用一个替代模型来模仿目标模型从而窃取目标模型的知识产权。这种攻击方法具体来说就是:攻击者首先可以根据目标模型生成大量的输入输出训练对,然后直接通过将目标模型的输出视为真实标签,以有监督方式训练,便可以得到一个和目标模型性能相近的替代模型。我们需要设计出一种版权标识,使其在经过攻击者的模型窃取攻击后,该标识仍能够得以保存。

数字水印是保护多媒体版权的最重要方法之一。近二十年来,许多各式各样的图像数字水印算法被提出,其中大致可分为两个类型:可见水印(如logo)和不可见水印。与可见水印相比,不可见水印更加安全可靠。不可见水印算法又细分为空域不可见水印和变换域不可见水印。对于空域不可见水印算法,1999年kutter首次提出了对图像变换(平移、旋转、放缩)鲁棒的水印算法;随后两年里,voloshynovskiy和deguillaume相继提出了图像内容自适应的空域水印算法以及水印的评估准则;对于其他图像变换域,也提出了各具特色的不可见水印算法,例如离散余弦变换(dct)域,离散小波转换(dwt)域和离散傅里叶变换(dft)域。但是,所有这些传统的水印算法通常只能隐藏几位或几十位比特信息,对于嵌入大容量的logo图像来说,这些算法无能为力。近年来,一些基于深度神经网络(dnn)的水印算法也开始出现。例如,zhu等人在2018年提出了一种基于自动编码器(auto-encoder)的网络架构来实现水印的嵌入和提取。基于此工作,tancikp等人进一步实现了通过添加模拟相机拍摄失真噪音层来实现对于相机拍摄具有鲁棒性的水印算法。与这些图像水印算法相比,深度学习模型具有很大规模的(指数级别)搜索空间,因此深度学习模型水印更具挑战性。针对深度学习模型的产权保护方法仍然处于初步研究阶段。

2017年,uchida等人首次提出模型水印的概念,他们在训练正常网络的目标函数中添加了一个正则项,用来在网络权重中嵌入信息,而且水印的嵌入不会造成网络精度的大幅下降。但水印只能在白盒场景(能够完全访问模型权重和结构)下提取。为了能对部署在云端的模型提取水印以验证版权,merrer等人提出了一种能在黑盒条件下(仅访问模型输出)验证水印的模型水印方案,他们用对抗防御技术微调模型的决策边界,使得微调后的网络对边界附近的几个选定的正确分类的样本仍能正确分类,选定的几个对抗样本可以分类正确,但不足之处在于没有考虑对抗样本的迁移性问题;zhang等人设计了一种基于作者签名的黑盒模型水印,他们分别设计了3种水印样式:英文、随机噪声、无关图片,分别将这些水印打上作者指定的目标标签后混入训练集训练,训练得到的网络在正常的图片输入上表现一切正常,但当遇到打上水印的图片时,就会输出指定的目标标签,从而证明了水印的存在。adi等人提出了一种基于后门攻击的黑盒模型水印算法,他们随机挑选一些抽象的图片,打上目标标签,混入训练集中训练网络,训练完成的网络在正常输入上表现正常,在遇到选定的抽象图片时,模型会输出指定的目标标签,从而证明了水印的存在。但此阶段的黑盒模型水印都是0-1水印算法,即嵌入的水印只能表达0-1信息(“水印存在”或“水印不存在”)。guo等人设计了一种多比特黑盒模型水印算法,他们先将作者信息转化成n比特的二元序列,之后分别送入随机数产生器和随机排序器以指定添加水印后的图像的标签和嵌入水印的位置及水印内容,提取水印时,只有用作者信息计算出嵌入水印的位置才可以正确提取水印。chen等人也实现了多比特黑盒模型水印算法,嵌入水印时,首先将训练集中的所有图片送入网络,对输出的logits取均值并聚类成两类,之后按照作者的版权标识(0、1序列)对应地从两类图片中选择图片和目标标签,并生成对抗样本,之后对模型进行微调,以增强对抗样本的攻击效果。darvish等人通过将水印嵌在隐藏层和输出层的概率分布函数里,分别设计了一种白盒和黑盒模型水印框架。

然而,现有的方法都专注于针对图像分类任务的深度学习模型,但是没有针对图像处理的深度学习模型,以及传统图像处理算法的产权保护方案。



技术实现要素:

本发明的目的是提供一种图像处理模型与图像处理算法的产权保护方法,能够实现基于深度学习的图像处理模型以及传统图像处理算法的产权保护,具有较强的鲁棒性。

本发明的目的是通过以下技术方案实现的:

一种图像处理模型与图像处理算法的产权保护方法,利用了空域不可见水印机制,包括:

给定图像域a,输入至对要保护的基于深度学习的图像处理模型m或者图像处理算法,得到对应的图像域b;

设置模型水印网络,训练阶段包含两部分:初始训练部分,对图像域b中的图像通过水印嵌入子网络进行水印嵌入,得到图像域b',训练目标为水印嵌入前后图像的视觉一致性;将图像域a、图像域b与图像域b'中的图像通过水印提取子网络进行水印提取,训练目标为不同含水印图像中提取到的水印图像一致,以及能从不含水印的图像中提取一张空白图像;对抗训练部分,通过设置替代网络sm来模拟攻击者,替代网络sm的输入为图像域a,输出构成图像域b”,将图像域b、图像域b'与图像域b”通过水印提取子网络进行水印提取,从而优化水印提取子网络;

训练完毕后,通过水印嵌入子网络对图像域b中的图像进行水印嵌入后输出;版权验证时,对于待检测的图像,通过水印提取子网络进行水印提取,从而实现版权验证。

由上述本发明提供的技术方案可以看出,引入了一致性约束损失函数和干净提取约束损失函数,使得水印对于网络二次学习具有鲁棒性,同时,利用双阶段训练策略,提高了整个方案对于不同黑盒攻击场景(攻击者使用不同的网络结构和不同的目标函数训练替代网络)的鲁棒性。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1为本发明实施例提供的空域可见水印示意图;

图2为本发明实施例提供的基于空域不可见水印的深度模型水印框架;

图3为本发明实施例提供的模型水印网络双阶段训练流程图;

图4为本发明实施例提供的水印嵌入提取的实验结果图;

图5为本发明实施例提供的有无一致性约束的实验结果图;

图6为本发明实施例提供的有无干净提取约束的实验结果图。

具体实施方式

下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

本发明实施例提供一种图像处理模型与图像处理算法的产权保护方法,利用了空域不可见水印机制,能在保证原有模型输出图像视觉质量的前提下,从攻击者使用窃取数据所训练的替代模型中提取嵌入的水印信息(水印图像),达到模型版权保护的目的。该方法对于攻击者使用不同网络结构及不同目标函数训练的替代网络具有鲁棒性。另外,整个方案的方法框架可以方便地扩展到重要图像数据和传统图像处理算法的保护上。也就是说,本发明,不但能保护基于深度学习的图像处理模型,也可以保护传统的图像处理算法,具体是通过保护处理后的图片来实现产权保护,实现方式将在后文进行详细的介绍。

为了便于理解,在介绍本发明之前首先进行理论分析:

给定图像域a,输入至对要保护的基于深度学习的图像处理模型m或者图像处理算法,期望其输出为图像域b。原理如下:

记图像域a为{a1,a2,…,an},图像域b为{b1,b2,…,bn},其中,n为图像总数。

本发明实施例中,只考虑数据对一一对应的情况,即,图像ai与图像bi由一个隐函数关系ψ联系在一起,对于基于深度学习的图像处理模型m,其目标是通过拉近m(ai)与bi之间的距离δ从而无限逼近隐函数ψ:

δ(m(ai),bi)→0,i=1,2,...,n。

本发明实施例中,基于深度学习的图像处理模型m或者图像处理算法通过训练与优化后,将它们的输出作为图像域b。由于本发明是通过保护处理后的图片来实现产权保护,因此,对于图像处理模型m与图像处理算法而言,其实现方式都是相同的,因此,后文以图像处理模型m为例进行说明。

假设基于大量的私有数据对和昂贵的计算资源,训练好了模型m,则给定一个输入图像ai(属于输入域a),就会相应得到一个输出图像bi(属于目标输出域b)。攻击者利用来自图像域a,b的输入输出对(ai,bi)进行训练,可以得到一个替代模型sm。本发明的目标就是,设计出一种有效的水印算法,使其能够判别替代模型sm是否使用由模型m生成的数据进行训练,从而达到保护模型m的目的。在真实的场景中,无法得知攻击者替代模型sm的具体网络结构和参数,能够利用的只有替代模型sm的输出。因此,需要找到一个方法,能从替代模型sm的输出中提取出我们嵌入的水印,从而证实窃取行为以达到保护模型m产权的目的。此外,对于攻击者使用不同网络结构和不同目标函数训练得到的替代网络sm,都要确保能提取出嵌入的水印。

在传统的水印算法中,给定要嵌入的图像i和水印δ,首先使用水印嵌入子网络h生成含水印的图像i’,水印δ可以通过相应的水印提取子网络r进一步提取出来。假设每一张图像bi都嵌入了统一的水印δ,则得到含水印图像bi’=bi+δ,大量的bi’构成了图像域b’。那么,必然存在一个模型m’可以拟合图像域a到图像域b’的关系,一种简单的得到模型m’的方法便是直接在模型m的输出后添加δ,即:

当m′=m(ai)+δ时

如图1所示,使用传统的空域可见水印算法可以达到我们的目的,但是可见水印会严重影响图像的质量,而且泄露了水印信息,使攻击者便于将其擦除。因此,需要采用其他的方法。基于此,本发明提出了一种基于空域不可见水印机制的深度模型水印框架,如图2所示。

给定需要保护的模型m,对于其所有的输出bi,通过水印嵌入子网络h嵌入统一的水印δ,得到图像bi’。我们使用含水印图像bi’替代原有模型的输出图像bi,将其显示给终端用户。因此,替代模型sm只能使用来自图像域a以及含水印的图像域b’的图像对(ai,bii’)进行训练;而不是原始的来自于图像域a,b的图像对(ai,bi)。不管替代网络sm采用什么样的网络结构,其总是倾向于保留统一水印δ。否则,其目标损失函数l无法达到较低的数值。然后水印提取子网络r可以从替代模型sm的输出中提取水印。为了确保含水印的输出图像bi’在视觉上与原始图像bi保持一致,在此仅考虑基于空域不可见水印的模型保护算法。另外,实验证明变换域不可见水印不适用于解决该模型产权保护问题。

本发明实施例中,通过设置模型水印网络,并采用图3所示的方式进行训练;训练完毕后,对于待检测的图像,通过水印提取子网络进行水印提取,从而进行版权验证。

如图3所示,训练阶段主要包含两部分。

1、初始训练部分。

对图像域b中的图像通过水印嵌入子网络进行水印嵌入,得到图像域b',训练目标为水印嵌入前后图像的视觉一致性;将图像域a、图像域b与图像域b'中的图像通过水印提取子网络进行水印提取,训练目标为提取到的水印与嵌入的水印一致,以及能从不含水印的图像中提取一张空白图像;具体来说:

将水印嵌入图像域b中的图像,然后将其提取出来,需要训练一个水印嵌入子网络h和一个水印提取子网络r。为了不牺牲图像域b中的原始载体图像质量,要求含有水印的图像在视觉上仍应与图像域b中的原始载体图像保持一致。因为生成对抗网络(gan)在许多不同图像处理任务中证明了他们在缩小不同图像域差异方面具有不错的性能表现,因此我们在网络h之后附加一个判断网络d,用来进一步改善图像域b'的图像质量。在网络训练期间,发现提取子网络r如果仅接受图像域b'中图像的训练,很容易出现过拟合的现象,即不论输入图像是否为含有水印,提取网络r都能提取出水印。为了避免这种情况的发生,还需要向水印提取子网络r添加来自图像域a和图像域b中不包含水印的图像,并强制水印提取子网络r对于该输入输出一张干净图像(如图中的空白图像),用来表示没有提取到水印。这样,经过训练,水印提取子网络r才能做到仅在输入图像具有水印时才提取水印。

根据预先的理论分析,当攻击者使用输入图像域a和水印图像域b'来训练替代模型sm,以达到模仿目标模型m的目的时,得益于深度网络固有的拟合特性,sm的输出中也会学习到隐藏的水印δ。

本发明实施例中,可以采用unet作为水印嵌入子网络h和对抗训练阶段替代模型sm的默认网络结构,unet网络结构已被许多针对图像处理任务的深度学习模型广泛使用,例如pix2pix-gan,cycle-gan等。因为unet网络结构中具有多尺度的权值连接共享,对于输出图像与输入图像具有某些共同属性的任务,它的性能特别好。但是对于输出与输入不同的提取子网络r,发现ceilnet表现得更好。ceilnet也遵循类似自动编码器的网络结构。具体来说,编码器由三个卷积层组成,并且解码器对称地由一个反卷积层和两个卷积层组成。为了提高学习能力,在编码器和解码器之间插入了九个残差块。对于判别网络d,默认采用patchgan。值得注意的时,除了提取子网络r以外,发现其他类型的图到图的网络也可以在图2所示的框架中很好地工作,这证明了上述框架有很好的通用性。

初始训练部分的损失函数包含水印嵌入损失函数和水印提取损失函数两部分:

其中,λ为超参数。

水印嵌入损失函数用来约束水印嵌入前后图像的视觉一致性,表示为:

其中,λ1、λ2、λ3均为超参数。

l基础以l2损失函数作为误差衡量标准,表示为:

其中,nc表示图像像素值总数,bi'表示图像域b'中的图像,bi表示图像域b中的图像;

l感知是水印嵌入前后的图像在特征层的误差损失,通过外部的vgg网络来实现,即将图像bi与b′i输入至vgg网络,将vgg网络第k层(具体层数可自行设定)输出作为特征层,获得对应的特征vggk(bi)与vggk(b′i),从而计算相应的误差,表示为:

其中,nf表示图像特征的总数;

l对抗用来约束判别网络d的判别,所述判别网络d用于在水印嵌入后,判别图像为图像域b'或是图像域b中的图像,表示为:

其中,e表示期望分布,d(.)是指判别网络的输出,数值是0到1之间的数,对于理想的判别网络,输入图像为图像域b中的图像时,输出为1,输入为图像域b’中的图像时,输出为0。

对于水印提取损失函数来说,它需要约束水印提取子网络r能够从含有水印的图像中提取水印,并且能从不含水印的图像中提取一张空白图像(如图3所示),同时,为了使水印信息具有一致性,要求水印提取子网络r对于不同含水印图像提取出的水印图像具有一致性,因此,水印提取损失函数表示为:

其中,λ4、λ5、λ6均为超参数;

l水印为含水印图像的提取损失函数l水印,l干净为空白图像的提取损失函数l干净,表示为:

其中,nc表示图像像素值总数,b′i表示图像域b'中的图像,σ0为空白图像,σ表示水印图像,r(b′i)表示水印提取子网络r从图像b′i中提取出的水印图像;

l一致性为不同含水印图像中提取出的水印图像的一致性损失函数,表示为:

其中,x,y表示两个来自图像域b’的图像,r(x)、r(y)表示从图像x、y中提取出的水印图像。

本发明实施例中,超参数λ,λ1~λ6可以由实验确定其最优数值。

2、对抗训练部分。

尽管基于深度网络的方法具有更大的信息容量,但和传统的水印算法一样,如果水印提取子网络r只经历初始训练阶段(如图3上半部分),它仍然无法从代理模型sm的输出中提取水印。这是因为水印提取子网络r训练过程中只见到干净的带水印的图像,但没有见到来自替代模型sm输出的带水印的图像,其中可能包含一些网络学习所带来的对原有水印的破坏。为了进一步增强提取子网络r的提取能力,本发明实施例中设置了对抗训练阶段。

对抗训练阶段,我们事先模拟攻击者,训练一个替代模型sm,训练样本为(ai,bi’)图像对,sm训练过程中我们仅使用l2损失函数作为目标损失函数,使用unet作为其网络结构。实际场景中,攻击者训练替代模型sm时,损失函数lsm可以根据实际情况自行设定,例如,l1损失函数、或者前文定义的l基础、l感知、l对抗、或者它们的组合;网络结构也可自行选择如,unet,简单的卷积网络cnet,残差网络resnet等,且训练样本不需要与对抗训练时的样本有交叉。训练好的sm输入为图像域a,输出构成图像域b”,将图像域b、图像域b'与图像域b”通过水印提取子网络进行水印提取,从而对水印提取子网络进行微调。

对抗训练部分主要是对初始训练后的水印提取子网络r进行微调,损失函数与之前类似:

其中,x′、y′表示两个来自图像域b′或者图像域b″的图像,r(x′)、r(y′)表示从图像x′、y′中提取出的水印图像,b″i表示图像域b”中的图像,r(b″i)表示水印提取子网络r从图像b″i中提取出的水印图像。

类似的,超参数λ′1~λ′6可以由实验确定其最优数值。

训练完成后,水印嵌入子网络的输入为图像处理模型或者图像处理算法输出的图像(例如,去骨模型或者去骨算法),使得图像变为含水印图像,也即前文提到的bi’,由于攻击者只能获得图像域a与含水印图像bi’构成的图像域b’,则攻击者只能拿到(ai,bi’)图像对,通过图像对,学到一个替代模型sm。模型sm的作用也是为了进行去骨操作,给一张有骨图片a作为输入,得到一张去骨后的图片b”。由于攻击者训练替代模型sm的时候使用的数据对中包括含有水印的图像b’,则sm的输出中一定能提出水印。这样,在版权验证时,通过水印提取子网络必然可以提取出对应的水印图像,通过比较提取的水印图像是否与真实水印图像相同,则可完成版权验证,即通过保护处理后的图像来实现产权保护。

为了说明本发明上述方案的效果。通过实验进行了验证。

本发明实施例上述方案,对于不同图像处理模型均适用。嵌入的水印图像和载体图像视觉质量相差无几,例如对于去雨任务,psnr(峰值信噪比)47.89,ssim(结构相似性)0.99;对于去骨任务,psnr39.98,ssim0.99。水印提取成功率100%(nc值大于0.99视为成功提取)。图4列出了部分可视化的实例。

本发明所提出的一致性约束损失函数l一致性和干净约束损失函数l干净证明有效,图5和图6为相应的实验结果图示,图5中上半部分添加有一致性约束,下半部分未添加一致性约束。图6中上半部分添加有干净约束,下半部分未添加干净约束,nc为相似性指标,取值为0~1,数值越高表示图像相似度越高。

本发明实施例上述方案具有广泛的鲁棒性,对于攻击者选择不同的网络结构和不同的目标函数训练得到的替代模型均具有鲁棒性,并且,所使用的双阶段训练策略对于提高水印鲁棒性具有关键影响,如表1,表2所示。表1与表2中,带有*的任务表示网络未经过对抗训练阶段,表1中目标函数是指攻击者实际训练替代模型sm所使用的损失函数,也即前文提到的鉴于篇幅的限制,表1仅示例性的列举了少量损失函数的形式,采用其他损失函数亦可。

表1针对不同目标函数训练的替代模型的水印提取成功率

表2针对不同网络结构训练的替代模型的水印提取成功率

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1