convLSTM2D dilation_rate似乎不起作用

时间:2019-09-18 22:07:15

标签: keras lstm

我正在尝试使用convLSTM2D(使用Tenosrflow作为后端的Keras)中的dilation_rate进行升采样

input = Input(shape=(10, 64, 64, 1), name='encoder_input')
layer1 = ConvLSTM2D(filters=33, kernel_size=(5,5), dilation_rate=(2, 2))
model = Model(input, layer1(input))
plot_model(model, show_shapes=True, show_layer_names=True)

我希望输出形状为(None,128,128,33),但我得到了(None,64,64,33)。 这个dilation_rate =(2,2)与strides =(2,2)是否相反?

1 个答案:

答案 0 :(得分:1)

与跨步不同,扩展不会更改数据的形状。它只是增加了内核的“传播”。在此gif中,您可以看到其工作原理:

enter image description here

数据形状的唯一变化是从每一侧截去2个,因为不使用填充。