关于在Keras中设置Activation和BatchNormalization的方法

时间:2017-01-31 22:35:23

标签: tensorflow keras convolution

我曾经看到卷积层在Keras

中定义如下
x = Convolution2D(128, kernel, kernel, border_mode='same')(x)
x = BatchNormalization()(x)
x = Activation('relu')(x)
x = Convolution2D(128, kernel, kernel, border_mode='same')(x)
x = BatchNormalization()(x)
x = Activation('relu')(x)

在我看来,Activation也可以设置Convolution2D。如上所述,在独立层中设置Activation的原因是什么?此外,在Convolution2DActivation之间,有BatchNormalization,我们可以在BatchNormalization之后移动Activation吗?那么会有什么不同吗?

1 个答案:

答案 0 :(得分:0)

这不是一个固定的问题。大多数人在激活功能之前都有批量标准化。然而,在实践中,有些人发现在激活功能之后进行批量标准化也有效,据我所知,对于什么更好没有达成共识。我建议你试试你的特定问题和数据。但是,不要期待任何重大差异。