目录
- 论文信息
- 文章简介
- 研究动机
- 查询修改攻击
- Auto-Encoder训练
- 水印图像检测
- 检测结果
- 水印图像重构
- 研究方法
- 水印生成
- 水印嵌入
- 版权验证
- 实验结果
- 保真度(Fidelity)
- 有效性(Effectiveness)&鲁棒性(Robustness)
- 方法评估
- 相关文献
论文信息
论文名称:Robust Watermarking of Neural Network with Exponential Weighting
作者:Ryota Namba and Jun Sakuma, University of Tsukuba
发表年份:2019
发表会议:AsiaCCS
开源代码:https://github.com/dunky11/exponential-weighting-watermarking(非官方代码,tf)
文章简介
本文首先针对黑盒水印提出了一种基于Anto-Encoder的查询修改攻击,并有针对性地提出了一种更加鲁棒的clean-image触发集构造方法和基于参数指数增强的黑盒水印模型训练方法,能够有效抵御模型修改攻击(Pruning)和查询修改攻击。
研究动机
本文基于黑盒水印的版权验证方式是通过验证特定输入与待检测模型输出之间的映射关系,提出一种使得黑盒水印失效的新型攻击方法——查询修改攻击,并通过实验表明现有黑盒水印抵御此攻击的鲁棒性欠缺;然后,有针对性地提出一种抵抗该攻击的clean-image触发集构造方法和基于参数指数增强的黑盒水印模型训练方法。
查询修改攻击
应用场景:黑盒水印。未授权的服务提供商已知模型中含有水印,想要抹除模型水印,并希望在模型中水印失效的同时最大程度保证模型在原始任务上的性能。
主要思想:破坏用于版权验证的触发集中的输入-输出映射关系。
主要方法:使用Auto-Encoder(1)从当前查询图像中检测出触发集中的水印图像(2)对检测出的水印图像进行重构,一定程度上抹除水印。完整流程如下:
下面分别对上述过程中的关键步骤介绍。
Auto-Encoder训练
使用训练集训练一个Auto-Encoder(AE),将其用于后续的水印图像检测与重构。这里使用AE的原因是,AE的输出会拟合其训练样本分布的潜在表示。也就是说,当我们使用训练集训练出Auto-Encoder之后,再把任何一张图像输入到AE,其输出都会拟合训练集的分布,那自然对于水印图像也是如此,即经过AE的处理之后,输出的图像中的水印信号可能会被抹除,因为水印图像的分布与训练集样本的分布不一致。这就为我们接下来的检测和重构工作奠定了基础。
水印图像检测
这一步存在的意义是:如果我们将待检测模型的输入都使用AE进行重构,就会造成极大的资源浪费,也会对非水印图像的正常服务造成影响,所以在重构之前要先进行水印图像的检测。检测方式主要有两种,分别根据:
(1)重构前后图像的变化程度
l o s s ( x ) = ∣ ∣ x − A E ( x ) ∣ ∣ 2 2 loss(x) = ||x-AE(x)||_{2}^{2} loss(x)=∣∣x−AE(x)∣∣22
,其中 x x x为当前待检测图像, A E ( x ) AE(x) AE(x)为使用AE重构后的图像, l o s s ( x ) loss(x) loss(x)为二者差值的L2范数。若 l o s s > τ R E C loss > \tau_{REC} loss>τREC( τ R E C \tau_{REC} τREC为经验值),则认为重构对图像的影响较大,当前图像为触发集中的水印图像。
(2)重构前后模型预测标签分布的变化程度
,其中
f
K
(
x
)
f_{K}(x)
fK(x)为含水印模
f
K
f_{K}
fK对于原始待检测图像
x
x
x的预测标签分布,
f
K
(
A
E
(
x
)
)
f_{K}(AE(x))
fK(AE(x))为含水印模
f
K
f_{K}
fK对于重构待检测图像
A
E
(
x
)
AE(x)
AE(x)的预测标签分布。若二者的JS散度
J
S
D
(
f
K
(
x
)
∣
∣
f
K
(
A
E
(
x
)
)
)
>
τ
J
S
D
JSD(f_{K}(x)||f_{K}(AE(x))) > \tau_{JSD}
JSD(fK(x)∣∣fK(AE(x)))>τJSD(
τ
J
S
D
\tau_{JSD}
τJSD为经验值),则认为当前待检测图像为触发集中的水印图像。
检测结果
Table 1 展示了上述两种检测方法对使用不同方法生成的水印图像的检测结果。可以看出,基于CIFAR系列数据集生成的水印图像更容易被检测出来。不同形式的水印图像的抗检测能力差异较大,如[22]-unrelated方式生成的水印图像就不易被检测出来。
水印图像重构
检测出水印图像之后,需要对水印图像进行重构。同样地,使用AE对水印图像 x k e y x^{key} xkey进行处理,得到 A E ( x k e y ) AE(x^{key}) AE(xkey).
将重构后的水印图像送入含水印模型 f K f_{K} fK中得到检测结果 f K ( A E ( x k e y ) ) f_{K}(AE(x^{key})) fK(AE(xkey)). 这样,未授权的服务提供商就能够使得基于黑盒水印的版权验证方法失效。
研究方法
水印生成
考虑到触发集中的水印图像
与训练样本中的图像分布不一致这一情况,作者构造了一个clean-image的触发集,只对原始样本中的标签进行更改,而不对图像进行改动,构成触发集。这种触发集的构造方式就能够很好地抵抗查询修改攻击。
水印嵌入
主要思想:如果大量权值较小的模型参数参与到预测过程中,那模型修改攻击就会影响模型预测结果。作者希望找到一种方法,能够更加稳固地将样本植入到模型中。
具体方式:在训练过程中,识别出对模型预测结果有重大贡献的参数,然后通过指数方式增加其权重值,保证这些参数无法在模型遭受修改攻击之后更改样本的预测行为。
假设模型第 l l l层的输出 h l + 1 h^{l+1} hl+1计算方式如下:
其中
a
l
a^{l}
al为激活函数,
o
p
l
op^{l}
opl为仿射变换或卷机等操作,
h
l
h^{l}
hl为
l
l
l-th层的输入,
θ
l
\theta^{l}
θl为
l
l
l-th层的参数。
将 θ l \theta^{l} θl 中的第 i i i 个元素记为 θ i l \theta^{l}_{i} θil,则对 θ l \theta^{l} θl的指数加权方式如下:
其中
T
T
T为加权强度(文中
T
=
2
T=2
T=2).
对参数进行指数增强之后,第 l l l层的输出计算方式变为:
完整的水印嵌入流程如下:
这种权重增强方式就很好地抵御了模型修改攻击。
版权验证
与其他黑盒水印的验证方式相同,验证者将触发集
K
′
K'
K′中的水印图像
(clean-image)输入待检测模型
g
g
g中,将模型的输出标签与水印标签
比对,若准确率
a
c
c
g
K
′
acc_{g}^{K'}
accgK′超过一定阈值
τ
a
c
c
\tau_{acc}
τacc,则验证了当前模型的版权。
实验结果
本工作在MNIST, GTSRB, CIFAR10 和 CIFAR100 四个数据集上进行了实验。使用 ResNet-32 作为目标模型。
保真度(Fidelity)
如 Table 3 所示,本实验从两个角度对模型的保真度进行了评估:
(1)不含水印模型与含水印模型在未受攻击情况下的原始任务性能(每个数据集下的第一列纵向比较),这是我们常说的保真度指标
(2)含水印模型在未遭受攻击、遭受模型修改攻击和遭受查询修改攻击后的原始任务性能(每个数据集下的横向比较)
有效性(Effectiveness)&鲁棒性(Robustness)
现有黑盒水印方法在遭受模型修改攻击或查询修改攻击后,水印的有效性大打折扣,如 Table 2 和 Figure 2所示。相较而言,本文提出的方法具有更强的鲁棒性,这表现在4种数据集*2种攻击方式=8种情况下,水印的有效性指标均接近100%(如 Figure 2 所示)。
方法评估
本工作是第一个基于黑盒水印的特性设计攻击方法的工作,查询修改攻击与模型修改攻击不同的是,它在触发集样本的内部关联性上做文章,本质上破坏了水印嵌入者基于触发集「输入-输出」映射的版权验证方法,个人认为是一个比较独特的视角。
此外,除提出新的“矛”攻击现有黑盒水印方法,本文另设计了一种能够抵御“矛”的强有力的“盾”,巩固水印在模型中的存在,对症下药,很好地抵御了“矛”对水印图像的攻击。通过构造基于原始标签变换的触发集,保留水印图像的分布不变性,为防止过拟合对权重增强处理,巩固水印在模型中的存在程度。这是第二个新颖的创新点。
这个工作的思路应该是:首先发现黑盒水印易受查询修改攻击,然后通过打补丁的方式,设计一种既能够抵御查询修改攻击也能够给抵御模型修改攻击的黑盒水印方法。所以最重要的是发现问题,然后才是解决问题。
相关文献
[5] Jia Guo and Miodrag Potkonjak. Watermarking deep neural networks for embedded systems. In Proceedings of the International Conference on ComputerAided Design, 2018.
[13] Erwan Le Merrer, Patrick Perez, and Gilles Trédan. Adversarial frontier stitching for remote neural network watermarking. Neural Computing and Applications, 2020.
[15] Bita Darvish Rouhani, Huili Chen, and Farinaz Koushanfar. Deepsigns: A generic watermarking framework for ip protection of deep learning models. ASPLOS, 2019.
[19] Yusuke Uchida, Yuki Nagai, Shigeyuki Sakazawa, and Shin’ichi Satoh. Embedding watermarks into deep neural networks. ICMR, 2017.
[21] Adi Yossi, Baum Carsten, Cisse Moustapha, Pinkas Benny, and Keshet Joseph. Turning Your Weakness Into a Strength: Watermarking Deep Neural Networks by Backdooring. USENIX, 2018.
[22] Jialong Zhang, Zhongshu Gu, Jiyong Jang, Hui Wu, Marc Ph Stoecklin, Heqing Huang, and Ian Molloy. Protecting Intellectual Property of Deep Neural Networks with Watermarking. AsiaCCS, 2018.