VGG16架构具有输入:224x224x3图像。我想有48x48x3输入,但是要在keras中做到这一点,我们删除了最后的fc层,每个fc层都有4096个神经元,为什么我们必须这样做?是否需要为此输入添加其他大小的fc层?
答案 0 :(得分:1)
VGG16的最终池化层具有7x7x512
输入图像的尺寸224x224
。 VGG16从那里使用(7x7x512)x4096
的完全连接层来获得4096
尺寸输出。但是,由于您输入的大小不同,因此与最终合并层相比,要素输出大小也将有所不同(我认为2x2x512
)。因此,您需要更改完全连接层的矩阵尺寸以使其起作用。
512
维度特征,然后使用几个完全连接的层来获取您的类数。 224x224x3
,并且无需在模型体系结构中进行任何更改。答案 1 :(得分:0)
删除最后一个FC层是为了进行微调或转移学习,您可以在其中使现有网络适应新问题,例如更改分类器可以选择的类别数量。
您正在调整网络以采用不同大小的输入,因此您需要调整网络的第一层。