Compositional Factorization of Visual Scenes withConvolutional Sparse Coding and Resonator Networks

具有卷积稀疏编码和谐振器网络的可视场景的合成因子分解

https://arxiv.org/pdf/2404.19126

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

摘要—

我们提出了一种用于视觉场景分析和识别的系统,该系统基于将图像的稀疏潜在特征表示编码为高维向量,并随后对其进行因式分解以解析场景内容。稀疏特征表示通过卷积稀疏编码从图像统计数据中学习,而场景解析则由共振网络 [1] 执行。将稀疏编码与共振网络结合,增加了分布式表示的容量,并减少了因式分解过程中的组合搜索空间中的冲突。我们发现,对于这个问题,共振网络能够快速而准确地进行向量因式分解,并且我们开发了一种基于信心的度量来帮助跟踪共振网络的收敛情况。

关键词—高维计算,向量符号架构,稀疏编码,共振网络,视觉场景理解,组合搜索,向量因式分解,叠加计算

I. 引言

视觉感知需要理解视觉场景中物体及其姿态的先前未遇见的组合。虽然这个过程看起来轻而易举,但我们仍然缺乏一个具体且普遍接受的计算模型来解释这种强大的泛化能力。计算机视觉领域的最新努力,包括用于物体识别的深度学习模型,通常需要数千个样本来学习一个物体类别,但这些模型仍然对图像像素值的小扰动过于敏感 [2],对大的语义变化过于不变 [3]。这些实例表明,与人类使用的策略存在偏差,人类能够从有限的样本中学习并稳健地识别新的视觉类别 [4]。

从有限的示例中学习新对象是可能的,当我们利用组合性(compositionality)这一思想。例如,一个人如果对“蓝色”和“玫瑰”有视觉概念,那么即使他们没有明确见过这种结合,他们也能在看到一朵蓝色玫瑰时识别出来。尽管组合性允许泛化,我们仍然需要一个计算框架来描述基本的组合原语、这些原语的组合操作,以及如何从图像中的像素值中解开这些组合。例如,在视觉处理中,我们需要理解“蓝色”和“玫瑰”这些概念是如何由神经群体表示的,它们是如何结合在一起以表示蓝色玫瑰的图像,以及如何将这种表示分解成颜色和(花卉)身份。虽然感知中的组合和分解问题随处可见,但我们目前缺乏一个机制模型来描述大脑是如何执行这些操作的。

高维计算 [5],也称为向量符号架构 [6] (HD/VSA),提供了一个明确的框架来建模组合结构并处理和分解组合表示 [7]。在 HD/VSA 中,数据结构被表示为维度 D 通常在 1,000 到 10,000 之间的随机高维向量。在这里,我们考虑每个分量是幅度为单位的复数。这种 HD/VSA 模型,也称为傅里叶全息简化表示 [8],配备了用于将项目捆绑在一起的逐分量和 (+) 操作,绑定项目的哈达玛积(逐分量乘法, ⊙),以及用于测量向量间相似性的内积操作 (⟨·, ·⟩)。在这个框架下,组合表示通过绑定和捆绑向量来形成(例如,表示一组角色-填充对)。然而,还需要反转这一操作——即,将复合结构(表示为向量)分解以恢复生成它的各个组成元素(也为向量)。这相当于一个向量因式分解问题。

共振网络 [1] 被提议作为解决 HD/VSA 中向量因式分解问题的高效方案,最近成功应用于视觉场景中对象及其姿态的解耦 [9]。这种方法利用图像像素值的直接编码到高维向量,作为初步概念验证。然而,扩展这种方法到自然图像时出现的问题是由于图像像素值之间的强相关性导致向量的非正交性 [10]。为了解决这一问题,我们提出了一个基于首先使用卷积稀疏编码 [11] 形成图像的稀疏表示的解决方案,这种编码学习了图像中包含的基本模式的字典。我们展示了该方法产生的向量表示更接近正交,并且比之前的方法或每个步骤单独执行时表现更准确、更高效,使得共振网络能够应用于更复杂的因式分解问题。

II. 方法

