热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[论文理解]对抗性例子可用于改善图像识别AdversarialExamplesImproveImageRecognition

1.几个问题1.1基本信息CVPR20201.2做了什么提出了AdvProp1.3实现方法&创新性对抗性例子用auxiliaryBN处理,干净例子用mai

在这里插入图片描述

1.几个问题


1.1 基本信息

CVPR 2020

1.2 做了什么

提出了AdvProp

1.3 实现方法 & 创新性

对抗性例子用auxiliary BN处理,干净例子用main BN进行处理。解决二者混合导致的数据分布失真。

1.4 代码链接

Github

2.数学部分 & 模型构建


2.1 现有问题 & 解决方法

现有问题

  1. 以往的研究表明,对抗性样本训练可以提高模型的泛化能力,但仅限于某些情况,这种改进要么在完全监督的情况下对小数据集(如MNIST)进行,要么在较大的数据集(但在半监督环境下)上观察到。
  2. 在大数据集下,采用对抗性训练还会减低对清洁数据识别的准确率。
  3. 现有的对抗性训练的模型本质上没有区别,因为我们假设清洁示例和对抗性示例之间的分布是不匹配的(distribution mismatch)。

解决方法
对对抗性例子和干净例子进行处理,让二者分布接近。

2.2 对抗性训练的目标函数

传统CNN
在这里插入图片描述

对抗性CNN(Madry’s adversarial training framework)
在这里插入图片描述
其中DDD是潜在的数据分布,LLL是损失函数,θ\thetaθ是网络参数,xxx是带有真实标签yyy的数据,ε\varepsilonε是加性对抗扰动,SSS是允许的扰动范围。

改进后的对抗性训练CNN

然而,Madry优化函数具有一定的约束。Madry的对抗性训练min的对象只有max L,而max L对应的只是负面例子带来的损失,且max L不能反映L的全局,比较片面。加上L之后,既能改善max的片面性,又能考虑到原本对正面例子的损失,因此更加全面。

在这里插入图片描述

等式 3

虽然理论上改进后的模型能同时从对抗性和干净样本中获得好处。然而可能由于而这两个数据分布不匹配,上式中的模型效果并没有特别好。

2.3 借助Auxiliary BN进行解纠缠学习

Batch Normalization 可以对每个batch中的数据进行归一化处理,使之分布更加一致,从而提高学习效率,这和本文中要改善对抗性数据和干净样本数据的分布的目标是一致的。

使用BN的一个内在假设是,输入特征应该来自单个或类似的分布,否则会出大问题。

在这里插入图片描述
论文作者认为,对抗性的例子和干净的图像有不同的潜在分布,并且等式(3)中的对抗性训练框架本质上是一个两成分混合分布。如果采取图3中传统CNN的结构,把对抗性数据和干净数据同时输入一个BN,由于二者的分布不同,BN的输出会导致虚假的分布。然而,如果采用两个BN分别对两种分布不同的数据分别进行处理,最后的结果就会好很多。

在这里插入图片描述


推荐阅读
  • Commit1ced2a7433ea8937a1b260ea65d708f32ca7c95eintroduceda+Clonetraitboundtom ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • FeatureRequestIsyourfeaturerequestrelatedtoaproblem?Please ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • SpringBoot整合SpringSecurity+JWT实现单点登录
    SpringBoot整合SpringSecurity+JWT实现单点登录,Go语言社区,Golang程序员人脉社 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • 本文讨论了使用差分约束系统求解House Man跳跃问题的思路与方法。给定一组不同高度,要求从最低点跳跃到最高点,每次跳跃的距离不超过D,并且不能改变给定的顺序。通过建立差分约束系统,将问题转化为图的建立和查询距离的问题。文章详细介绍了建立约束条件的方法,并使用SPFA算法判环并输出结果。同时还讨论了建边方向和跳跃顺序的关系。 ... [详细]
  • c语言\n不换行,c语言printf不换行
    本文目录一览:1、C语言不换行输入2、c语言的 ... [详细]
  • JavaSE笔试题-接口、抽象类、多态等问题解答
    本文解答了JavaSE笔试题中关于接口、抽象类、多态等问题。包括Math类的取整数方法、接口是否可继承、抽象类是否可实现接口、抽象类是否可继承具体类、抽象类中是否可以有静态main方法等问题。同时介绍了面向对象的特征,以及Java中实现多态的机制。 ... [详细]
  • 本文介绍了一种划分和计数油田地块的方法。根据给定的条件,通过遍历和DFS算法,将符合条件的地块标记为不符合条件的地块,并进行计数。同时,还介绍了如何判断点是否在给定范围内的方法。 ... [详细]
  • 本文讨论了在Spring 3.1中,数据源未能自动连接到@Configuration类的错误原因,并提供了解决方法。作者发现了错误的原因,并在代码中手动定义了PersistenceAnnotationBeanPostProcessor。作者删除了该定义后,问题得到解决。此外,作者还指出了默认的PersistenceAnnotationBeanPostProcessor的注册方式,并提供了自定义该bean定义的方法。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
author-avatar
Coco李可儿
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有