目录
论文信息
论文名称:Watermarking Deep Neural Networks for Embedded Systems
作者:Jia Guo and Miodrag Potkonjak,University of California, Los Angeles
发表年份:2018年
发表会议:ICCAD
开源代码:
文章简介
本文提出一种黑盒水印方法,同样借鉴后门攻击的思想,通过设计基于作者签名的水印生成器和目标标签构造触发集,将模型置于触发集与原始数据集上训练,得到含有水印的模型。
研究动机
现有的水印方法或是无法更加合理地应用到嵌入式设备中[1],或是无法抵抗修改攻击和伪造攻击等攻击方式,又或是zero-bit的黑盒水印,无法与模型所有者的身份信息绑定[2,3,10]。基于现有工作的不足,本文提出一种基于触发集构造的黑盒水印方法。该方法所要达到的目的如下:
研究方法
水印生成
本文主要的创新点就在水印图像
和水印标签
的构建上,下面对其进行具体描述。假设模型所有者拥有一段n-bit
的签名信息,基于这段签名信息,模型所有者(1)构造具有合适幅度
α
\alpha
α的水印信号
m
m
m,将其添加至原始图像
X
X
X上,得到水印图像
ϕ
X
X
\phi_{X}X
ϕXX;(2)生成对应的水印标签
ϕ
y
y
\phi_{y}y
ϕyy。下面分别对这两个阶段进行描述。
水印图像生成
该阶段的主要思想是将n-bit
的签名信息以一定的强度嵌入到原始图像的
n
n
n个像素中,核心公式如下,其中
α
\alpha
α代表嵌入强度,
m
m
m代表水印信号。
ϕ X X = X + α m \phi_{X}X = X + \alpha m ϕXX=X+αm.
将上述公式拆解为3步:【1】基于签名信息生成水印信号【2】选择合适的嵌入强度【3】将水印信号添加至原始图像中。
【1】首先将n-bit
的签名信息作为密钥输入到伪随机置换(Pseudo Random Permutation,PRP)中,得到
n
n
n 个像素的位置信息。将这n-bit
与位置信息结合,得到长度为
n
n
n 的水印信号
m
m
m.
【2】使用基于二分搜索的方法选择最佳嵌入强度。主要思想是固定水印信号
m
m
m的长度,在模型准确率下降可接受的范围(
Δ
A
\Delta A
ΔA)内,在固定强度区间(
[
α
m
i
n
,
α
m
a
x
]
[\alpha_{min}, \alpha_{max}]
[αmin,αmax])内找到最大的嵌入强度
α
o
p
t
\alpha_{opt}
αopt。
PS:本文探究了水印信号的长度与强度对模型性能的影响,可见水印信号越长、嵌入强度越大,对模型准确率的影响越大。
【3】将水印信号添加至原始图像中,得到水印图像
ϕ
X
X
\phi_{X}X
ϕXX.
水印标签生成
给定原始标签
k
(
k
=
1
,
2
,
…
,
K
)
k(k=1, 2, \dots, K)
k(k=1,2,…,K),将其与n-bit
的签名信息作为密钥同时输入到伪随机数生成器(Pseudo Random Generator,PRG)中,将
k
k
k 映射为其余
K
−
1
K-1
K−1 个标签中的一个,这些水印标签统称为
ϕ
y
y
\phi_{y}y
ϕyy。
K
K
K个标签一共要完成
K
K
K次映射,映射空间大小为
(
K
−
1
)
K
(K-1)^{K}
(K−1)K.
水印嵌入
与本篇文章中的思想类似,将使用上述方式构造好的触发集与其余训练数据混合,共同作为模型的训练样本,在对预训练模型的微调过程中完成水印的嵌入。水印生成和水印嵌入的完整流程如下:
版权验证
将原始图像
X
X
X和水印图像
ϕ
X
X
\phi_{X}X
ϕXX分别输入模型
f
W
M
K
f^{WMK}
fWMK中,若
f
W
M
K
f^{WMK}
fWMK能够将原始图像的标签分类正确(
y
y
y),且能够在一定误差范围(
ϵ
\epsilon
ϵ)内将水印图像
分类为指定的水印标签
(
ϕ
y
y
\phi_{y}y
ϕyy),则说明该模型含有水印。完整的版权验证流程如下:
实验结果
本文在MNIST数据集上测试LeNet模型,在CIFAR-10数据集上测试VGG-16、ResNet-50以及DenseNet-121.
本文指出,微调和剪枝等对模型的正常操作并不能看作是对含水印模型的攻击,此外,本文提出两种新型攻击方法 —— 篡改攻击和伪造攻击,并就本文设计的水印方法对这两种攻击方法的鲁棒性就行了测试。
方法评估
有效性(Effectiveness)
由 Table2 和 Table 3 可知,含水印模型
m
o
d
e
l
W
M
K
model^{WMK}
modelWMK 在
D
a
m
t
r
a
i
n
\mathcal D_{am}^{train}
Damtrain 和
D
a
m
t
e
s
t
\mathcal D_{am}^{test}
Damtest上的准确率均超过
92.2
%
92.2\%
92.2%,证明了本水印方法的有效性。
保真度(Fidelity)
由Table 2 和 Table 3 可知,含水印模型 m o d e l W M K model^{WMK} modelWMK 在 D a m t r a i n \mathcal D_{am}^{train} Damtrain 和 D a m t e s t \mathcal D_{am}^{test} Damtest上的准确率与正常模型 m o d e l model model对应数据相差不大,说明水印的保真度较高。
嵌入容量(Payload)
由下图可知,相较于zero-bit水印,该水印方法具有较高的嵌入容量。
假阳性(False Positive Rate)
该指标测试含水印模型在正常训练集和正常测试集上的性能。由Table 2 和 Table 3 可知,该水印方法具有较低的虚警率。
安全性(Security)
本文对水印抵抗两种攻击方法的鲁棒性进行了测试。
篡改攻击(Tampering Attack)
本文指出,模型在原始任务上的性能与水印提取的性能具有密不可分的关系,对模型参数的修改会对这二者产生影响,所以在不影响模型原始性能的前提下,基于参数修改的篡改攻击对黑盒水印方法失效。
伪造攻击(Ghost Signature Attack)
在水印信号的长度和嵌入强度已知的情况下,攻击者伪造成功水印标签映射(PRG)的概率为 1 ( K − 1 ) K \frac{1}{(K-1)^{K}} (K−1)K1,其中 K K K为标签的类别总数。假设攻击者伪造成功水印标签,我们就需要测试含水印模型对于攻击者伪造的水印图像的准确率,由Table 4可知,对于添加不同水印信号的水印图像,含水印模型并不能够准确地分类,所以这种基于签名的水印方法对于伪造攻击具有良好的鲁棒性。
相关文献
[1] Y. Uchida, Y. Nagai, S. Sakazawa, and S. Satoh, “Embedding watermarks into deep neural networks,” ICMR, 2017.
[2] E. L. Merrer, P. Perez, and G. Tredan, “Adversarial frontier stitching for remote “neural network watermarking,” Neural Computing and Applications, 2020.
[3] Y. Adi, C. Baum, M. Cisse, B. Pinkas, and J. Keshet, “Turning your weakness ´ into a strength: Watermarking deep neural networks by backdooring,” USENIX, 2018.
[10] B. D. Rouhani, H. Chen, and F. Koushanfar, “Deepsigns: A generic watermarking framework for IP protection of deep learning models,” ASPLOS, 2019.