1、什么是dropout?
字面意思dropout=drop+out即退出的意思,在神经网络训练过程中,随机让某一个神经元退出或者丢弃,当然此次的丢弃只存在于当前的batch中,对于随机梯度下降来说,每一个batch训练的网络都不尽相同。
2、droput有啥优点
防止过拟合,提高模型泛化能力
3、怎么实现的
1. 训练
给每个神经元加一个概率
用公式表示:
- 没有dropout的神经网络
- 有dropout的神经网络
给每一个神经元乘了个伯努利分布概率(即随机的0或者1),可能它的实际网络就是这样的
输入少了一个神经元
2.测试
每一个神经元的参数都要乘以P,