我使用keras
构建了一个CNN,并将权重保存在* .hdf文件中。我使用了16
个过滤器,内核的大小为3×3
。
但第一个save_weight
的{{1}}输出仅为Convolution2D
。内核的大小为1×16
,因此输出应为3×3
,不应该是它吗?为什么输出表现得像这样?
这是* .hdf文件结构的屏幕截图:
答案 0 :(得分:1)
您是对的:如果您使用16
大小为3x3
的过滤器,则会看到16x3x6
个权重。当我使用免费*.h5
工具从here打开VGG16
网络的HDFView
文件时,卷积会产生以下权重:
32位浮点,64 x 3 x 3 x 3
32位浮点64
此图层
Convolution2D(64, 3, 3, activation='relu')
因此,我认为您使用的是HDF Explorer
错误(这就是我要求提供更多屏幕截图的原因)。请尝试在引用的要点中打开网络文件,如果您使用工具看到具有相同尺寸的权重,请检查。