我注意到Conv2d图层用于输入图像有三维的代码中。但是,由于我们只为滤波器输入两个维度,矩阵乘法如何发生?
二维滤波器是否分别对每个输入通道进行卷积(或使用广播)(然后只是将结果加起来)?
或者滤镜的深度是否自动匹配输入的深度(如果是彩色图像则为3)?如果是这种情况,3x3x3过滤器应该有27个可以训练的重量,而不是前者的9个。
Tensorflow对conv2d的滤镜尺寸更明确(您必须输入高度,宽度,通道,输出_渠道)
答案 0 :(得分:2)
Keras Conv2d
图层自动为其卷积滤镜提供n
个输入通道,其中n
是其前面图层的通道深度/数量。此前一层作为输入数据提供给Conv2d
图层。
这些假设使得Keras更易于用于常见用例,例如在深度卷积网络中将Conv2d
链接在一起。