最近我遇到了一篇关于使用反卷积网络进行语义分割的论文:用于语义分割的学习反褶积网络。
网络的基本结构如下:

最终的目标是生成一个概率图。我很难搞清楚如何实现反褶积层。文件中说:
非池层的输出是一个扩大的,但稀疏的激活映射。反褶积层将通过使用多个学习滤波器的卷积类运算解池获得的稀疏激活紧密化。然而,与将滤波器窗口内的多个输入激活连接到单个激活的卷积层相反,反卷积层将单个输入激活与多个输出相关联。反褶积层的输出是一幅放大密集的活化图。我们裁剪扩大的激活映射的边界,以保持输出映射的大小与前一个解池层的大小相同。反卷积层中的学习滤波器对应于重构输入对象形状的基。因此,类似于卷积网络,采用一种分层的反卷积层结构来捕捉不同层次的形状细节。较低层中的过滤器倾向于捕获对象的总体形状,而类特定的精细细节则被编码在较高层的过滤器中。这样,网络就可以直接考虑到特定于类的形状信息进行语义分割.
有人能解释反褶积是如何工作的吗?我猜这不是一个简单的插值。
发布于 2015-11-24 22:24:44
有两个主要的功能,他们撤销。
卷积神经网络中的池层通过(通常)取接收域内的最大值对图像进行下采样。每个rxr图像区域被降采样为单个值。此实现所做的是存储在每个池步骤中哪个单元具有最大的激活。然后,在反卷积网络中的每个“解池”层,它们向上返回到一个rxr图像区域,只将激活传播到产生原始最大集合值的位置。
因此,“非池层的输出是一个扩大的,但稀疏的激活映射。”
卷积层学习每个图像区域的过滤器,该区域从大小为r x r的区域映射到单个值,其中r是接收字段大小。反卷积层的重点是学习相反的滤波器。这个过滤器是一组权重,它将一个rxr输入投影到一个sxs大小的空间中,其中S是下一个卷积层的大小。这些滤波器的学习方式与规则卷积层相同。
作为深度CNN的镜像,网络的低层特征确实是高层次的、特定类别的特征。然后网络中的每一层都对它们进行定位,以增强类特有的特性,同时最小化噪声.
https://datascience.stackexchange.com/questions/8999
复制相似问题