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

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

Standout

作为标准的Dropout方法,L。J. Ba和B. Frey引入的Standout 基于伯努利蒙版(我将根据它们遵循的分布来称呼这些蒙版,这会更简单)。区别在于神经元遗漏的概率p在该层上不是恒定的。它根据权重的值是自适应的。

image.png

这可以用于任何g激活函数,甚至可以是单独的神经网络。类似地,对于Ws可以是W的函数。然后对于测试阶段,我们通过存在概率进行平衡。

image.png

有点晦涩,所以让我们举个例子。他们在论文中表明,在实践中,信念网络权重可以近似为权重的仿射函数。例如,我将S型曲线的绝对值作为激活函数。

image.png


我们可以看到,权重越大,将忽略神经元的可能性就越大。这有力地限制了某些神经元可能具有的高预测能力。

Gaussian Dropout

应用于神经网络的Dropout方法列表不断增长。因此,在继续讲DNN之前,我想谈一谈最引人入胜的Dropout方法类别。

仅举几个例子,快速Dropout,变项Dropout或具体Dropout是从贝叶斯角度解释Dropout的方法。具体而言,我们没有使用伯努利蒙版,而是有一个蒙版,其元素是遵循高斯分布(正态分布)的随机变量。在这里,我将不进行大数定律的演示,这不是重点。因此,让我们尝试直观地理解这一点。

image.png

这几篇论文表明,我们可以用正常定律模拟我们的Dropout的伯努利掩码。但这有什么区别。一切都什么都没有。关于这些方法与由于过度适应和/或我们神经元的预测能力而导致的过度拟合的相关性,它没有改变。但是,与之前介绍的方法相比,它改变了训练阶段所需的执行时间。

从逻辑上讲,通过在每个迭代中省略具有缺失的神经元,在迭代过程中不会更新在迭代中省略的神经元。它们不存在。因此,训练阶段变慢了。另一方面,通过使用高斯Dropout方法,在每次迭代和每个训练样本中都暴露了所有神经元。这样可以避免减速。

image.png

在数学上,有一个与高斯掩码的乘法(例如,以伯努利定律标准偏差p(1-p)为中心的1)。通过在每次迭代中使所有神经元保持活动状态来随机加权其预测能力,从而模拟了Dropout现象。该方法的另一个实用优势集中于1:在测试阶段,与没有Dropout的模型相比,无需进行任何修改。

Pooling Dropout

image.png

图像或特征图的问题在于像素非常依赖于它们的邻居。简而言之,在猫的图片上,如果拍摄一个与其外衣相对应的像素,则所有相邻像素都将与同一外衣相对应。几乎没有差异。

因此,我们了解了标准Dropout方法的局限性。我们甚至可以说它效率低下,唯一带来的变化就是额外的计算时间。如果我们随机忽略图像上的像素,则几乎不会删除任何信息。省略的像素与其周围几乎相同。这意味着性能不佳,无法防止过拟合。

image.png

为什么不利用CNN中经常使用的池化呢?例如最大池化层。对于那些不知道的人:“最大池化层”是通过图片或(功能图)选择重叠区域的最大激活程度的滤镜。

image.png

Max-Pooling Dropout 是一种应用于H. Wu和X. Gu提出的CNN的丢弃方法。在执行合并操作之前,它将伯努利的遮罩直接应用于“最大池化层”内核。凭直觉,这允许最小化高活化剂的聚集。限制某些神经元的沉重预测能力是一个很好的观点。在测试阶段,然后可以根据存在的可能性对以前的方法进行加权。

image.png

以最大池化层为例,但其他池化层也可以这样做。例如,对于平均池化层,我们可以在训练阶段以相同的方式应用Dropout。然后在测试阶段,因为它已经是加权平均值,所以不会有任何变化。

Spatial Dropout

对于CNN,我们可以利用池化层。但是我们也可以遵循J. Tompson等人提出的Spatial Dropout 方法,变得更聪明。他们提议用经典的丢失方法来克服该问题,因为相邻像素高度相关。

image.png

除了可以在像素上随机应用滤除之外,我们还可以考虑对每个要素贴图应用滤除。如果我们以猫为例,那就像从图像中去除红色,然后将其强制推广到图像的蓝色和绿色。然后在接下来的迭代中将其他特征图随机删除。

我不知道如何正确地数学写作以使其易于理解。但是,如果您了解以前的方法,则不会有任何麻烦。在训练阶段,每个特征图都应用伯努利遮罩,其概率为p。然后在测试阶段,没有丢失,而是通过存在概率1-p进行加权。

