有人可以向我解释当keras Conv1D图层被输入2D输入时会发生什么?如:
model=Sequential()
model.add(Conv1D(input_shape=(9000,2),kernel_size=200,strides=1,filters=20))
改变(9000,1)和(9000,2)之间的输入大小并调用model.summary(),我看到输出形状保持不变,但参数的数量发生了变化 . 那么,这是否意味着为每个通道训练不同的滤波器,但输出在输出之前在第二维上求和/平均?或者是什么?
2 回答
In the doc你可以读到输入必须是2D .
Conv1D可以看作是一系列向量的时间窗口 . 内核将是2dimensions窗口,与矢量长度一样大(因此输入的第二个维度)并且将与窗口大小一样长...
所以确实你的两个网络具有相同的输出形状是完全正常的......并且参数的数量更高,因为内核由于第二维而大2倍 .
我希望这有帮助 :-)
这是一个视觉插图