Keras-Dropout正则化

tf.keras.layers.Dropout( rate, noise_shape=None, seed=None, **kwargs )

如dropout的名字,就是要随机扔掉当前层一些weight,相当于废弃了一部分Neurons。
它还有另一个名字 dropout regularization, 所以你应该知道它有什么作用了。
在创建Dopout正则化时,可以将 dropout rate的设为某一固定值,当dropout rate=0.8时,实际上,保留概率为0.2。下面的例子中,dropout rate=0.5

layer = Dropout(0.5)
参数
  • rate: 将数据变成0的概率,在0到1之间浮动。
  • noise_shape: 根据输入数据的第一个维度,做乘法重复,比如输入的是(5,2),会生成一个(5,5,2)的输出
  • seed:正整数,随机数种子,固定后输出不会改变
本神经层作用
  1. 降低模型复杂度,增强模型的泛化能力,防止过拟合
  2. 顺带降低了运算量

你可能感兴趣的:(Keras-Dropout正则化)