Efficient Inference in Fully Connected CRFs with Gaussian Edge Potentials

摘要

在多类别图像分割和标记领域表现最优的技术采用的都是定义在像素或者图像域之上的条件随机场。虽然区域级的模型通常具有稠密二元连通性,但由于考虑到像素级模型相当的大所以只可以使用稀疏的图结构。在这篇论文中,我们考虑定义在一张图像中的完全像素集的全连接CRFs模型。这种结果图有几十亿条边,使得传统的判别算法变得不再合适。我们主要的贡献就是提出一种全连接CRF模型的近似判别算法,在这一模型中二元的边缘势函数被定义为两个高斯核的线性组合。我们的实验也证明在像素级上的稠密连通性实质上提升了分割以及标记的准确性。

介绍

在计算机视觉领域,多类分割和标记是最具有挑战性和被广泛研究的问题之一。其目标是使用几个已经确定好的物体种类之一来标记图中的每一个像素,因此同时实现识别与多类别分割。一般的方式是将这一问题转换成在定义于像素或图像块上的条件随机场做最大后验概率推断[8,12,18,19,9]。CRF势函数合并了在相似像素中最大化标签一致性的平滑项,并且可以整合建模各类别间上下文关系的更加复杂的项。
基本的CRF模型由单独的像素或图像块上的一元势函数和在相邻像素和图像块上的二元势函数组成[19,23,7,5]。所产生的邻接CRF结构在模拟图像中长程连接的能力有限并且通常导致物体边界过度平滑。为了改善分割和标记准确性,研究者已经将基础的CRF框架扩充到包含分层联通性和定义在图像域上的高阶势函数[8,12,9,13]。然而这些方法的准确性必定被用来计算模型处理区域的非监督的图像分割的准确性所约束。尽管很多有效的工作都做了,但这种约束限制了基于区域的方法在复杂物体边界周围产生准确标签对应的能力[9,13,14]。
在这篇论文中,我们探索了一种准确语义分割和标记的与众不同的模型架构。我们在图像中所有像素的组合上使用建立二元势函数的全连接CRF。全连接CRFs在过去就被使用在语义图像标记[18,22,6,17],但在全连接模型上推断的复杂性已经限制了它们在上百或更少的图像域集合上的应用。这些方法达到的分割准确性再一次被产生区域的非监督分割所限制。相反,我们的模型与图像中所有单个像素的组合相关联,能够极大的改进分割和标记。这个模型的主要挑战是尺寸,即使在低分辨率的图像上它都包含了成百上千的节点和数十亿的边。
我们的主要贡献就是针对任意一张图像中全连接CRF模型的高有效推断算法,在这一模型中二元势函数被定义高斯核的线性组合。这个算法基于一种对CRF分布的平均场近似。这种近似可以通过一系列的消息传递步骤来不断优化。每个步骤通过搜集从所有其他变量得到的信息来更新一个单独的变量。我们发现在全连接CRF中的所有变量的一个平均场更新能够使用在特征空间中的高斯滤波来完成。这就允许我们在大量变量中通过使用有效的近似高维滤波来降低从二次到线性消息传递的计算复杂度[16,2,1]。由此而产生的近似推断算法在模型中大量的边缘中是亚线性的。
Figure 1展示了提出的算法在MSRC-21数据集里的两张图像中对于多类分割和标记的表现。Figure 1(d)展示了在这些图片上使用全连接CRFs中的近似MCMC推断的结果[17]。MCMC过程运行了36小时并且底部图像只有部分收敛。我们也试验了在全连接模型中使用图割推断[11],但是在72小时内都没有收敛。相反,如Figure 1(e)所示,我们算法的一种单线程的实现在0.2秒内产生了一个细致的像素级标记。在MSRC-21和PASCAL VOC2010数据集上的定量估计在Section6提供。据我们所知,我们是第一个在像素级别上实现全连接CRF模型中的有效推断。
这里写图片描述

全连接CRF模型

这里写图片描述这里写图片描述这里写图片描述这里写图片描述

在全连接CRFs上的有效推断

