使用少量数据去除神经网络中的水印 -- WILD

使用少量数据去除神经网络中的水印 – WILD

简介

这次介绍一篇文章, 名为Removing Backdoor-Based Watermarks in Neural Networks with Limited Data

针对现有的利用后门攻击在神经网络中构建水印的工作,该文章主要是提出了一个去除水印的框架。

关于后门攻击,你可以查看我的这篇文章

首先我们来看一下水印是怎么来的,如下图所示

watermark-pipeline

首先,我们通过对训练数据进行投毒,构建出一个带水印的模型,使得:模型一旦接受到带有水印的输入,则会输出一个预定义的标签,标识出水印的存在

WILD框架

文章提出了一个名为WILD的框架,用于去除网络中的水印,我们来看看框架的大致情形

wild-framework

如上图所示,该框架的数据输入有两个部分:

  • 干净的数据,即 d c l e a n d_{clean} dclean
  • 扩增后的数据,即 d a u g d_{aug} daug

我们可以看到,最终产生的误差包括两个部分:

  • 扩增后的数据的基础误差,即 L a u g \mathcal{L}_{aug} Laug
  • 扩增数据和正常数据的距离误差,即 D ( G ( d a u g ) , G ( d c l e a n ) ) \mathcal{D}(\mathcal{G}(d_{aug}),\mathcal{G}(d_{clean})) D(G(daug),G(dclean))

其中,函数 D \mathcal{D} D 是一个距离度量函数,函数 G \mathcal{G} G 是一个特征映射函数,即 G ( x ) \mathcal{G}(x) G(x) 会将 x x x 映射到一个特征向量。

对于 G \mathcal{G} G ,一个最简单的例子就是,用ImageNet进行Pretrain的VGG网络的倒数第一层的输出

实验评估

文章在三种不同类型的水印上进行训练和测试, 如下图所示:

watermark-types

分为三种:

  • 基于内容的:即直接对某个区域进行修改,将整个区域的像素值改为某个固定值
  • 基于噪声的:属于整体上的修改,添加高斯噪声
  • 无关的:比如用训练集类别之外的数据

我们来看看在CIFAR-10上的表现:

image-20210429162726607

可以看到,在无关的水印上,所有方法的去除表现最差;在基于噪声的水印上,所有方法的去除表现最好

对比先前的方法REFIT,水印的去除效果更加明显。

Refit: a unified watermark removal framework for deep learning systems with limited data

在基于内容和基于噪声的水印上,基本上只要10%的数据,就可以实现不错的去除效果了。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值