神经网络水印(Neural Network Watermark)

神经网络水印(Neural Network Watermark)

第二弹,Watermarking Neural Networks With Watermarked Images,这篇是发在IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY上的。创新性还是可以的,原理有点类似于GAN,感觉有点模仿。

他的主要思路是这样的:

首先有两个神经网络,G和D。G(也就是host network)用来完成基本的操作,E用来检测某一个输出的图片是不是属于G的。在这个过程中输入G的图片在输出之后相当于把一个特定的水印加上去了(基本和GAN中的G网络的作用差不太多作者文中说的是“G aims to learn a mapping,which can be trained with an image dataset including lots of diverse image-pairs by supervised learning.”但其实本质上想做的还是generate an image),输出之后的图片作为输入给E网络(watermark-extraction network)。E网络的组成有三部分,E_A接受G的输入,和 E_B串联,B这部分就是输入密钥之后对密钥进行一些作用,最后串联的整个直接输入C部分。最后C的输出就是持有者在之前G网络中预设的某一个watermark,可以是自己的logo什么的。
在这里插入图片描述
训练过程的损失函数的设置:作者把损失分成了两类,一类是插入水印的损失函数,一类是task loss,task loss就是正常的loss。

watermark loss(L_w)由三类组成。先将所有images分成两类,一类是由G产生的(S_1),另一类是不是由G产生的(S_2)。因此要做到的第一点就是使得在当E提取S_1中的images之后,产生的水印要能够被提取出来:
在这里插入图片描述
第二点就是S_2里面的图片经过E之后只能提取出来不规则的噪声啦~
在这里插入图片描述
最后就是针对密钥的,如果密钥不正确的话,那水印提取的效果救会非常差(如下),这里的训练可以用好几个类别的密钥来逐次训练,当训练的时候让真实的密钥和虚假的密钥之间的距离小一点的时候,就能提高密钥的敏感度。
在这里插入图片描述
所以最终的watermark loss就是由这三部分组成的
在这里插入图片描述
当然他这里有要求,其实也就是先后级的要求,因为主要工作还是想提取水印,所以三个参数之间的大小关系要满足:α>β,α>γ。

文章后面插入了彩色和黑白的水印进图片,visual examples 我看来还是和原图有点明显的,但是据说是不影响G的分类功能(其实相当于是加了个噪声,影响不是特别大)。文章的后面部分就是很多的实验了,说明了这个水印方式对于cropping和noise adding之类的操作是可以使用的,这里我们不再细说。

其实这篇文章整体构思倒也没有那么难,算是有突破的,从之前常规的水印添加方式里面跳了出来,而且运用场景也更加宽。作者在文章最后说,这个的安全性取决于密钥的敏感性,但其实我在想用密钥的这种方式其实是比较容易导致歧义攻击的。文章中说他的密钥是一个二进制的串,长度有1024,在后面做实验设置的random key和实际上正确的key的差别只有8位的距离,敏感性非常高。但是我不太清楚他这个实验里面的random key到底是只选取了一个还是说所有距离八位以内的key的差别都很大(个人感觉应该是前面那种,不然实验成本也太大了)。但是改变的位数多说不定反而能生成其他的水印,所以对于歧义攻击感觉抵抗性可能不太有效(当然对于神经网络来说,使用传统的密码学的修改密钥的方式应该作用有限,另一方面,影响因素也太多了)。总体来说做的不错,但是水印提取这部分的效力有点超乎我的认知,感觉有点太好了。我以为实际上的E训练的时候会有点依赖于设置的水印(但是文章也没有给出S_2里面的image经过E之后是怎样的,有可能生成的会和设置的watermark有点接近?)这样后面攻击的话,插入类似原来图片的水印,攻击成功率应该会大一点。当然文章中好像也没给计算方面的信息,希望以后有机会能够自己上手做一下这个实验吧。当然也可能还是我看的太少了,对于神经网络还是知之甚少。加油!!

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值