一.dropout概念
- 在训练的时候,以一定的概率使得某些神经元从网络中丢弃
二.dropout原理解释
1.从ensemble的角度理解
- 由于每个epoch前向的时候都是以一定概率随机的丢弃某些神经元,所以每个epoch训练的时候其实是在训练不同的网络,类似bagging。
2.从不同动机的角度来理解
- 类比有性繁殖和无性繁殖,无性繁殖直接从父代保留大段的优秀基因,有性繁殖则是将基因随机拆解破坏了大段基因的联合适应性,从而有更多的多样性。
- dropout则是强迫一个神经元和随机挑选出来的其他神经元共同工作,削弱了神经元节点之间的联合适应性,增强了泛化能力。
三.dropout细节
1.训练的时候
- 以一定概率抛弃神经元
- 通过乘以一个满足概率为p的伯努利,0-1分布的随机数实现
2.测试的时候
- 不抛弃任何一个神经元
- 对每个单元的参数预先乘以概率p(训练的时候预设的不丢弃的概率</