DNN、CNN和RNN的12种主要dropout方法的数学和视觉解释(三)

简介: DNN、CNN和RNN的12种主要dropout方法的数学和视觉解释(三)

Cutout

image.png

让我们更深入地研究克服相邻像素高度相关这一事实的方法。可以在区域中应用它们,而不是在每个特征图上应用伯努利遮罩。这是T. DeVries和G. W. Taylor提出的Cutout方法。

上一次以猫图像为例:该方法可以通过隐藏图像区域来进行泛化,从而限制过拟合。我们最终得到的图像是猫头掉落的地方。这迫使CNN识别描述猫的不太明显的属性。

同样在本节中没有数学。这种方法在很大程度上取决于我们的想象力:正方形区域,矩形,圆形,所有要素地图,一次或可能多次……取决于您。

Max-Drop

最后,总结本节有关CNN的过程,我必须指出,显然可以组合几种方法。当我们知道不同的方法时,这就是使我们变得强大的原因:我们可以同时利用它们的好处。这就是S. Park和N. Kwak提出的最大下降方法

image.png

这种方法在某种程度上是Pooling Dropout和Gaussian Dropout的混合。删除是在最大池化层上执行的,但是使用贝叶斯方法。

image.png

在他们的论文中,他们证明了这种方法所产生的结果与使用Spatial Dropout一样有效。除了在每次迭代中,所有神经元都保持激活这一事实之外,这还限制了训练阶段的减速。这些结果是在µ = 0.02和σ²= 0.05的条件下获得的。

RNNDrop

image.png

好吧,我们已经看到了DNN和CNN的一些Dropout方法。该研究还试图找出哪种方法对递归神经网络(RNN)可能有效。它们通常依赖于LSTM,因此我将以RNN的这种特殊情况为例。它将可以推广到其他RNN。

问题很简单:在RNN上应用dropout很危险。从某种意义上说,RNN的目的是长期保留事件的记忆。但是经典的丢弃方法效率不高,因为它们会产生噪音,从而阻止这些模型长期保持记忆。将介绍的方法可以长期保留此内存。

image.png


T. Moon等人提出的RNNDrop 。是最简单的方法。伯努利遮罩仅应用于隐藏的单元状态。但是此掩码在序列之间彼此相同。这称为Dropout的按顺序采样。这仅表示在每次迭代中我们都会创建一个随机掩码。然后从一个序列到另一个序列,此掩码保持不变。因此,放置的元素仍然保留,而当前的元素仍然存在。而这在所有序列上。

Recurrent Dropout

image.png


S. Semeniuta等人提出的递归dropout。是一个有趣的变体。单元状态保持不变。Dropout仅应用于更新单元状态的部分。因此,在每次迭代中,伯努利的遮罩都会使某些元素不再有助于长期记忆。但是内存没有改变。

Variational RNN dropout

image.png


最后,由Y. Gal和Z. Ghahramani提出的简单但有效的RNN Dropout 是在内部闸门之前应用基于序列的dropout。

Monte Carlo Dropout

仍然有很多不同的Dropout方法,但本文将在此处停止。最后,我发现了解Dropout方法不仅是正则化方法。

image.png

Dropout方法还可以提供模型不确定性的指标。 对于相同的输入,遇到缺失的模型在每次迭代中将具有不同的体系结构。这导致输出差异。如果网络相当笼统,并且共同适应受到限制,那么预测将分布在整个模型中。这会导致在每次迭代中使用相同输入的情况下输出的方差较小。研究此方差可以给出可以分配给模型的置信度的概念。这可以通过Y. Gal和Z. Ghahramani方法看到。

最后,直观地,通过随机地应用丢弃,我们可以看到给定神经元进行预测的效率或效率低下。根据这一观察,我们可以通过减少参数数量同时最小化性能下降来压缩模型。K.Neklyudov等。提出了一种使用变差丢弃DNN和CNN的方法。

引用

[1] G. E. Hinton, N. Srivastava, A. Krizhevsky, I. Sutskever, and R. R. Salakhutdinov, Improving neural networks by preventing co-adaptation of feature detectors

[2] L. Wan, M. Zeiler, S. Zhang, Y. LeCun, and R. Fergus, Regularization of neural networks using dropconnect

[3] L. J. Ba and B. Frey, Adaptive dropout for training deep neural networks

[4] S. Wang and C. Manning, Fast dropout training

