Hendrycks D., Basart S., Mu N., Kadavath S., Wang F., Dorundo E., Desai R., Zhu T., Parajuli S., Guo M., Song D., Steinhardt J. Gilmer J. The many faces of robustness: a critical analysis of out-of-distribution generalization. arXiv preprint arXiv:2006.16241, 2020.

作者通过或采样或人造的数据集ImageNet Renditions, DeepFashion Remixed, StreetView StoreFronts来验证七个假设:

  1. 更大的模型能够提高鲁棒性;
  2. self-attention能够提高鲁棒性;
  3. diverse data augmentation 能够提高鲁棒性;
  4. 在更大更复杂的数据集上进行预训练能够提高鲁棒性;
  5. CNN更倾向于纹理信息, 这会破坏鲁棒性;
  6. 鲁棒性主要用在IID上的测试数据的正确率所反映(即提高泛化性的最有效途径是提高测试精度(IID上的));
  7. 人造数据所带来鲁棒性对于现实生活中j'kjk偏移没有帮助.

主要内容

ImageNet-R

ImageNet-R包含了ImageNet中的200个类的艺术加工后的结果:

注: 原ImageNet是不包含艺术加工后的数据的.

StreetView StoreFronts (SVSF)

SVSF是从 Google StreetView imagery中采样的数据集, 包含3种不同类型的分布迁移: 国家, 年份 和 拍摄硬件(摄像机).

训练集: 于2019年, 在美国/墨西哥/加拿大通过新式摄像系统拍摄的照片;

测试集:

Year Country Camera
1 2017 US/Mexico/Canada new
2 2018 US/Mexico/Canada new
3 2019 France new
4 2019 US/Mexico/Canada old

DeepFashion Remixed

DFR包括一个训练集和8个测试集, 测试集和训练集的差别在于在某个属性上有差异.

object size object occlusion camera viewpoint camera zoom
Training medium medium side/back no zoom-in
1 small medium side/back no zoom-in
2 large medium side/back no zoom-in
3 medium minimal side/back no zoom-in
4 medium heavy side/back no zoom-in
5 medium medium frontal no zoom-in
6 medium medium not-worn no zoom-in
7 medium medium side/back medium zoom-in
8 medium medium side/back large zoom-in

DeepAugment

DeepAugment算是一种特殊的augmentation, 即一个image-to-image的网络\(h(\cdot; \theta)\), 通过\(h(x; \theta + \delta)\), 网络参数上的扰动使得得到diverse的图片, 这些扰动包括: zeroing, negating, convolving, transposing, applying activation functions ...

实验结论

1,2,3,4四个假设对于ImageNet-C和真实的模糊图片是有效的, 但对于DFR, SVSF中的分布偏移却都不奏效. Larger Models和Diverse Data Augmentation对于ImageNet-R是有效果的(后者, 即 DeepAugment + AugMix的结果非常好).

对于CNN更偏向纹理信息, 从ImageNet-R中可以瞥见一二, 普通的CNN在ImageNet-R上的泛化性很差, 但是通过diverse data augmentation可以缓解这一问题(因为其在一定程度上打乱了纹理信息). 但是这类假设在DFR, SVSF却并不奏效, 这大概也说明texture bias并非是影响鲁棒性的唯一因素.

对于第六点, 虽然IID上的正确的确很重要, 但是正如上表所示, 大模型, diverse的数据增强对于泛化性很大的帮助(但是对于IID收效甚微).

对于最后一点, 即人造数据的作用, 显然人造数据的确是能够增加泛化性的, 虽然这类方法在面对地理偏移等时效果不明显.

代码

原文代码

