0
下面是如何使用反卷积网络(deconvolution net)来可视化conv网络学习到的信息:
1.确定激活你要可视化的过滤器,比如说,训练过的VGG conv网的conv4_3层的第15个过滤器。此方法将向你显示在图像空间中导致激活的图案,因此,你应该选择一个具有高强度激活的过滤器。这是因为许多图像模式可以导致接近零的激活,但(希望)只有一些会导致高强度的激活,所以可视化高强度的激活会更有意义。
2.通过conv网络传递图像,直到并包括你所选择的激活层。
3.将你要可视化的过滤器激活(通道)归零到最后一层。
4.通过反卷积网络回到图像空间,以下是卷积网络中三种常见的“逆”运算:
取消池化:无法完全反转最大池化。因此,建议记住“开关变量”中最大下层激活的位置。当返回时,从上层的激活被复制粘贴到开关变量指向的位置,所有其他底层的激活被设置为零。请注意,不同的图像将产生不同的激活模式,因此开关变量的值将根据图像而变化。
ReLU函数的逆函数是ReLU函数。既然卷积用于纠正前向传递的激活,反卷积也应该用于纠正后向传递的重构。
反卷积:使用相同的滤波器对应的conv层;唯一的区别是它们被水平和垂直地翻转。
遵循以上三个步骤,直到到达图像层。
收藏