[5] D. P. Kingma, T. Salimans, and M. Welling, Variational dropout and the local reparameterization trick

[6] Y. Gal, J. Hron, A. Kendall, Concrete Dropout

[7] H. Wu and X. Gu, Towards dropout training for convolutional neural networks

[8] J. Tompson, R. Goroshin, A. Jain, Y. LeCun, and C. Bregler, Efficient object localization using convolutional networks

[9] T. DeVries and G. W. Taylor, Improved regularization of convolutional neural networks with cutout

[10] S. Park and N. Kwak, Analysis on the dropout effect in convolutional neural networks

[11] T. Moon, H. Choi, H. Lee, and I. Song, Rnndrop

[12] S. Semeniuta, A. Severyn, and E. Barth, Recurrent dropout without memory loss

[13] Y. Gal and Z. Ghahramani, A theoretically grounded application of dropout in recurrent neural networks

[14] Y. Gal and Z. Ghahramani, Dropout as a bayesian approximation: Representing model uncertainty in deep learning

[15] K. Neklyudov, D. Molchanov, A. Ashukha, and D. P. Vetrov, Structured bayesian pruning via log-normal multiplicative noise

[16] A. Labach, H. Salehinejad, Survey of Dropout Methods for Deep Neural Networks

目录
相关文章
|
22天前
|
机器学习/深度学习 自然语言处理 异构计算
Python深度学习面试:CNN、RNN与Transformer详解
【4月更文挑战第16天】本文介绍了深度学习面试中关于CNN、RNN和Transformer的常见问题和易错点,并提供了Python代码示例。理解这三种模型的基本组成、工作原理及其在图像识别、文本处理等任务中的应用是评估技术实力的关键。注意点包括:模型结构的混淆、过拟合的防治、输入序列长度处理、并行化训练以及模型解释性。掌握这些知识和技巧,将有助于在面试中展现优秀的深度学习能力。
41 11
|
13天前
|
机器学习/深度学习 算法 TensorFlow
TensorFlow 2keras开发深度学习模型实例:多层感知器(MLP),卷积神经网络(CNN)和递归神经网络(RNN)
TensorFlow 2keras开发深度学习模型实例:多层感知器(MLP),卷积神经网络(CNN)和递归神经网络(RNN)
|
15天前
|
机器学习/深度学习 人工智能 自然语言处理
|
2月前
|
机器学习/深度学习 自然语言处理 并行计算
神经网络结构——CNN、RNN、LSTM、Transformer !!
神经网络结构——CNN、RNN、LSTM、Transformer !!
147 0
|
2月前
|
机器学习/深度学习 PyTorch 算法框架/工具
探索未来的视觉革命:卷积神经网络的崭新时代(二)
探索未来的视觉革命:卷积神经网络的崭新时代(二)
探索未来的视觉革命:卷积神经网络的崭新时代(二)
|
2月前
|
机器学习/深度学习 自然语言处理 计算机视觉
探索未来的视觉革命:卷积神经网络的崭新时代(一)
探索未来的视觉革命:卷积神经网络的崭新时代(一)
探索未来的视觉革命:卷积神经网络的崭新时代(一)
|
3月前
|
机器学习/深度学习 编解码
YOLOv5改进 | 2023主干篇 | RepViT从视觉变换器(ViT)的视角重新审视CNN
YOLOv5改进 | 2023主干篇 | RepViT从视觉变换器(ViT)的视角重新审视CNN
78 0
|
5月前
|
机器学习/深度学习 人工智能 算法
深度学习及CNN、RNN、GAN等神经网络简介(图文解释 超详细)
深度学习及CNN、RNN、GAN等神经网络简介(图文解释 超详细)
188 1
|
5月前
|
机器学习/深度学习 自然语言处理 TensorFlow
tensorflow循环神经网络(RNN)文本生成莎士比亚剧集
我们将使用 Andrej Karpathy 在《循环神经网络不合理的有效性》一文中提供的莎士比亚作品数据集。给定此数据中的一个字符序列 (“Shakespear”),训练一个模型以预测该序列的下一个字符(“e”)。通过重复调用该模型,可以生成更长的文本序列。
|
2天前
|
机器学习/深度学习 自然语言处理 PyTorch
使用Python实现循环神经网络(RNN)的博客教程
使用Python实现循环神经网络(RNN)的博客教程
21 1

热门文章

最新文章