dropout含义与原理

含义

在训练过程中,对神经网络单元按照一定比例暂时将其丢弃。

原理

由于网络参数过多,训练数据少,或者训练次数过多,会产生过拟合的现象。
dropout产生的一个重大原因就是为了避免过拟合。 每一层的神经元按照不同的概率进行dropout,这样每次训练的网络都不一样,对每一个的batch就相当于训练了一个网络,dropout本质是一种模型融合的方式,当dropout设置为0.5时,模型总类最多为2^n, 另外在更新参数时,只对保留的神经元进行更新,也能加快训练速度。

应用

在embedding之后可以使用,tensorflow中如下: tf.nn.dropout(E, keep_prob)

参考:

https://blog.csdn.net/stdcoutzyx/article/details/49022443

原文地址:https://www.cnblogs.com/zhaopAC/p/10049677.html