ON LARGE BATCH TRAINING FOR DEEP LEARNING: GENERALIZATION GAP AND SHARP MINIMA

Posted mtandhj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ON LARGE BATCH TRAINING FOR DEEP LEARNING: GENERALIZATION GAP AND SHARP MINIMA相关的知识,希望对你有一定的参考价值。

Keskar N S, Mudigere D, Nocedal J, et al. On Large-Batch Training for Deep Learning: Generalization Gap and Sharp Minima[J]. arXiv: Learning, 2016.

作者代码

@article{keskar2016on,
title={On Large-Batch Training for Deep Learning: Generalization Gap and Sharp Minima},
author={Keskar, Nitish Shirish and Mudigere, Dheevatsa and Nocedal, Jorge and Smelyanskiy, Mikhail and Tang, Ping Tak Peter},
journal={arXiv: Learning},
year={2016}}

本文主要阐述了一种现象, 就是在我们训练网络的时候, 小的batch_size会比大的batch_size效果更好(表现在准确率上).

主要内容

因为作者主要是进行实验论证的, 所以就介绍一下结果, 我们用LB表示大的batch_size, SB表示小的batch_size.

技术图片
作者认为, LB会导致参数尖化, 而SB会导致平坦的解, 个人感觉这种就是一个灵敏度的问题. 作者也说, LB会导致( abla^2 f(x))呈现某个特征值特别大(绝对值), 其余特征值很小的情况, 而SB的( abla^2 f(x))的特征值分布往往比较均匀.

注: 这里的(x)指的是网络的参数而非样本.

记LB训练后所对应的解为(x^*_l), 而SB训练后所对应的解为(x^*_s), 作者沿着俩个点的连续探索其landscape,

[f(ax^*_l+(1-a)x_s^*), quad a in [-1,2], ]

其结果如下
技术图片
技术图片

技术图片

显然, 在(alpha=1)处(即(x=x_l^*))左右的未知变化特别大, 这也反应了尖的特性.

一些解决办法

  1. data augmentation, 效果显著
  2. conservative training, 即采用proximal下降

[ ag{5} x_{k+1} = argmin_x frac{1}{|B_k|} sum_{i in B_k} f_i(x) + frac{lambda}{2} |x - x_k|_2^2, ]

其中(f_i)表示输入为第(i)个样本.
3. robust training, 即利用原样本和对抗样本进行训练, 但是效果不是很明显(有可能是Goodfellow的机制不对? 新的是不需要利用原样本的).

以上是关于ON LARGE BATCH TRAINING FOR DEEP LEARNING: GENERALIZATION GAP AND SHARP MINIMA的主要内容,如果未能解决你的问题,请参考以下文章

16 On Large-Batch Training for Deep Learning: Generalization Gap and Sharp Minima 1609.04836v1(示例代码

论文笔记:On Large-Batch Training for Deep Learning: Generalization Gap and Sharp Minima

什么情况下使用large training data会非常有效

E - Distance on Large Perfect Binary Tree(数学&LCA)

LARGE SCALE GAN TRAINING FOR HIGH FIDELITY NATURAL IMAGE SYNTHESIS

GPT-2隐私泄露论文阅读:Extracting Training Data from Large Language Models