我们试图解决的问题可以表述为:给定一幅包含一个或多个对象的图像,我们能否返回每个对象的身份和在图像中的位置?为了解决这个问题,我们采取了三个步骤:1) 使用卷积稀疏编码推断图像的潜在表示,2) 将潜在表示转换为可以因式分解为每个对象及其姿态的向量,3) 使用共振网络对高维向量进行因式分解。下面我们详细描述每一步骤。

A. 使用卷积稀疏编码学习和推断图像的潜在表示

在为因式分解设计有用的图像潜在表示时,有两个标准是至关重要的。首先,图像表示应减少冗余,即最小化表示元素之间的统计依赖,以明确数据中包含的结构。其次,图像表示应对常见的图像变换类别保持等变性。在这种情况下,我们关注的是平移:如果图像表示被某个二维平移所改变,潜在表示也应有相应的平移。

卷积稀疏编码 [11] 是一种无监督学习算法,它满足这两个性质。对于每个二维图像 I,我们推断出一组潜在特征图 {Aj}。这种潜在表示将图像表达为卷积基函数 ϕj 的线性组合,具体公式为:

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

C. 用共振网络对场景向量进行因式分解

共振网络 [1] 是一种将绑定向量的组合因式分解为构成该组合的单个元素的算法。为了使问题明确提出,假设最大因素数已知,并且每个因素都来自离散的可能性集合。即使在这些假设下,问题仍然很困难,因为搜索空间的规模非常大。在我们的设置中,强力破解方法需要进行次比较。相比之下,共振网络通过在叠加空间中搜索来解决因式分解问题;也就是说,它递归地更新估计因素的加权组合,直到收敛。实证研究表明,这种策略在向量因式分解问题上比其他方法(包括强力搜索和基于梯度的方法)收敛得更快、更准确 [16, 17]。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

III. 结果

为了展示卷积稀疏编码的好处,我们将我们的方法与使用图像像素值直接编码到 HD/VSA 向量中的共振网络进行了比较。我们发现,卷积稀疏编码在多个方面提高了共振网络的性能,包括:

- 在共振网络的单次试验中的因式分解准确性更高;

- 收敛到正确解的速度更快;

- 多对象的因式分解表现更好;

- 对最终输出的置信度更高;这表明更好的模式分离。

我们展示了这些趋势在多个数据集上均成立,重点关注两个案例(“随机条形图”和“平移 MNIST”)。关于第三个数据集(“字母”)的进一步实验在附录中进行了讨论。

A. 随机条形图

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

这对应于从场景中解释已经找到的形状,以便共振网络能够收敛到另一个解决方案。比例系数测量共振网络是否收敛到场景中的实际对象。如果找到了正确的对象并且位置正确,该系数将接近 1。如果没有,它将接近 0。因为解释过程不使用地面真实信息,当解码出错误的对象时,它会对 HD/VSA 向量贡献附加噪声,从而使解码剩余对象的问题变得更加困难。最终,图 1e 的结果显示,对于多对象场景,稀疏表示比像素编码更有效。对于这种场景,我们在分级基础上评估准确性(例如,在识别了 5 个对象-位置对中的 4 个的场景中,准确性评估为 80%)。场景中的形状越多,形状之间的空间重叠概率就越大。我们观察到,在重叠的情况下,像素编码会导致不正确的因式分解,而稀疏表示仍然有效。像素编码往往因为数据中像素级相关性引起的局部最小值而失败。然而,稀疏编码通过将重叠的特征分配到不同的特征图来减少这些相关性,使共振网络更容易区分它们。

B. 翻译的 MNIST

接下来,我们将模型在一个更自然的数据集上的结果进行比较,该数据集包含 MNIST 数据集中的手写数字。与“随机条形图”数据集不同,我们没有地面真实词典,因此必须从数据中学习词典。我们在 MNIST 数据集的一个小子集上优化字典的基函数,然后使用 Python 库 SPORCO [19] 对 10 个典型数字进行模型推断。具体来说,我们在 1,000 个 MNIST 训练样本上训练了 16 个基函数({ϕj}),每个基函数的大小为 12 × 12,直到收敛。我们发现学习到的特征类似于局部的“笔画”,这些笔画类似于数字的一部分(见图 2b)。利用这些特征,我们可以生成具有多个对象的图像的稀疏表示(示例见图 2a 和 2c)。

