【发布时间】:2020-11-14 07:56:24
【问题描述】:
在WaveNet中,扩张卷积用于增加上面各层的感受野。
从图中,您可以看到核大小为 2 的扩张卷积层和 2 次幂的扩张率创建了一个树状的感受野结构。我试图(非常简单地)在 Keras 中复制上述内容。
import tensorflow.keras as keras
nn = input_layer = keras.layers.Input(shape=(200, 2))
nn = keras.layers.Conv1D(5, 5, padding='causal', dilation_rate=2)(nn)
nn = keras.layers.Conv1D(5, 5, padding='causal', dilation_rate=4)(nn)
nn = keras.layers.Dense(1)(nn)
model = keras.Model(input_layer, nn)
opt = keras.optimizers.Adam(lr=0.001)
model.compile(loss='mse', optimizer=opt)
model.summary()
还有输出:
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_4 (InputLayer) [(None, 200, 2)] 0
_________________________________________________________________
conv1d_5 (Conv1D) (None, 200, 5) 55
_________________________________________________________________
conv1d_6 (Conv1D) (None, 200, 5) 130
_________________________________________________________________
dense_2 (Dense) (None, 200, 1) 6
=================================================================
Total params: 191
Trainable params: 191
Non-trainable params: 0
_________________________________________________________________
我期待axis=1 在每个conv1d 层之后缩小,类似于 gif。为什么不是这样?
【问题讨论】:
标签: tensorflow keras conv-neural-network