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. 一起手写吧!Promise!

    1.Promise 的声明 首先呢,promise肯定是一个类,我们就用class来声明. 由于new Promise((resolve, reject)=>{}),所以传入一个参数(函数),秘 ...

  2. 【原创】Altium生成Gerber时跳出The Film is too small for this PCB的解决办法

    在用altium Designer画板子的时候,要生成gerber文件的时候,会出错,出现这样的提示框:"The Film is too small for this PCB" 原 ...

  3. c学习 - 第七章:数组

    7.3.6 字符串处理函数 (1).puts(字符数组) 字符串输出到终端 (2).gets(字符数组) 从标准输入获取字符串(包括空格) (3).strcat(字符数组1,字符数组2) 连接两个字符 ...

  4. mybatis-扩展

    分页插件 使用pageHelper参考官方https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse. ...

  5. 数据源(Data Source

    数据源(Data Source)顾名思义,数据的来源,是提供某种所需要数据的器件或原始媒体.在数据源中存储了所有建立数据库连接的信息.就像通过指定文件名称可以在文件系统中找到文件一样,通过提供正确的数 ...

  6. 【前端】关于DOM节点

    参考这个: https://juejin.cn/post/6844903849614901261 DOM树的根节点是document对象 DOM节点类型:HTML元素节点(element nodes) ...

  7. 【阿菜做实践】利用ganache-cli本地fork以太坊主链分叉

    前言 Fork主网意思是模拟具有与主网相同的状态的网络,但它将作为本地开发网络工作. 这样你就可以与部署的协议进行交互,并在本地测试复杂的交互.不用担心分叉主网作为测试链会占很多内存.这些方法都不会将 ...

  8. Go语言核心36讲(Go语言实战与应用二十五)--学习笔记

    47 | 基于HTTP协议的网络服务 我们在上一篇文章中简单地讨论了网络编程和 socket,并由此提及了 Go 语言标准库中的syscall代码包和net代码包. 我还重点讲述了net.Dial函数 ...

  9. 🔥🔥🔥Flutter 字节跳动穿山甲广告插件发布 - FlutterAds

    前言 Flutter 已成为目前最流行的跨平台框架之一,在近期的几个大版本的发布中都提到了 Flutter 版本 Google 广告插件 [google_mobile_ads] .对于"出海 ...

  10. iOS 实现简单的界面切换

    以下是在iOS中最简单的界面切换示例.使用了多个Controller,并演示Controller之间在切换界面时的代码处理. 实现的应用界面: 首先,创建一个window-based applicat ...