DEEP DOUBLE DESCENT: WHERE BIGGER MODELS AND MORE DATA HURT
@article{nakkiran2019deep,
title={Deep Double Descent: Where Bigger Models and More Data Hurt},
author={Nakkiran, Preetum and Kaplun, Gal and Bansal, Yamini and Yang, Tristan and Barak, Boaz and Sutskever, Ilya},
journal={arXiv: Learning},
year={2019}}
概
本文介绍了深度学习中的二次下降(double descent)现象, 利用实验剖析其可能性.
主要内容
注意到, 在其他条件固定的情况下, 当网络的性能增加(这里指的是ResNet18的参数个数)时, 会出现一中损失率先下降在上升至一个peak再下降的过程.
而右图则向我们展示了, epochs并非越多越好, 如果我们能够即时停止训练, 很有可能就能避免二次下降的现象.
Effective Model Complexity(EMC)
在训练过程\(\mathcal{T}\), 关于数据分布\(\mathcal{D}\)与参数\(\epsilon\)下, Effective Model Complexity(EMC)定义为:
\]
其中\(\mathrm{Error}_S(M)\)为模型\(M\)在训练样本\(S\)上的平均误差.
作者认为, 一个模型\(M\), 训练样本为\(n\), \(\mathrm{EMC}\) 比\(n\)足够小, 或者足够大的时候, 提升\(\mathrm{EMC}\) (即提升模型的性能) 是能够降低测试误差(test error)的, 但是, 在\(n\)的附近\((n-\delta_1,n+\delta_2)\)时候, 模型的变化, 既有可能使得模型变好, 也有可能使得模型便坏.
label noise
显然, label noise越小越好( 作者认为label noise 会导致模型不易训练), 而且网络的EMC越大(这里指的是网络的参数个数), 对其抗性越好.
data augmentation
显然 data augmentation 能够增加对label noise的抗性.
下降方式
只能说, 下降方式是有较大影响的.
SGD vs Adam
Adam
SGD
SGD + Momentum
early-stopping
即如果我们能够及早停止训练(适中的epoches)能够避免二次下降的发生, 这一点在Fig 20中体现的淋漓尽致. 但是也并不绝对, 因为Fig 19提供了一个反例.
Epoches
显然, 适中的或者尽可能多的epoches是好的.
样本数量
对于小型的模型, 增加数据(超出其承受范围)反而会使得模型变差.
weight-decay
weight-decay 对提升EMC是起作用的.
DEEP DOUBLE DESCENT: WHERE BIGGER MODELS AND MORE DATA HURT的更多相关文章
- 论文阅读笔记六十四: Architectures for deep neural network based acoustic models defined over windowed speech waveforms(INTERSPEECH 2015)
论文原址:https://pdfs.semanticscholar.org/eeb7/c037e6685923c76cafc0a14c5e4b00bcf475.pdf 摘要 本文研究了利用深度神经网络 ...
- 【Deep Learning】Hinton. Reducing the Dimensionality of Data with Neural Networks Reading Note
2006年,机器学习泰斗.多伦多大学计算机系教授Geoffery Hinton在Science发表文章,提出基于深度信念网络(Deep Belief Networks, DBN)可使用非监督的逐层贪心 ...
- Google TensorFlow深度学习笔记
Google Deep Learning Notes Google 深度学习笔记 由于谷歌机器学习教程更新太慢,所以一边学习Deep Learning教程,经常总结是个好习惯,笔记目录奉上. Gith ...
- Why are very few schools involved in deep learning research? Why are they still hooked on to Bayesian methods?
Why are very few schools involved in deep learning research? Why are they still hooked on to Bayesia ...
- Classifying plankton with deep neural networks
Classifying plankton with deep neural networks The National Data Science Bowl, a data science compet ...
- How To Improve Deep Learning Performance
如何提高深度学习性能 20 Tips, Tricks and Techniques That You Can Use ToFight Overfitting and Get Better Genera ...
- [C7] Andrew Ng - Sequence Models
About this Course This course will teach you how to build models for natural language, audio, and ot ...
- (转) An overview of gradient descent optimization algorithms
An overview of gradient descent optimization algorithms Table of contents: Gradient descent variants ...
- A Statistical View of Deep Learning (IV): Recurrent Nets and Dynamical Systems
A Statistical View of Deep Learning (IV): Recurrent Nets and Dynamical Systems Recurrent neural netw ...
随机推荐
- ace
ace An ace is a playing card, die or domino with a single pip. In the standard French deck, an ace h ...
- Hive(十)【窗口函数】
目录 一.定义 窗口函数: 标准聚合函数 分析排名函数 二.语法 (1)窗口函数 over([partition by 字段] [order by 字段] [ 窗口语句]) (2)窗口语句 三.需求练 ...
- IPv6 私有地址
在互联网的地址架构中,专用网络是指遵守RFC 1918(IPV4)和RFC 4193(IPV6)规范,使用专用IP地址空间的网络.私有IP无法直接连接互联网,需要使用网络地址转换(Network Ad ...
- java代码定时备份mysql数据库及注意事项——基于 springboot
源码地址: https://gitee.com/kevin9401/BackUpDataBase git 拉取: https://gitee.com/kevin9401/BackUpDataBase. ...
- Oracle 表结构管理
表其实是数据的'容器'.oracle有几种类型的表: 普通表(ordinary table)又叫堆组织表. 聚簇表(clustered table) 分区表(partition table) 外部表( ...
- react-native安卓运行报错:The number of method references in a .dex file cannot exceed 64K.
错误原因:App里面方法数超过64K解决方法:在android/app/build.gradle中添加implementation 'com.android.support:multidex:1.0. ...
- react中在hooks方法useEffect中加载异步数据
useEffect( ()=>{ (async function getPipeList(value:any) { let result= await GetPipeList(value); s ...
- 3、Spring的DI依赖注入
一.DI介绍 1.DI介绍 依赖注入,应用程序运行依赖的资源由Spring为其提供,资源进入应用程序的方式称为注入. Spring容器管理容器中Bean之间的依赖关系,Spring使用一种被称为&qu ...
- dart系列之:实时通讯,在浏览器中使用WebSockets
目录 简介 dart:html中的WebSockets 创建一个WebSocket WebSocket的状态 发送消息 处理WebSocket事件 总结 简介 web客户端和服务器端通信有两种方式,一 ...
- tcache poisoning(爆破stout获得libc并且熟练使用了realloc)
这道题目帮助我学习了realloc这个函数,是一道十分经典的题目,我会尽量的把exp的每一步都说清楚 例行检查我就不放了 讲程序放入ida中 比较简单的流程,没有show功能,所有我们需要通过爆破st ...