The Many Faces of Robustness: A Critical Analysis of Out-of-Distribution Generalization (DeepAugment)的更多相关文章

  1. 如何搞定Critical Thinking写作?

    受中国传统教育模式与国外一流大学之间的差异的影响,在海外留学的学子们常常会在新的学习生活中面临许多难题,Critical Thinking就是其中之一.国内的教育方法常常以灌输式的教育模式为主,忽略了 ...

  2. Improving Adversarial Robustness Using Proxy Distributions

    目录 概 主要内容 proxy distribution 如何利用构造的数据 Sehwag V., Mahloujifar S., Handina T., Dai S., Xiang C., Chia ...

  3. cvpr2015papers

    @http://www-cs-faculty.stanford.edu/people/karpathy/cvpr2015papers/ CVPR 2015 papers (in nicer forma ...

  4. Atitit jsr规范有多少个  407个。Jsr规范大全

    Atitit jsr规范有多少个  407个.Jsr规范大全 1.1. JCP维护职能是发展和更新.1 1.2. Java技术规范.参考实现(RI).技术兼容包(TCK)1 1.3. JCP维护的规范 ...

  5. 一个TED演讲背后的文化论

    0. 前言 写这个前言让我很难受,当然不是心情难受哈,此时的状态是很High的哦,大中午觉都省了, 说难受是我觉得我这语言文字太渣了,相比今天的主题确实很没“文化”.但我也很庆幸,能 看到这么个人认为 ...

  6. 剖析虚幻渲染体系(14)- 延展篇:现代渲染引擎演变史Part 1(萌芽期)

    目录 14.1 本篇概述 14.1.1 游戏引擎简介 14.1.2 游戏引擎模块 14.1.3 游戏引擎列表 14.1.3.1 Unreal Engine 14.1.3.2 Unity 14.1.3. ...

  7. Kaggle竞赛顶尖选手经验汇总

    What is your first plan of action when working on a new competition? 理解竞赛,数据,评价标准. 建立交叉验证集. 制定.更新计划. ...

  8. Profiling Top Kagglers: Bestfitting, Currently #1 in the World

    We have a new #1 on our leaderboard – a competitor who surprisingly joined the platform just two yea ...

  9. Why many EEG researchers choose only midline electrodes for data analysis EEG分析为何多用中轴线电极

    Source: Research gate Stafford Michahial EEG is a very low frequency.. and literature will give us t ...

随机推荐

  1. VIM多标签页

    :tabnew 增加一个标签 :tabc       关闭当前的tab :tabo       关闭所有其他的tab :tabp 或gT 前一个 :tabn 或gt  后一个 :tabs     显示 ...

  2. Objective-C运行时定义了几种重要的类型

    Objective-C运行时定义了几种重要的类型. Class:定义Objective-C类 Ivar:定义对象的实例变量,包括类型和名字. Protocol:定义正式协议. objc_propert ...

  3. 浅谈iptables与firewalld防火墙

    iptables基于包过滤的防火墙工具 ,Linux 内核集成的 IP 信息包过滤系统,对流入和流出服务器的数据包进行精细管理 规则是存储在专用信息包过滤表中 防火墙按照规则做出判断 而netfilt ...

  4. 【Java 与数据库】JDBC中日期时间的处理技巧

    JDBC中日期时间的处理技巧 详谈Java.util.Date和Java.sql.Date 基础知识 Java中用类java.util.Date对日期/时间做了封装,此类提供了对年.月.日.时.分.秒 ...

  5. java 多线程的状态迁移 常用线程方法分析

    一.线程的各个状态 图中的线程状态(Thread.Stat 中定义的Enum 名)NEW.RUNNABLE .TERMINATED.WAITING.TIMED_WAITING 和BLOCKED 都能够 ...

  6. 通过静态分析和持续集成 保证代码的质量 (Helix QAC)1

    前言 现代软件开发团队面临着很多挑战,这些挑战包括:产品交付期限越来越紧,团队的分布越来越广,软件的复杂度越来越高,而且对软件的质量要求越来越高. 本文分为两个章节.第一章讨论持续集成的原理,持续集成 ...

  7. drone 使用git tag触发构建

    配置ref为tag .drone.yml中配置trigger为ref trigger: ref: - refs/tags/FileService 或者配置when为ref when: ref: - r ...

  8. 修复Apache Log4j任意代码执行漏洞安全风险通告

    2021年12月10日 0x01漏洞背景 Apache Log4j 是 Apache 的一个开源项目,Apache Log4j2是一个基于Java的日志记录工具.该工具重写了Log4j框架,并且引入了 ...

  9. 10、Redis三种特殊的数据类型

    一.Geospatail地理位置 1.Geospatail的应用 朋友的位置,附近的人,打车距离 2.相关命令 1.geoadd:增加某个地理位置的坐标(可批量添加). 语法: GEOADD key ...

  10. 项目集成seata和mybatis-plus冲突问题解决方案:(分页插件失效, 自动填充失效, 自己注入的id生成器失效 找不到mapper文件解决方案)

    项目集成seata和mybatis-plus,seata与mybatis-plus冲突问题(所有插件失效,自动填充失效,找不到mapper文件解决方案) 自动填充代码: package com.fro ...