我正在与在Keras中实现的CNN协作,该CNN有时具有平坦的层。现在,我的目标是允许输入不同形状的图像。所以我第一次转换层看起来像:
model.add(Conv2D(...., input_shape=(None, None, 1))
在此设置中,我的展平层变得不满意,并告诉我指定输入形状。因此,我目前正在避免使用GlobalMaxPooling层。
毕竟,为什么扁平层会影响宽度和高度?
背景:我尝试训练一个用于分类的网络(较小的分辨率),然后将该网络用于对象检测(较高的分辨率)
谢谢
答案 0 :(得分:1)
它困扰着形状,因为您可能希望将另一层连接到它。
其特征尺寸将成为下一层创建其自身权重的基础。图层不能具有可变大小的权重矩阵,因此,它不能具有可变大小的要素输入。