打开网易新闻 查看精彩图片

为了评估性能的扩展性,我们使用一组 10 个典型数字测试共振网络的因式分解准确性,测试范围涵盖了垂直和水平位置的增加。因此,搜索空间的大小为 10L²,其中 L 是图像的维度。在这里,我们将共振网络的最大迭代次数设置为 20,并且当两个连续输出向量之间的差异小于 0.05 时,共振网络被认为已收敛。我们使用固定的维度(D = 10,000)来演示随着共振网络因式分解问题变得更困难,性能的扩展;值得注意的是,对于许多 L 的值,这个维度小于稀疏编码的特征图(总大小为 16L²)。我们观察到,对于更大的维度,所有条件下的准确性都有所提高,这与以前对共振网络的模拟结果一致 [17]。

与我们在“随机条形图”数据集上的发现一致,我们发现稀疏表示在性能上始终优于像素编码。值得注意的是,即使对于数百个可能的位置,稀疏表示的单次试验准确性仍接近完美(见图 2d)。在所有设置中,我们还观察到,随着搜索空间的增加,平均迭代次数增加,而使用稀疏表示时共振网络的收敛速度更快(见图 2e)。

最后,我们评估了在因式分解多个数字时的准确性,使用了与“随机条形图”数据集相同的解释性消除程序。我们发现,使用稀疏表示的共振网络在准确找到场景中的数字方面保持了其优势(见图 2f)。

C. 置信度作为提前停止的标准

此外,我们提出了一种基于置信度的新指标,用于测量共振网络中的进展。我们展示了置信度评分计算简单,能够正确地提前停止共振网络的动态,并且稀疏编码共振网络能够更好地利用这种方法。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

图3a展示了置信度值在共振网络动态进展中的变化示例。我们从经验中观察到,许多运行经历了两个阶段:早期的“探索”阶段,其中置信度值保持较低,以及“确认”阶段,其中置信度值逐渐增加直到收敛。虽然这两个阶段在相对比例上有所不同,但关键见解是,在第二阶段期间,共振网络的估计不会发生变化,这表明提前停止可以节省计算。

打开网易新闻 查看精彩图片

我们还观察到,置信度指标可以是预测共振网络是否准确收敛的强有力的工具。图3b展示了在固定维度和搜索空间(D = 5000, L = 250)下,最终共振网络状态(使用稀疏表示)的均值置信度值。在这种情况下,分布通过置信度阈值很好地分离,这进一步支持了置信度作为适当的停止标准。

因此,我们将基于置信度的收敛标准与之前介绍的固定点标准进行比较。为了评估基于置信度的标准的有效性,我们在具有D = 5000, L = 120的Translated MNIST数据集上评估了共振网络的性能,并观察了1,000次试验的性能。我们发现,在这些条件下,稀疏表示的置信度阈值为0.6,像素编码的置信度阈值为0.3,足以观察到迭代次数的减少(图3c),而不会牺牲准确性(图3d)。值得注意的是,正确共振网络因式分解的均值置信度分数在像素编码中较低,这是由于数字模板之间的相关性。尽管在稀疏情况下置信度阈值更高,但基于置信度的标准仍导致更快的收敛。

IV. 讨论

A. 研究总结

我们提出了一种基于两个关键概念的视觉场景解构方法:卷积稀疏编码和共振网络。尽管这两个概念之前已被提出并独立使用,但我们展示了卷积稀疏编码如何提供一个等变的数据自适应编码方案,该方案可以转换为适合共振网络因式分解的高维向量。我们展示了这种表述在多个指标上相较于基于像素的编码方案的改进:准确性、收敛时间和置信度,即使是在包含多个对象的场景中。

