[论文解读] Flipout: Efficient Pseudo-Independent Weight Perturbations on Mini-Batches
Flipout 在一个小批量内使梯度扰动去相关化,在多种架构下实现近似理想的 1/N 方差降低,并实现更快的大批量训练以及基于 GPU 的进化策略加速。
Stochastic neural net weights are used in a variety of contexts, including regularization, Bayesian neural nets, exploration in reinforcement learning, and evolution strategies. Unfortunately, due to the large number of weights, all the examples in a mini-batch typically share the same weight perturbation, thereby limiting the variance reduction effect of large mini-batches. We introduce flipout, an efficient method for decorrelating the gradients within a mini-batch by implicitly sampling pseudo-independent weight perturbations for each example. Empirically, flipout achieves the ideal linear variance reduction for fully connected networks, convolutional networks, and RNNs. We find significant speedups in training neural networks with multiplicative Gaussian perturbations. We show that flipout is effective at regularizing LSTMs, and outperforms previous methods. Flipout also enables us to vectorize evolution strategies: in our experiments, a single GPU with flipout can handle the same throughput as at least 40 CPU cores using existing methods, equivalent to a factor-of-4 cost reduction on Amazon Web Services.
研究动机与目标
- 动机:将随机权重扰动用于正则化、贝叶斯推断、探索和进化策略(ES)。
- 解决跨小批量样本共享扰动所导致的低效。
- 引入 Flipout,以去相关梯度同时保持无偏性。
- 提供适用于 GPU/TPU 的高效向量化实现。
- 展示在不同架构下的方差减小、正则化效益及加速效果。
提出的方法
- 假设扰动独立且关于零对称;证明扰动在随机符号翻转下的不变性。
- 定义 Flipout:每个样本的扰动 DeltaW_n = DeltaW_hat ∘ (r_n s_n^T),使用随机的±1向量 r_n, s_n。
- 通过证明分布等价于共享扰动,显示去相关化下仍然是无偏的梯度估计。
- 提供向量化前向传播公式 Y = φ(XW̄ + ((X ∘ S) ΔŴ) ∘ R) 以实现适合 GPU 的计算。
- 将梯度方差分解为 alpha、beta、gamma 项并分析,证明 Flipout 将方差降低到理想的 1/N 量级。
- 讨论对高斯扰动、DropConnect、LSTMs、CNNs 以及进化策略的应用,包括基于 GPU 的加速。
实验结果
研究问题
- RQ1通过 Flipout 的逐样本去相关,能否在不同网络类型(全连接 FC、卷积 CNN、循环神经网络 RNN)中实现无偏梯度估计并达到理想的 1/N 方差降低?
- RQ2在大批量场景和基于 GPU 的 ES 实现中,Flipout 如何影响训练速度和效率?
- RQ3Flipout 在多大程度上可以正则化递归连接(LSTMs)并提升相较于 dropout 基方法的性能?
- RQ4Flipout 的计算开销是多少,与共享扰动和局部重新参数化技巧相比如何?
主要发现
- Flipout 产生无偏梯度估计,并在全连接、卷积和 LSTM 架构中实现理想的 1/N 方差降低。
- 经验上,在大规模小批量设置中,Flipout 提供显著的方差降低并加速训练时间。
- 在语言模型任务中,Flipout 相对于 dropout 基方法对 LSTMs 的正则化更有效。
- Flipout 使 GPU 上的向量化进化策略成为可能,达到与云平台上较低成本的相当于 40 核 CPU 的吞吐量。
- 在大批量 Bayes by Backprop 实验中,Flipout 在迭代次数上比共享扰动约快 3x,由于开销,总体加速约 1.5x。
- 在各任务中,Flipout 相较于先前的扰动和基于 dropout 的方法表现出更快的收敛和有效的正则化。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。