我们的算法是基于一个针对CRF分布的平均场近似。这种近似法为近似推断产生了一个迭代的消息传递。我们重要的观察结果是在我们提出的模型中的消息传递可以用特征空间的高斯滤波进行。这就使得我们可以利用高有效的近似法来进行高维滤波,这样也减少了从二次到线性的消息传递的复杂性,由此得出了全连接CRFs的一个近似推断算法,这个算法在变量N中是线性的并且在模型的边缘数中是亚线性的。
1、平均场近似
这里写图片描述KL–散度
在补充材料中给出了上述等式的详细推导。这个更新等式引出了以下推理算法:
这里写图片描述
算法1中的每次迭代都执行了一个消息传递步骤,一个兼容性转换,和一个局部更新。兼容性转换和局部更新在线性时间内运行并且都是高效的。计算的瓶颈在于消息传递。对于每个变量,这一步需要计算所有其他变量的和,因此,一个简单的实现在变量N的数目上具有二次复杂度。接下来,我们将展示如何使用近似高维滤波来减少消息传递到线性的计算开销。
2、 使用高维滤波的有效消息传递
这里写图片描述这里写图片描述这里写图片描述这里写图片描述这里写图片描述这里写图片描述

学习

这里写图片描述这里写图片描述这里写图片描述

实现

在我们实现方法中使用的一元势函数源于TextonBoost[19,13].我们使用Shotton[19]等人建议的17维滤波器组并且遵循Ladicky[13]的工作加入了颜色和HOG以及像素位置特征。对于一元势函数我们在MSRC-21数据集上的估计使用了TextBoost的扩展版本。对于VOC2010数据集我们包含了每个物体类别的bounding box物体检测器的响应作为20个额外的特征。这使得VOC2010的一元分类器的性能从13%增加到了22%。我们在强化分类器响应上通过训练一个逻辑回归分类器增加了额外的5%的性能。
这里写图片描述

评估

对于多类图像分割和标记我们在两个标准基准上评价提出的算法。第一个是MSRC-21数据集,这个数据集包含21个类别的具有相应ground truth标签的591幅尺寸为320×213的彩色图像。第二个是PASCAL VOC 2010数据集,这个数据集包含20个类别和一个背景类的尺寸接近500×400的1928幅彩色图像。使用公开的参数配置,将所提出的的方法与Shotten等人提出的邻接CRF和Kohli等人提出的鲁棒 CRF一同评价。为了保证一个公正的评判。所有的模型都使用了Section 5所述的一元势函数。所有的实验都是在一个2.80GHz的Intel i7-930处理器上完成。对于训练使用8个CPU核心;所有其他的实验都是在一个核心上完成。推断算法在一个单独的CPU进程中完成。
其他评估内容见原论文
原论文网址:https://arxiv.org/pdf/1210.5644.pdf

  • 6
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
代码修剪卷积神经网络用于资源高效推理,是一种优化模型的方法,旨在减小模型的尺寸和计算量,从而实现在资源受限的设备上进行高效推理。 修剪是指通过删除模型中的一些参数或神经元来减小模型的复杂性。在卷积神经网络中,修剪通常包括删除一些卷积核或通道,以及减少连接权重的数量。这可以通过一些算法和技术来实现,例如剪枝算法、稀疏矩阵和低秩近似等。 修剪卷积神经网络可以带来多个好处。首先,它可以大大减小模型的尺寸,从而降低了存储模型所需的内存空间。其次,修剪可以减少模型的计算量,使得模型可以更快地进行推理。这对移动设备和嵌入式系统等资源受限的设备非常重要。此外,修剪还可以提高模型的泛化能力,减少过拟合的风险。 对于修剪卷积神经网络的代码实现,一般分为两个步骤。首先,需要训练一个初始的卷积神经网络模型。然后,通过一些修剪算法选择要修剪的参数或神经元,并将其从模型中移除。修剪的目标可以是按照权重大小或梯度大小进行选择。 在实际编程中,代码可以使用一些深度学习框架(如PyTorch或TensorFlow)来实现。这些框架通常提供了一些修剪工具和函数,以便进行参数和神经元的修剪。开发者需要根据具体的应用场景和需求来选择合适的修剪策略,并根据框架的API来实现修剪过程。 总之,代码修剪卷积神经网络是一种资源高效推理的方法,通过减小模型的尺寸和计算量,提高模型的效率和性能。这对于在资源受限的设备上进行深度学习推理任务非常有意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值