分层表示提升图像检索精度的新技术

本文介绍了一种基于分层代理损失函数的深度度量学习方法,通过显式建模对象层次结构显著提升图像检索精度。该方法在多个标准数据集上超越现有技术,实现了新的最先进性能,同时减少了训练复杂度并加速收敛过程。

分层表示改善图像检索

一种新的度量学习损失函数通过将超类分组并学习其内部共性来提升图像检索性能。

图像匹配的挑战

图像匹配具有众多实际应用。例如,某中心的StyleSnap或购物应用中的相机搜索功能允许用户上传照片以搜索相似图像。图像匹配通常通过将图像映射到表示空间(嵌入空间)并查找映射位置相近的图像来实现。

在某机构上周于WACV 2022会议上发表的论文中,详细阐述了在训练神经网络计算图像表示时,通过显式建模对象层次结构来提高图像检索精度的方法。

层次化数据优势

在购物网站场景中,产品图像存在天然层次结构:服装作为超类包含T恤和连帽衫等子类,而每个子类又包含具体产品实例。研究证明,利用这种层次结构构建图像检索系统能显著提升性能,即使没有现成层次结构,也能通过训练过程自动构建。

通过在多数据集、多性能指标上与九种现有方法的对比实验表明,该方法在绝大多数情况下都能提供最佳结果。

深度度量学习技术

图像检索中的图像匹配通常依赖于深度度量学习(DML),其中深度神经网络不仅学习如何将输入映射到嵌入空间,还学习用于测量空间邻近度的距离函数。

当前主流的DML损失函数分为两类:

  • 成对损失(如对比损失、三元组损失):在正负样本对间计算,拉近正样本对距离,推远负样本对距离
  • 代理损失(如proxy-NCA、proxy-anchor):学习一组称为代理的嵌入向量,代表类成员的平均位置(类中心点)

代理损失无需从训练数据中采样信息量大的样本对/三元组,消除了对采样复杂度的依赖并加速训练过程。特别是代理锚点损失已被证明能实现最先进的图像检索精度,且收敛速度远快于成对损失。

分层代理损失创新

提出的分层代理损失(HPL)是现有代理损失的扩展,其核心创新在于:

层次化代理结构

HPL包含分层代理体系,每个训练图像在每层都被分配到单个代理。损失计算为所有层级代理损失的加权和。在每层中,图像被拉向指定代理并远离所有其他代理,这使得网络通过学习每层组内共性来分层分组图像。

自动层次构建

当缺乏现成数据层次结构时(如电商目录),通过在训练期间对低级代理进行在线聚类来获得高级代理。具体训练算法包含四个核心步骤:

  1. 对精细代理运行k-means聚类获取粗粒度代理
  2. 训练网络T次迭代,更新网络和精细代理
  3. 每T次迭代后更新样本到粗粒度代理的分配
  4. 通过平均分配的低级代理更新高层级代理 重复步骤2-4直至收敛。

实验结果

在最新代理损失方法(proxy-NCA和代理锚点损失)基础上实现HPL,并在五个标准度量学习数据集上评估图像检索精度。实验结果表明,HPL持续改进了两者的检索精度,实现了新的最先进性能。具体性能对比数据可在原论文中查看详细实验评估。

技术影响

该方法不仅帮助模型推广到未见过的类别(通过学习超类内的共性),还在模型出错时导致更合理的检索结果。分层表示学习为图像检索系统提供了更强的泛化能力和更合理的错误恢复机制。

研究领域:计算机视觉、搜索与信息检索、机器学习
技术标签:WACV、数据表示、图像匹配

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计