目录
相关文章
|
7月前
|
机器学习/深度学习 自然语言处理 异构计算
Python深度学习面试:CNN、RNN与Transformer详解
【4月更文挑战第16天】本文介绍了深度学习面试中关于CNN、RNN和Transformer的常见问题和易错点,并提供了Python代码示例。理解这三种模型的基本组成、工作原理及其在图像识别、文本处理等任务中的应用是评估技术实力的关键。注意点包括:模型结构的混淆、过拟合的防治、输入序列长度处理、并行化训练以及模型解释性。掌握这些知识和技巧,将有助于在面试中展现优秀的深度学习能力。
247 11
|
1月前
|
机器学习/深度学习 自然语言处理 前端开发
前端神经网络入门:Brain.js - 详细介绍和对比不同的实现 - CNN、RNN、DNN、FFNN -无需准备环境打开浏览器即可测试运行-支持WebGPU加速
本文介绍了如何使用 JavaScript 神经网络库 **Brain.js** 实现不同类型的神经网络,包括前馈神经网络(FFNN)、深度神经网络(DNN)和循环神经网络(RNN)。通过简单的示例和代码,帮助前端开发者快速入门并理解神经网络的基本概念。文章还对比了各类神经网络的特点和适用场景,并简要介绍了卷积神经网络(CNN)的替代方案。
114 1
|
7月前
|
机器学习/深度学习 人工智能 移动开发
一文搞懂 FFN / RNN / CNN 的参数量计算公式 !!
一文搞懂 FFN / RNN / CNN 的参数量计算公式 !!
341 3
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
卷积神经网络(CNN):视觉识别的革命先锋
卷积神经网络(CNN)作为人工智能领域的一颗璀璨明珠,在计算机视觉中发挥着核心作用。CNN的发展历程展现了从生物学灵感到技术创新的转变,历经LeNet-5至AlexNet、VGGNet、ResNet等里程碑式的进步。其独特结构包括卷积层、池化层及全连接层,能够层层递进地提取特征并作出决策。CNN不仅在图像分类、目标检测等领域表现卓越,还在人脸识别、医学影像分析等方面展现出巨大潜力。尽管存在局限性,如对序列数据处理能力有限及解释性问题,但通过引入注意力机制、自监督学习等方法,CNN将持续演进,引领人工智能技术走向更加精彩的未来。
340 2
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
算法金 | 秒懂 AI - 深度学习五大模型:RNN、CNN、Transformer、BERT、GPT 简介
**RNN**,1986年提出,用于序列数据,如语言模型和语音识别,但原始模型有梯度消失问题。**LSTM**和**GRU**通过门控解决了此问题。 **CNN**,1989年引入,擅长图像处理,卷积层和池化层提取特征,经典应用包括图像分类和物体检测,如LeNet-5。 **Transformer**,2017年由Google推出,自注意力机制实现并行计算,优化了NLP效率,如机器翻译。 **BERT**,2018年Google的双向预训练模型,通过掩码语言模型改进上下文理解,适用于问答和文本分类。
167 9
|
5月前
|
机器学习/深度学习 PyTorch 算法框架/工具
图神经网络是一类用于处理图结构数据的神经网络。与传统的深度学习模型(如卷积神经网络CNN和循环神经网络RNN)不同,
图神经网络是一类用于处理图结构数据的神经网络。与传统的深度学习模型(如卷积神经网络CNN和循环神经网络RNN)不同,
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
计算机视觉借助深度学习实现了革命性进步,从图像分类到复杂场景理解,深度学习模型如CNN、RNN重塑了领域边界。
【7月更文挑战第2天】计算机视觉借助深度学习实现了革命性进步,从图像分类到复杂场景理解,深度学习模型如CNN、RNN重塑了领域边界。AlexNet开启新时代,后续模型不断优化,推动对象检测、语义分割、图像生成等领域发展。尽管面临数据隐私、模型解释性等挑战,深度学习已广泛应用于安防、医疗、零售和农业,预示着更智能、高效的未来,同时也强调了技术创新、伦理考量的重要性。
70 1
|
7月前
|
机器学习/深度学习 存储 算法
卷积神经网络(CNN)的数学原理解析
卷积神经网络(CNN)的数学原理解析
220 1
卷积神经网络(CNN)的数学原理解析
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
一文介绍CNN/RNN/GAN/Transformer等架构 !!
一文介绍CNN/RNN/GAN/Transformer等架构 !!
262 5
|
7月前
|
机器学习/深度学习 算法 TensorFlow
TensorFlow 2keras开发深度学习模型实例:多层感知器(MLP),卷积神经网络(CNN)和递归神经网络(RNN)
TensorFlow 2keras开发深度学习模型实例:多层感知器(MLP),卷积神经网络(CNN)和递归神经网络(RNN)

热门文章

最新文章

下一篇
DataWorks