在torch(lua语言)中可视化中间层的图像。

在 conv-nets 模型中,我知道如何将过滤器可视化,我们可以使用 itorch.image(model:get(1).weight)。

但是,我如何有效地可视化卷积后的输出图像?尤其是在深度神经网络的第二或第三层中的那些图像?

谢谢。

点赞
用户117844
用户117844

和权重一样,您可以使用:

itorch.image(model:get(1).output
2015-07-20 07:32:37
用户309653
用户309653

要可视化权重:

-- 可视化权重
n = nn.SpatialConvolution(1,64,16,16)
itorch.image(n.weight)

要可视化特征映射:

-- 初始化一个简单的卷积层
n = nn.SpatialConvolution(1,16,12,12)

-- 将lena图像放入网络中
res = n:forward(image.rgb2y(image.lena()))

-- res现在是一个16x501x501的矩阵。我们现在使用:view函数将其视为16个大小为1x501x501的单独的矩阵。
res = res:view(res:size(1), 1, res:size(2), res:size(3))
itorch.image(res)

更多信息请访问:https://github.com/torch/tutorials/blob/master/1_get_started.ipynb

2015-09-09 06:05:21