Efficient Inference in Fully Connected CRFs with Gaussian Edge Potentials

大多数用于图像分割和标记最先进的技术都使用了在像素或图像区域上的条件随机场。

本文中在图像的所有像素总中定义全连接CRF模型。这样会产生数十亿的边缘,使得传统算法难以求解,针对这一问题本文提出了用于全连接CRF模型的高效近似推断算法,用来求解。

其中PEP(pairwise edge potentials)是有高斯核的线性组合定义的。用来描述标签和标签之间关系的特征函数。

1 Introduction

一种常用的图像分割方法是在图像像素的分类中将此问题作为条件随机场的最大后验推断。

 

  • 最大后验(英文为Maximum a posteriori,缩写为MAP)。举个例子:数字通信系统中,最大后验概率准则是指在接收到混合波形后,判断出发送信号的条件概率密度最大。由于它是在收到混合波形后才具备的,故称为后验概率(或概率密度)。
  • 核函数是一种把低维数据映射到高维数据的工具。

基本的CRF模型由像素或图像块以及相邻像素间的势函数组成。由这种邻接的CRF模型限制了其对于图像内远程建模的能力,而且通常会导致分割边界过度平滑的问题。未来提高分割和标记精度,有一些研究拓展了基本的CRF框架,以便在图像区域内定义分层连接和高阶势函数。但是这些方法的准确性会受到无监督图像分割的限制。 这也限制了基于区域方法在复杂图像区域进行分割的能力。

本文中,探索了一种用于准确予以分割的新型模型结构,使用了全连接的CRF,在图像中的所有像素对中建立势函数。在【18 22 6 17】的研究中,全连接的CRF已经用于语义凸显给标记,但是全连接模型推理的复杂性限制了它们只能应用与数百个或更少的图像区域。另外,通过这些方法实现的分割精度仍然受到无监督分割的限制。

2 The Fully Connected CRF Model

定义 I {I1, . . . , IN}和 X{X1, . . . , XN},Ij为像素j的颜色向量,Xj是像素j的标签。

条件随机场(I,X)可以通过吉布斯建模得到P(X | I):

标签分类的最大后验概率MAP为:

为了方便,以下的标记中把条件省略掉,如

在全连接CRF模型中,根据吉布斯分布可以定义:

其中,i 和 j 的范围为1~N,通过分类器独立的为每个像素计算单像素势函数,该分类器可以在给定个图像特征的标签中产生一个分布。我们在实现中使用的单像素势函数包括,形状,纹理,位置和颜色的描述。

由于单像素分类器的输出独立于其他像素分类器产生的输出,因此通常由单像素分类器产生的MAP标记通常是由噪声的,如下图(b)所示:

成对像素的势函数为:

 

其中,

fi 和 fj 是像素i和j在一个任意特征空间的特征向量。w是线性权重,μ是兼容性函数,为相邻相似标签引入了一个惩罚项。(例如,它将标记为“天空”和“鸟”的一对附近像素,处罚到,与标记为“天空”和“猫”的像素相同的程度。)

对于多分类的语义分割和标注问题,我们使用对比度敏感的双核势函数。I代表颜色,p代表位置。

 

appearance kernel(外观内核)受到观察的启发,即具有相似颜色的附近像素可能属于同一类;接近度和相似度由分母中的参数θ控制。smoothness kernel(平滑内核)可以消除较小的孤立区域。相关参数根据section4中的算法,从数据中学习得到。

 3 Efficient Inference in Fully Connected CRFs

xxxxx

3.1 Mean Field Approximation

用平均场近似的方法计算Q(X)的分布代替P(X),在所有的Q分布中,最小化KL散度D(Q||P),

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值