试图理解 VGG 卷积神经网络架构

人工智能 卷积神经网络 图像识别 vgg
2021-10-26 07:43:07

试图了解 VGG 架构,我有以下问题。

  1. 我理解增加过滤器大小的一般理解是因为我们正在使用最大池化,因此它的图像大小会减小。所以为了保持信息增益,我们增加了过滤器的大小。但是在 VGG 架构的最后几层,当 vgg 从 14x14 最大池化到 7x7 图像大小时,滤波器大小保持不变,滤波器大小保持在 512x512 不变。为什么不需要增加过滤器尺寸呢?
  2. 最后,还有几个连续的层是用相同的过滤器和图像大小构建的,这些层是为了提高精度而构建的?(实验?)
  3. 而且我无法在最终过滤器中环绕该可视化,将整个面部作为我通过卷积可视化理解的特征(Matt Zieler 视频解释)。但是最大池化导致我们只能看到图像的子集部分,对吗?当过滤器大小为 512x512(面部作为过滤器/特征)时,图像大小为 7x7,那么当我们在图像像素的小子集上移动时,整个面部作为过滤器将如何作用于图像?

VGG架构总结VGG架构最终层总结

1个回答

好问题。让我一一回复。

1-过滤器尺寸可以增加。它没有限制。但是,请考虑两种情况:

  • DNN 部分。形状将是 1024 x 7 x 7,它会映射到 4096 个特征,它会在dense_1 层产生 204M 个参数。这种变化将导致两个可能的问题。过拟合和推理/训练速度。
  • 稀疏性。您可以在第 5 个 conv 块中实现 1024 个特征并训练网络并检查准确性以查看增加的特征计数是否会产生任何影响。

因此,要确定 con 层的数量,最好检查特征层的稀疏性。

2-如果我没有理解你的问题,这些层是 DNN 分类器作为一个完全连接的层。

3- Maxpooling 不会导致我们看到图像的子集。这只是一种调整大小的算法。您在该视频中看到的是过滤器对图像中存在的某些对象的响应。在更深层次上,不要期望像在浅层中那样具有视觉形状。您甚至可能在最深层获得单个白色像素,这可能是对人脸等对象的响应。