clean-label backdoor attacks 论文笔记

news2024/12/25 1:07:47

#论文笔记#

1. 论文信息

论文名称Clean-Label Backdoor Attacks
作者Alexander Turner(MIT)
会议/出版社ICLR 2019
pdf本地pdf 在线pdf
代码
trojanzoo-clean-label**** Label-Consistent
其他这篇文章和 Label-Consistent Backdoor Attacks 基本相同

简介:这篇文章是最早做干净标签下的后门攻击的文章。作者在 BadNets 上进行了一系列的实验证明在以往的方法中直接使用 clean-label 会导致攻击的失败。为了实现在 clean-label 下的攻击,作者使用了 GAN-based interpolation 和 adversarial p-bounded perturbations 来增加分类器的训练难度,让分类器学习到更多 backdoor 的信息。

2. introduction

以往的后门攻击方法是在数据上加入 backdoor trigger,并且更改该数据的标签。这种做法存在的问题是,通过人工检查可以轻易识别出异常的标签。所以本文提出了一种无需改变加毒数据集即可实现后门攻击的方法,称之为 clean-label attack。

因为是进行 target attack,最简单的想法就是在 target 类中加入 backdoor trigger。但是作者目标类中加入 badnet 的 backdoor trigger 进行实验。发现这种进攻是无效的。

在这里插入图片描述

  • 由上图可以看出,当 Posion rate 达到 25% 时也只有 50% 的攻击成功率
  • 本文选择的 trigger 是来源于 badnet 的攻击方法

这是因为模型在学习时,只有一小部分图像存在 trigger ,并且模型更倾向于学习图片中的自然特征,所以 trigger 很容易被忽略。无法与 target label 建立起强的关联。

这篇文章为了解决这个问题,提了要让模型学习目标类的特征更加困难,使得模型学习目标类时更加依赖于 trigger,使得 trigger 更容易与 target label 关联。

文章提出了两种方法,第一种是基于 GAN 的方法,一种是基于 Adversarial examples 的方法

3. method

方法一:Latent space interpolation using GANs

通过生成模型去生成一些带有噪声目标类的样本,增大目标类的学习难度。

首先在训练集上训练一个生成器,生成模型可以学习到样本分布的 latent space

选取目标类 x 1 x_1 x1 , 非目标类 x 2 x_2 x2,通过插值的方法生成带有噪声的目标类图片

I G ( x 1 , x 2 , τ ) = G ( τ z 1 + ( 1 − τ ) z 2 ) , I_{G}\left(x_{1}, x_{2}, \tau\right)=G\left(\tau z_{1}+(1-\tau) z_{2}\right), \quad IG(x1,x2,τ)=G(τz1+(1τ)z2), where z 1 = E G ( x 1 ) , z 2 = E G ( x 2 ) z_{1}=E_{G}\left(x_{1}\right), z_{2}=E_{G}\left(x_{2}\right) z1=EG(x1),z2=EG(x2).

在这里插入图片描述

通过实验得出 τ \tau τ 的最佳值,既能让目标类难以学习,又能让人眼难以察觉

方法二:Adversarial examples bounded in lp-norm

最大化目标类样本和目标类标签,优化对抗扰动。使得目标类更难学习

x a d v = argmax ⁡ ∥ x ′ − x ∥ p ≤ ϵ ( x ′ , y , θ ) x_{a d v}=\underset{\left\|x^{\prime}-x\right\|_{p} \leq \epsilon}{\operatorname{argmax}}\left(x^{\prime}, y, \theta\right) xadv=xxpϵargmax(x,y,θ)

在这里插入图片描述

不同情况下的 backdoor image 的视觉效果对比

在这里插入图片描述

4. experiments

  • 数据集:cifar-10
  • 实验结果:
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/25753.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java内部类解析

作者:~小明学编程 文章专栏:JavaSE基础 格言:目之所及皆为回忆,心之所想皆为过往 目录 什么是内部类 静态内部类 静态内部类访问外部类的规则 外部类访问静态内部类的规则 实例化静态内部类 非静态内部类 内部类访问外部类…

【网安神器篇】——hydra爆破工具

作者名:Demo不是emo 主页面链接:主页传送门创作初心:舞台再大,你不上台,永远是观众,没人会关心你努不努力,摔的痛不痛,他们只会看你最后站在什么位置,然后羡慕或鄙夷座右…

2.16 这些都是我常用的修图工具【玩赚小红书】

一、美图秀秀 P图、拼图、贴纸文字、抠图、视频剪辑等该有的功能都有,有很多现成的高颜值模板可以直接套用。 软件官网:https://pc.meitu.com/ 支持:windows,linux,苹果,安卓手机,苹果手机 ​…

是js高级啊~

JavaScript高级 1.函数 1.1. this绑定规则优先级 隐式绑定的this 大于 默认的this显式绑定的this 大于 隐式绑定的thisnew绑定this 大于 隐式绑定的thisnew绑定的this 大于 bind绑定的优先级bind绑定的this 大于 apply、call绑定的this 备注: new关键字不可以和…

使用idea工具实现新建java项目并连接mysql数据库

1.新建java项目 如果刚打开idea工具,则选择Create new Project。 在里新建使用File > New > Project 新建package包和class文件 右键src > new > package后输入包名 在刚建的包下右键选择 new > Java class后并输入类名 链接mysql Java 连…

win10系统下使用opencv-dnn部署yolov5模型

