网络优化方法--Dropout
1、Dropout介绍
Dropout 也是一种用于抵抗过拟合的技术,它试图改变网络本身来对网络进行优化。我 们先来了解一下它的工作机制,当我们训练一个普通的神经网络时,网络的结构可能如图所示。
Dropout 通常是在神经网络隐藏层的部分使用,使用的时候会临时关闭掉一部分的神经 元,我们可以通过一个参数来控制神经元被关闭的概率,网络结构如图所示。
更详细的流程如下:
- 在模型训练阶段我们可以先给 Dropout 参数设置一个值,例如 0.4。意思是 大约 60%的神经元是工作的,大约 40%神经元是不工作的
- 给需要进行Dropout的神经网络层的每一个神经元生成一个0-1 的随机数(一 般是对隐藏层进行 Dropout)。如果神经元的随机数小于 0.6,那么该神经元就设置为 工作状态的;如果神经元的随机数大于等于 0.6,那么该神经元就设置为不工作的,不工作状态的意思就是不参与计算和训练,可以当这个神经元不存在。
- 设置好一部分神经元工作一部分神经元不工作之后,我们会发现神经网络的输 出值会发现变化,如上图,如果隐藏层有一半不工作,那么网络输出值就会比原来的值要小&