与视觉场景分析相关的HD/VSA(高维/符号架构)研究可以分为两种策略。第一种策略[1, 22]将图像视为对象的符号关系,事先定义从图像到高维向量的正确映射,并通过监督学习训练神经网络来学习这种映射。与之相反,我们采用无监督学习方法,以更紧凑的方式描述图像中的潜在结构,并使用VFA(向量函数架构)编码策略来处理图像中的连续值变量。因此,我们的方法与[9]使用的第二种策略类似,但我们编码的是稀疏编码得到的系数,而不是直接编码像素值。我们的结果表明,这种改变在共振网络因式分解的性能上有显著差异。

相反,先前关于卷积稀疏编码的工作主要集中在图像重建或超分辨率等应用上(例如,[23]),在解构问题上的应用尚未得到充分探索。与之类似的模型(如分割模型)通常处于强制因式分解可行的设置中,留给开发更高效算法的可能性。

我们方法的主要优势在于其组成性和透明性。该模型明确是组成性的,因为它将所有图像视为由相对较小的代码本条目和操作(绑定和捆绑)构成。组成性使得用相对较少的代码本条目实现高表达能力,以及通过向对象代码本中添加新条目轻松地推广到新实例。透明性来自于稀疏编码使得图像结构既紧凑又明确,以及共振网络的每一步估计可以通过与代码本的内积值比较来直观理解。我们开发的置信度指标利用这种对应关系,允许在不损失准确性的情况下在共振网络中进行早期停止。

B. 相关工作

与现有HD/VSA模型的关系。尽管HD/VSA最初被制定为使用随机高维向量进行符号推理的模型[24, 25],但最近的研究工作重点扩展了这一框架以处理连续变量和函数[14, 26, 27]。这些联系可以通过将其视为随机化核近似[28, 29]来使其严谨。在这里,我们展示了这一框架如何自然地扩展到卷积稀疏编码,为图像表示提供了一种通用的方法。

我们的两阶段模型在结构上也与计算机视觉中提出的几个模型具有相似性。特别是,它属于那些生成模型表达多线性函数的模型类别[30]。这并不令人惊讶,因为这些函数能够进行可处理的推理,同时足够表达大类的操作。

一个有趣的研究方向集中在通过稀疏编码学习基函数和常见的变换类(例如旋转和位移)。特别地,[31]学习了对象模板和不可约表示的交换紧致连通群(表达变换)。值得注意的是,这种生成模型与我们的共振网络电路等效,但使用了不同的策略来推断给定图像的潜在表示。由于他们的方法的推断策略在变换空间中实际上是强制性的,未来的一个有趣方向是了解共振网络如何改善推断。

我们还观察到与地图寻址电路(MSC)[32]的相似性,MSC提供了一种通过搜索-叠加原则解决视觉场景因式分解问题的替代方法。以前的研究在[17]中提到过共振网络与MSC的相似性。然而,两种系统在定义动态方式上存在明显差异。高层次上,共振网络旨在通过其不同的输入之间的自我一致性来解释图像;而MSC则通过淘汰不正确的输入来细化其估计。猜测这两种方法在解决因式分解问题时是否存在进一步的突现相似性是很有趣的;我们的置信度指标为这种比较提供了一种定量基础。

C. 未来工作

最后,我们提到了一些对我们的方法进行扩展的有前景的方向。一个方向是将我们的方法应用于更复杂的变换类,例如,通过学习用于卷积稀疏编码的基函数字典以及时间变化自然场景中的常见变换[33, 34]。第二个方向是在共振网络中加入可学习的模块,以便对象可以表示为特定位置的类。第三个方向是探索其他关于共振网络的研究建议的扩展,例如,利用剩余数系统[16]带来的效率提升、共振网络动态中的非线性[35]以及处理旋转和缩放等情况的对数极坐标变换[9]。

另一个未来工作领域是设计我们方法在神经形态硬件上的实现。稀疏编码已经在脉冲神经网络[36]和神经形态硬件[37]中实现过,复值吸引子神经网络如共振网络[9, 38]也是如此。这项工作与最近对HD/VSA的内存计算实现的努力相辅相成,满足了HD/VSA作为新兴硬件中算法级抽象范式的承诺[7]。