文章目录前言一、环境1、硬件2、软件二、YOLO模型三、新建Qt项目1、pro文件2、main函数四、YOLO 类封装1、yolo.h2、yolo.cpp3、classes.txt五、效果前言 最近工作中需要用yolov5训练模型,然后在win10系统下,完成推理部署。本篇主要介绍使用opencv-dnn模…

7判断环的入口结点8输出倒数第k个

7.判断环的入口结点 第一次第二次看感觉都无从下手,还是看了题解,主要思路是: 假设前面无环的结点有a个,环有b个结点,则设置快慢结点之后,fast结点一次走两步,slow结点一次走一步。则相遇时fast…

《第一行代码》核心知识点:活动(Activity)的儿子叫碎片(Fragment)

《第一行代码》核心知识点:活动Activity的儿子叫碎片Fragment前言四、活动(Activity)的儿子叫碎片(Fragment)4.1 碎片是神马?4.2 碎片的基本使用4.3 向容器中动态添加碎片4.4 活动与碎片之间通信方法4.5 碎片的生命周期4.6 使用限…

重载单目运算符以及重载运算符的注意事项

一、单目运算符的重载 单目运算符可分为两种: 1)可以放在前面,也可以放在后面的单目,如: -- 2)只能放在前面的运算符:! (正号) -(负号&#x…

Python函数详解(四)——Python函数参数使用注意事项

今天继续给大家介绍Python相关知识,本文主要内容是Python函数参数使用注意事项。 在上文Python函数详解(三)——函数的参数传递进阶中,我们学习了函数参数的进阶内容。今天,我们来学习函数的参数使用注意事项。 一、P…

【微信小程序】使用 Cryptiojs 解密微信绑定手机号码

很抱歉断更了一段时间,因为最近在做一个项目比较忙,正好项目中小程序板块需要解密手机号码来提交给接口,小程序中虽然提供了获取手机号按钮点击事件:bindgetphonenumber,但是该事件的处理函数中只能获取到加密过的手机…

关于如何调节Mahony AHRS算法的参数

文章目录一、Mahony算法的控制系统特征多项式二、Kp, Ki参数调节方法三、其他自适应调参法我在之前的博客AHRS互补滤波(Mahony)算法及开源代码中曾提及Mahony算法的难点在于如何调节PI参数。 最近看到参考文献[1],提出了基于无阻尼自由频率设…

C# 将一种类型的数组转换为另一种类型的数组

将一种类型的数组转换为另一种类型的数组 public static TOutput[] ConvertAll<TInput, TOutput>(TInput[] array, Converter<TInput, TOutput> converter); 参数: array: 要转换为目标类型的从零开始的一维 System.Array。 converter: …

【数据结构与算法】杨辉三角,相同字符的截取以及扑克牌

✨个人主页&#xff1a;bit me ✨当前专栏&#xff1a;数据结构 ✨每日一语&#xff1a;不要等到了你的人生垂暮&#xff0c;才想起俯拾朝花&#xff0c;且行且珍惜。 ArrayList题训&#x1f335; 一. 杨辉三角&#x1f334;二.相同字符的截取&#x1f332;三.扑克牌&#x1f…

【SpringCloud】02 搭建springcloud微服务项目,服务治理组件nacos,负载均衡ribbon,远程调用Openfeign

文章目录搭建springcloud微服务项目1. 微服务父工程2. 创建子模块-shop-common3. 创建子模块--shop-product4. 创建子模块--shop-order服务治理组件1. 如何使用nacos2. 微服务客户端连接到nacos注册中心3. 消费端如何通过nacos调用提供者负载均衡1. 自己控制负载均衡2. ribbon完…

Nginx配置SSL证书

目录 获得证书 步骤一&#xff1a;购买证书 步骤二&#xff1a;申请证书 ​编辑 下载证书及证书转换&#xff1a;​编辑 配置SSL证书 在Nginx目录下新建certificate目录&#xff0c;并将下载好的证书/私钥等文件上传至该目录&#xff08;与配置文件同级目录&#xff09;。…

LiDAR点云转换到大地坐标系——简单粗标定

目录一、LiDAR和IMU位姿标定1.1安装角度标定1.2安装位置标定1.3部分代码二、点云转换到当地水平坐标系2.1基本理论2.1.1坐标系2.1.1.1激光雷达2.1.1.2导航坐标系/当地水平坐标系/大地坐标系2.1.2惯性传感器原理2.2点云转换试验2.2.1试验场地2.2.2试验内容2.2.3点云变换效果Wind…

C语言日记 37 类的友元(1)(全局函数做友元)

根据36 类和对象-友元-全局函数做友元_哔哩哔哩_bilibili复现出如下代码&#xff1a; 一、&#xff08;只是&#xff09;访问&#xff08;公开&#xff09;内部成员&#xff1a; #include <iostream> using namespace std; class Building { private:int ws;//卧室 pub…

NewStarCTF 公开赛-web

week1 HTTP cookie 修改admin 源码发现key GET和POST传参即可 Head?Header! User-Agent: CTF Referer: ctf.com X-Forwarded-For: 127.0.0.1我真的会谢 信息泄露 robots.txt www.zip 源码 /.index.php.swp NotPHP 函数绕过 if(file_get_contents($_GET[data]) &qu…

数据备份一般有哪些方式,如何进行数据备份

在如今这个时代&#xff0c;数据于我们而言是特别重要的&#xff0c;一旦发生丢失&#xff0c;可能会带来严重后果&#xff0c;如果你也很苦恼如何保证这些重要数据的安全&#xff0c;小编建议一定要对重要数据进行备份&#xff0c;以防发生丢失的意外。数据备份一般有哪些方式…