Keras dropout 和 GaussianNoise 层是不是在每批中应用不同的噪声实例?

Posted

技术标签:

【中文标题】Keras dropout 和 GaussianNoise 层是不是在每批中应用不同的噪声实例?【英文标题】:Do Keras dropout and GaussianNoise layers apply different instances of noise in every batch?Keras dropout 和 GaussianNoise 层是否在每批中应用不同的噪声实例? 【发布时间】:2016-10-28 21:21:30 【问题描述】:

我正在 Keras 中构建一个去噪自动编码器。我使用的模型是

input_img = Input(shape=(10,))
encoded = GaussianNoise(0.01)(input_img)
encoded = Dropout(0.1)(encoded)
encoded = Dense(20,activation='relu')(encoded)
decoded = Dense(10, activation='sigmoid')(encoded)
ae = Model(input=input_img, output=decoded)

如果我随后打电话

ae.fit(x_train, x_train,
                     nb_epoch=3,
                     batch_size=5,
                     shuffle=True,
                     validation_data=(x_test, x_test))

是否为每个批次创建了一个新的噪声实例?换句话说,对于上面的每个时期,每个批次都有不同的噪声实例吗?还是所有批次的噪声实例都固定为同一事物,并且仅在时代变化时才发生变化?或者更糟糕的是,是否只为整个事物选择了一个噪声实例?

【问题讨论】:

这里是GausDropout Dropout和GausNoise的区别***.com/a/65504785/10375049 【参考方案1】:

在训练期间为每个批次创建不同的噪声实例。

【讨论】:

欢迎来到 SO。请阅读此how-to-answer 并按照那里的指南提供高质量的答案。

以上是关于Keras dropout 和 GaussianNoise 层是不是在每批中应用不同的噪声实例?的主要内容,如果未能解决你的问题,请参考以下文章

关于在 RNN (Keras) 中正确使用 dropout

如何在 Keras 功能模型中添加 Dropout?

Keras Lstm中dropout机制

Keras 的深度学习模型中的 Dropout 正则化

Keras减少过拟合的秘诀——Dropout正则化

嵌入层后的dropout层