Conditional Random Fields as Recurrent Neural Networks

牛津,斯坦福,IDL的一篇论文

介绍:

1.传统的用于Object Recognition的CNN很难转换为用于segmentation的 pixel-wise predicting:
1)感受野过大以及pooling操作使的feature map很coarse
2)缺少smooth机制导致poor object delineation和small spurious region
2.MRF(马尔科夫随机场)和CRF(条件随机场)在pixel-labeling领域大放异彩,因此可以将MRF和CRF作为一种post-processing的手段refine别的model的结果
3.其实本文中的Deep Learning的思想用的不多,要了解CRF相关思想,看以参考这个PPT

Idea:

1.其实本文是利用一些卷积操作(可以看作是CNN的卷积层)和别的一些手段,构造了一个RNN的基本单元(类似于LSTM/GRU)
2.先放一个整体图(本文的工作就是图中的CRF-RNN部分),这个整体架构可以end-to-end training;作者在训练CRF-RNN的时候将timesteps设置为5,而在测试时设置为10:

这里写图片描述

3.CRF-RNN的基本单元的构造过程如下:

这里写图片描述
作者为什么要构造一个这样的单元呢?这是因为原本用CRF作segmentation的时候,要优化一个energy函数:
这里写图片描述
而其中第二项不好优化:
这里写图片描述
所以作者想出了一个mean-field inference来approximate这个energy函数,mean-field inference的流程就是Algorithm 1.

4.下面分析分析Algorithm 1.
1)Initialization: 根据别的model(如FCN)输出的prediction map,得到(i表示第i个像素):

这里写图片描述
其中(其实就是log loss):
这里写图片描述
再使用softmax得到Q:
这里写图片描述

2)Massage Passing: 经过initialization,输入到这里的还是一张map,这里使用M个高斯核作用在Q上得到M个map(作者使用了两个高斯核, a spatial kernel and a bilateral kernel)
3)Weighting Filter Outputs:其实就是给M个map作pixel-wise的加权和,最后输出一个map;实现方法就是apply一个1x1的卷积核(类似于CNN的卷积操作),卷积核的参数会在反向时更新
4)Compatibility Transform: 这里输入一个map,不知道是怎么extend到L个map的(L即label的总数);这里其实是增加了一个penalty,用于惩罚具有相同properties的却赋予了不同label的pixel;这里作者也提了一些改进方案,例如根据具体类别等等;这里的实现方法也是apply了一个1x1的卷积核,L个map的输入和输出,也是通过反向更新参数
5)AddingUnaryPotentials: 看公式,作element-wise的减法,U-Q
6)Normalization: 一个softmax操作
5. 构造好的类RNN单元如下:

这里写图片描述
接下来就是把它当RNN使了:
这里写图片描述

Performance:

这里写图片描述

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值