深度学习网络大杀器之Dropout——深入解析Dropout

本文涉及的产品
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
简介: 本文详细介绍了深度学习中dropout技巧的思想,分析了Dropout以及Inverted Dropout两个版本,另外将单个神经元与伯努利随机变量相联系让人耳目一新。

首发地址:https://yq.aliyun.com/articles/68901


更多深度文章,请关注云计算频道:https://yq.aliyun.com/cloud


过拟合深度神经网DNN)中的一个常见问题:模型只学会训练集分类这些年提出的许多拟合问题解决方案;其中dropout具有简单并取得良好的结果

Dropout

7e31586d15d887ae0901452e2e1b1c6cb94f882e

上图为Dropout的可视化表示,左边是应用Dropout之前的网络,右边是应用了Dropout的同一个网络。

Dropout的思想是训整体DNN,并平均整个集合的结果,而不是训练单个DNNDNNs以概率P舍弃部分神经元其它神经元以概率q=1-p被保留舍去的神经元的输出都被设置为零。

引述作者

在标准神经网络中,每个参数的导数告诉应该如何改变,以致损失函数最后被减少因此神经元可以通过这种方式修正其他单的错误。但这可能导致复杂的协调,反过来导致过拟合,因为这些协调没有推广到未知数据。Dropout通过使其他隐藏单元存在不可靠来防止共拟合。

简而言之:Dropout在实践很好工作因为在训阶段阻止神经元的共适应。

Dropout如何工作

Dropout以概率p舍弃神经元并让其它神经元以概率q=1-p保留。每个神经元被关闭的概率是相同的。这意味着:

假设:

h(x)=xW+bdi维的输入xdh维输出空间上的线性投影;

a(h)是激活函数

在训练阶段中,将假设的投影作为修改的激活函数:

650f8f00ffeb3ef346a61ee248670abe173c4acb

其中D=(X1,...,Xdh)dh维的伯努利变量Xi伯努利随机变量具有以下概率质量分布:

32363b313f65d3bf4231c5c57eace39d6fb7cb2c

其中k是可能的输出。

Dropout应用在第i个神经元上:

8899c12575bca1550dfd8127fd7eb0a2912a8f2a

其中P(Xi=0)=p

由于在训练阶段神经元保持q概率,在测试阶段必须仿真出在训练阶段使用的网络集的行为。

为此,作者建议通过系数q来缩放激活函数:

训练阶段fdb59b52bfa583cf08eaf7980e26e8fad453d148

测试阶段d6a2b220ee68540890eaf0dc537188c738600fb7

Inverted Dropout

dropout稍微不同。该方法在训练阶段期间对激活值进行缩放,而测试阶段保持不变。

倒数Dropout的比例因子为223ab9380c566fb9a74ff8a0a127e1174593bdf8,因此:

训练阶段:6ebd718f4256f50134f7428bc5df4d3cc9ddceae

测试阶段6ccbf2b63a56155b6403093e8771952bb3e3515b

Inverted DropoutDropout在各种深度学习框架实践中实现的,因为它有助于一次性定义模型,并只需更改参数(保持/舍弃概率)就可以在同一模型上运行训练和测试过程

一组神经元的Dropout

n个神经元的第h层在每个训练步骤中可以被看作是n个伯努利实验的集合,每个成功的概率等于p

因此舍弃部分神经元后h层的输出等于:

f580cf9006a568171c48ac7ec10f1d8997bf7d81

因为每一个神经元建模为伯努利随机变量,且所有这些随机变量是独立同分布的,舍去神经元的总数也是随机变量,称为二项式:

023627f0453afe34e4bebb9ee10dfb7678d87989

n次尝试中有k次成功的概率由概率质量分布给出:

55460b3bb5d23fc5fbc732366679150a56a67fec

当使用dropout,定义了一个固定的舍去概率p对于选定的层,成比例数量的神经元被舍弃

3be3ad14ec1d82ebafe981d1d3fc40ef6132e020

图可以看出,无论p是多少舍去的平均神经元数量均衡为np

933a160e2ead33c8ea51c1c7d41a69d3bb369eda

此外可以注意到,围绕在p = 0.5附近的分布对称。

Dropout与其它正则化

Dropout通常使用L2归一化以及其他参数约束技术。正则化有助于保持较小的模型参数

L2归一化是损失附加项,其中λ是一种超参数F(W;x)是模型以及ε真值y和预测值y^之间的误差函数。

e596c69e772f833df283a96e806dde994d8b979d

通过梯度下降进行反向传播,减少了更新量。

a762ce896975e697de82661ee4e69a11f6e92fad

Inverted Dropout和其他正则化

由于Dropout不会阻止参数增长和彼此压制,应用L2正则化可以起到作用

明确缩放因子上述等式变为:

337e71fd721fded5b9298cad73ba6c3310057d6c

可以看出使用Inverted Dropout,学习率是由因子q进行缩放 。由于q[0,1]之间,ηq之间的比例变化:

71cf583c223c9f4e2d7a3021640ae747b9f5dacd

q称为推动因素,因为其能增强学习速率,将r(q)称为有效的学习速率

有效学习速率相对于所选的学习速率而言更高:基于此约束参数值的规化可以帮助简化学习速率选择过程。

总结

Dropout存在两个版本:直接(不常用)和反转

单个神经元上的dropout可以使用伯努利随机变量建模

可以使用二项式随机变量来对一组神经元上的舍弃进行建模

即使舍弃神经元恰巧为np的概率是低的,但平均上np神经元被舍弃

Inverted Dropout提高学习率

Inverted Dropout应该与限制参数值的其他归一化技术一起使用,以便简化学习速率选择过程

Dropout有助于防止深层神经网络中的过度拟合


作者介绍:Paolo Galeone,计算机工程师以及深度学习研究者,专注于计算机视觉问题的研究


bafcc5518a0f203dc66a08af1dd9a6ce1e386173


Bloghttps://pgaleone.eu/

Linkedinhttps://it.linkedin.com/in/paolo-galeone-6782b311b

Twitterhttps://twitter.com/paolo_galeone


以上为译文

本文由北邮@爱可可-爱生活 老师推荐,阿里云云栖社区组织翻译。

文章原标题《Analysis of Dropout》,作者:Paolo Galeone,译者:海棠,审校:我是主题曲哥哥。

文章为简译,更为详细的内容,请查看原文

 翻译者: 海棠 

Wechat:269970760 

Email:duanzhch@tju.edu.cn

微信公众号:AI科技时讯

157f33dddfc596ede3681e0a2a0e7068dc288cc1

目录
相关文章
|
7天前
|
安全 虚拟化
在数字化时代,网络项目的重要性日益凸显。本文从前期准备、方案内容和注意事项三个方面,详细解析了如何撰写一个优质高效的网络项目实施方案,帮助企业和用户实现更好的体验和竞争力
在数字化时代,网络项目的重要性日益凸显。本文从前期准备、方案内容和注意事项三个方面,详细解析了如何撰写一个优质高效的网络项目实施方案,帮助企业和用户实现更好的体验和竞争力。通过具体案例,展示了方案的制定和实施过程,强调了目标明确、技术先进、计划周密、风险可控和预算合理的重要性。
21 5
|
8天前
|
SQL 安全 网络安全
网络安全的护城河:漏洞防御与加密技术的深度解析
【10月更文挑战第37天】在数字时代的浪潮中,网络安全成为守护个人隐私与企业资产的坚固堡垒。本文将深入探讨网络安全的两大核心要素——安全漏洞和加密技术,以及如何通过提升安全意识来强化这道防线。文章旨在揭示网络攻防战的复杂性,并引导读者构建更为稳固的安全体系。
20 1
RS-485网络中的标准端接与交流电端接应用解析
RS-485,作为一种广泛应用的差分信号传输标准,因其传输距离远、抗干扰能力强、支持多点通讯等优点,在工业自动化、智能建筑、交通运输等领域得到了广泛应用。在构建RS-485网络时,端接技术扮演着至关重要的角色,它直接影响到网络的信号完整性、稳定性和通信质量。
|
7天前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
35 3
|
7天前
|
存储 网络协议 安全
30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场
本文精选了 30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场。
20 2
|
10天前
|
机器学习/深度学习 人工智能 算法框架/工具
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
【10月更文挑战第36天】探索卷积神经网络(CNN)的神秘面纱,揭示其在图像识别领域的威力。本文将带你了解CNN的核心概念,并通过实际代码示例,展示如何构建和训练一个简单的CNN模型。无论你是深度学习的初学者还是希望深化理解,这篇文章都将为你提供有价值的见解。
|
7天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
31 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
|
11天前
|
机器学习/深度学习 人工智能 自动驾驶
深入解析深度学习中的卷积神经网络(CNN)
深入解析深度学习中的卷积神经网络(CNN)
27 0
|
7天前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第39天】在数字化时代,网络安全和信息安全成为了我们生活中不可或缺的一部分。本文将介绍网络安全漏洞、加密技术和安全意识等方面的内容,帮助读者更好地了解网络安全的重要性,并提供一些实用的技巧和方法来保护自己的信息安全。
20 2
|
8天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第38天】本文将探讨网络安全与信息安全的重要性,包括网络安全漏洞、加密技术和安全意识等方面。我们将通过代码示例和实际操作来展示如何保护网络和信息安全。无论你是个人用户还是企业,都需要了解这些知识以保护自己的网络安全和信息安全。

推荐镜像

更多