1

谁能告诉我如何可视化每个 CNN 层的学习过滤器?以下答案告诉我如何仅可视化第一个 CNN 层的学习过滤器,但无法可视化其他 CNN 层。

1)您可以恢复过滤器并使用Matlab的功能将它们显示为图像。例如,从http://www.vlfeat.org/matconvnet/pretrained/加载预训练网络后:

imshow( net.layers{1}.filters(:, :, 3, 1), [] ) ;

2) 您可能会发现 VLFeat 函数 vl_imarraysc 对显示多个过滤器很有用。http://www.vlfeat.org/matlab/vl_imarraysc.html

4

1 回答 1

4

用于可视化中间层中的过滤器。有几种技术:

(1) 一次将一个或三个通道显示为灰度或 RGB。它的信息量不是很大,因为 ResNet 和 VGG 的过滤器很小,只有 3x3。

(2) 关闭其他单元。仅将此单元反向传播到输入空间。你可以看到一个反映这个单元关心什么的模式。有许多论文使用了类似的技术。例如,Zeiler、Matthew D. 和 Rob Fergus。“可视化和理解卷积网络。” 欧洲计算机视觉会议。2014 年。

(3) 找到最大程度地激活这个单元的输入补丁,看看它们是什么。

于 2017-06-10T16:39:03.110 回答