《Fine-Grained Image Analysis with Deep Learning: A Survey》阅读笔记

论文标题

《Fine-Grained Image Analysis with Deep Learning: A Survey》

作者

魏秀参,南京理工大学

初读

摘要

  • 与上篇综述相同:

    • 细粒度图像分析(FGIA)的任务是分析从属类别的视觉对象。

    • 细粒度性质引起的类间小变化类内大变化使其成为一个具有挑战性的问题。

    • 本文还涵盖了 FGIA 的其他一些重要问题,例如公开的基准数据集及其相关的特定领域应用。

    • 最后在总结这项调查时强调了几个方向和有待社会进一步探索的问题。

  • 与上篇综述不同:

    • 本文试图通过整合两个基本的细粒度研究领域——细粒度图像识别和细粒度图像检索,重新定义和拓宽 FGIA 的领域

结论

这篇有 CONCLUSION 了哈 : )

  • 本文对基于深度学习的细粒度图像分析(FGIA)的最新进展进行了全面的调查。
    • 主张通过整合细粒度识别和细粒度检索方面的工作,扩大 FGIA 的定义。
    • 列举了现有研究中的差距,指出了一系列新兴课题,强调了未来重要的研究方向,并说明了 FGIA 问题仍远未解决。
  • 鉴于过去十年中性能的显著提高,随着我们朝着更现实、更有影响力的应用程序迈进,我们对未来的进展仍持乐观态度。

再读

Section 1 Introduction

  • 第一段:细粒度图像分析(FGIA)目标

    • 人类视觉系统天生具有精细的图像推理能力——我们不仅能够区分狗和鸟,还知道西伯利亚哈士奇和阿拉斯加雪橇之间的区别。

      在这里插入图片描述

    • 细粒度图像分析(FGIA)被引入学术界的目的完全相同,即教机器以细粒度的方式“看”

    • FGIA方法在工业和研究中有着广泛的应用,例如生物多样性自动监测、智能零售和智能交通,并在保护和商业等领域产生了积极影响。

  • 第二段:FGIA 与深度学习

    • FGIA 在计算机视觉中的目标是检索和识别属于超类别(也称为元类别或基层类别)的多个下级类别的图像,例如不同种类的动物/植物、不同型号的汽车、不同种类的零售产品等。
    • 关键的挑战在于理解细粒度的视觉差异,这些差异足以区分总体外观高度相似但细粒度特征不同的对象。
    • 深度学习已经成为判别特征学习的一种强大方法,并在FGIA领域取得了显著突破。支持深度学习的 FGIA 极大地推动了这些方法在各种应用场景中的实际部署。
  • 第三段:大量文章与竞赛

    • 粗略统计数据显示,在每一次高级视觉和机器学习会议上,平均每年都会发表超过 10 篇关于基于深度学习的 FGIA 的会议论文。
    • 许多关于 FGIA 的有影响力的比赛经常在在线平台上举行。代表包括一系列的自然学家竞赛(针对大量自然物种)、自然保护协会渔业监测(针对鱼类物种分类)、座头鲸鉴定(针对鲸鱼身份分类)等。
    • 每场比赛都吸引了来自世界各地的数百名参赛者,有些甚至超过了 2000 支队伍。
    • 针对 FGIA 主题的特定教程和研讨会也在顶级国际会议上举行。
  • 第四段:本文工作

    • 问题:

      对深度学习的 FGIA 的研究仍然是零散的。

    • 本次调查的目的:

      • 全面调查 FGIA 的最新成就,特别是深度学习技术带来的成就,
      • 通过整合 FGIA 不同方面的研究,提出一个统一的研究前沿
    • 与现有调查的不同:

      • 现有的调查只关注细粒度识别/分类问题,正如我们所说,这只是FGIA更大研究的一部分。
      • 本文试图通过强调细粒度识别与细粒度图像检索这一并行但互补的任务之间的协同作用,重新定义和拓宽细粒度图像分析的领域,这也是 FGIA 的一个组成部分。
  • 第五段 五个贡献:

    • 拓宽了 FGIA 的领域,通过提供一个统一的景观,促进细粒度图像分析中相关问题之间的协同作用。
    • 对基于深度学习的 FGIA 技术进行了全面的综述,包括公认的问题定义、基准数据集、不同的 FGIA 方法家族,以及涵盖特定领域的 FGIA 应用。特别是,我们对这些方法进行了分类组织,为读者提供了该领域最先进技术的快速快照。
    • 在几个公开可用的数据集上整合了现有方法的性能,并提供了讨论和见解,为未来的研究提供信息。
    • 讨论了现有的挑战和悬而未决的问题,并确定了新的趋势和未来的方向,为社区解决这些问题提供了一个合理的路线图。
    • 为了持续跟踪这一快速发展领域的最新进展,我们提供了一个附带的网页,根据我们基于问题的分类法,对解决 FGIA 问题的论文进行了编目:http://www.weixiushen.com/project/Awesome_FGIA/Awesome_FGIA.html

Section 2 RECOGNITION VS. RETRIEVAL

识别与检索

先前对 FGIA 的调查主要集中在细粒度识别上,没有揭示 FGIA 问题的所有方面。本文涵盖了细粒度图像分析的两个基本领域(即识别和检索),以便全面回顾基于深度学习的 FGIA 技术的最新进展。

在这里插入图片描述

  • 细粒度识别(Fine-Grained Recognition):将不同的细粒度识别方法家族组织为三种范式

    • 通过定位分类子网络进行识别
    • 通过端到端特征编码进行识别
    • 利用外部信息进行识别。

    细粒度识别是FGIA研究最多的领域,因为识别是大多数视觉系统的基本能力,因此值得长期持续研究。

  • 细粒度检索(Fine-Grained Retrieval):根据查询图像的类型将细粒度检索方法分为两组

    • 基于内容的细粒度图像检索
    • 基于草图的细粒度图片检索。

    与细粒度识别相比,细粒度检索是近年来FGIA的一个新兴领域,越来越受到学术界和工业界的关注。

  • 识别和检索差异(Recognition and Retrieval Differences):细粒度识别和检索都旨在识别不同细粒度对象之间有区别但微妙的差异

    • 细粒度识别是一项封闭世界的任务,具有固定数量的从属类别
    • 相比之下,细粒度检索将问题扩展到具有无限子类别的开放世界环境中。此外,细粒度检索还旨在对所有实例进行排名,以便根据查询中的细粒度细节对描述感兴趣概念(例如,相同的子类别标签)的图像进行最高排名。
  • 识别和检索协同效应(Recognition and Retrieval Synergies)

    • 细粒度识别和检索的进展具有共性,可以相互受益。

    • 常见的技术:

      深度度量学习方法、多模态匹配方法,以及选择有用的深度描述符的基本思想等。

    • 此外,在现实世界的应用中,细粒度识别和检索也相互补充:

      检索技术能够通过利用来自细粒度识别模型的学习表示来支持新的子类别识别。

Section 3 BACKGROUND: PROBLEM AND CHALLENGES

背景:问题和挑战

  • 第一段:FGIA 的地位

    • FGIA 通常涉及的两个中心任务:细粒度图像识别和细粒度图像检索。

    • 细粒度分析位于基本级别的类别分析(即通用图像分析)和实例级别的分析(例如个体识别)之间的连续体中。

      在这里插入图片描述

  • 第二段:FGIA 与通用图像分析的区别

    • 在通用图像分析中,目标对象属于粗粒度元类别(即基本级别类别),因此在视觉上非常不同(例如,确定图像是否包含鸟、水果或狗)。

    • 在 FGIA 中,由于对象通常来自同一元类别的子类别,因此问题的细粒度性质导致它们在视觉上相似

    • 细粒度性质具有挑战性,因为高度相似的子类别导致了小的类间变化,以及姿态、尺度和旋转方面的大的类内变化。这与一般图像分析(即小的类内变化和大的类间变化)相反,也是 FGIA 成为一个独特且具有挑战性的问题的原因。下图分别展示了图中每行四种燕鸥中的每一种。

      在这里插入图片描述

  • 第三段:一些如归 FGIA 的问题

    • 虽然实例级分析通常针对对象的特定实例,而不仅仅是对象类别,甚至是对象子类别,但如果我们向下移动粒度范围
    • 在极端情况下,个人识别(例如人脸识别)可以被视为细粒度识别的一个特殊实例,其中粒度处于个人身份级别。
    • 人/车再识别可以被视为一项细粒度任务,旨在确定是否拍摄了同一特定人/车的两张图像。在实践中,这些工作使用 FGIA 的相关方法来解决相应的领域特定问题,例如,通过捕捉对象(人脸、人和车辆)的辨别部分发现从粗到细的结构信息、开发基于属性的模型等。
    • 这些实例级问题的研究也非常活跃。然而,由于此类问题不在经典 FGIA 的范围内(见图3),有关更多信息,我们请读者参阅这些特定主题的调查论文。在下文中,我们首先制定我们对经典 FGIA 的定义。
  • 下面是一些看不下去的公式化的定义,看不了一点,略了。

Section 4 BENCHMARK DATASETS

基准数据集

  • 视觉界发布了许多盖了不同领域的细粒度的基准数据集:

    • 例如鸟类、狗、汽车、飞机、花卉、蔬菜、水果、食品、时尚、零售产品等。

    • 值得注意的是,即使是最流行的大规模图像分类数据集 ImageNet,也包含细粒度的类,涵盖了许多狗和鸟的子类别。

    • 下图示例了一些细粒度基准数据集的代表性图像:

      在这里插入图片描述

    • 下表总结了最常用的图像数据集,并指出了它们的元类别、图像数量、类别数量、它们的主要任务和额外的可用监督,例如边界框、零件注释、层次标签、属性标签和文本描述

      在这里插入图片描述

      • “# images” 是指这些数据集的图像总数。
      • “BBox” 表示此数据集是否提供对象边界框监督。
      • “Part anno 零件注释” 表示提供了关键零件注释。
      • “HRCHY” 对应分层标签。
      • “ATR” 表示属性标签(例如翅膀颜色、雄性、雌性等)。
      • “Texts 文本” 表示是否提供图像的细粒度文本描述。
    • 示例图像及其与 CUB200-2011 相关的监督。如图所示,多种类型的监督包括:图像标签、零件注释(也称为关键点定位)、对象边界框(即绿色边界框)、属性标签(即“ATR”)和自然语言的文本描述。

      在这里插入图片描述

  • CUB200-2011 记首功:

    • 具体来说,其中 CUB200-2011 是最受欢迎的细粒度数据集之一。几乎所有的 FGIA 方法都选择它来与现有技术进行比较。
    • 此外,CUB200-2011 不断为进一步的研究做出贡献,例如,收集细粒度图像的文本描述用于多模态分析。
  • 这两年的新数据集及其引入的新特征:

    • 近年来,提出了更具挑战性和实用性的细粒度数据集,例如,包含不同植物和动物物种的 iNat2017,以及零售产品的 RPC。
    • 这些数据集的新特性包括它们是大规模的,具有层次结构,表现出域间隙,并形成长尾分布。这些挑战说明了 FGIA 在现实世界中的实际要求,并激发了新的有趣的研究挑战。
  • 一系列基于草图的细粒度图像检索数据集

    • 如 QMUL-Shoe、QMUL-Chair、QMSL-手提包、SBIR-2014、SBIR-2017、Sketchy、QMUL-Shoe-V2
    • 进一步推进细粒度检索的发展。
  • 构建了一些新的数据集和基准

    • 如 FG-Xmedia,以将细粒度图像检索扩展到细粒度跨媒体检索。

Section 5 FINE-GRAINED IMAGE RECOGNITION

细粒度图像识别

  • 从广义上讲,现有的细粒度识别方法可以分为以下三个主要范式:

    • 通过本地化分类子网络进行识别;
    • 通过端到端特征编码进行识别;
    • 利用外部信息进行识别。
  • 其中,前两种范式通过仅利用与细粒度图像相关的监督来限制自己,如图像标签、边界框、零件注释等。

  • 为了进一步解决模糊的细粒度问题,有大量工作使用了额外的信息,如图像拍摄的地点和时间、网络图像或文本描述。

  • 为了直观地展示这些具有代表性的基于深度学习的细粒度识别方法,在下图中显示了按时间顺序排列的概述,将它们组织成前面提到的三个范式。

    在这里插入图片描述

  • 对于性能评估,当测试集是平衡的(即,每个类别都有相似数量的测试示例)时,细粒度识别中最常用的度量是数据集所有下级类别的分类准确性。它被定义为:
    A c c u r a c y = ∣ I c o r r e c t ∣ ∣ I t o t a l ∣ = 模型正确分类的图像数量 测试集中所有子类别的图像数量 \mathrm{Accuracy}=\frac{|I_\mathrm{correct}|}{|I_\mathrm{total}|}=\frac{\mathrm{模型正确分类的图像数量}}{\mathrm{测试集中所有子类别的图像数量}} Accuracy=ItotalIcorrect=测试集中所有子类别的图像数量模型正确分类的图像数量

5.1 Recognition by Localization-Classification Subnetworks

通过本地化分类子网络进行识别

  • 设计思想:

    研究人员试图创建模型,捕捉细粒度对象的判别语义部分,然后构建与这些部分相对应的中级表示,用于最终分类。089

  • 具体设计:

    • 设计了一个定位子网络来定位关键零件,然后获得相应的零件级(局部)特征向量。这通常与用于表示细粒度对象的对象级(全局)图像特征相结合。
    • 然后是一个分类子网络,它执行识别。这两个协作子网络的框架形成了第一个范式,即具有本地化分类子网络的细粒度识别。
    • 这些模型的动机是首先找到相应的零件,然后比较它们的外观。即需要捕获在细粒度类别中共享的语义部分(例如,头部和躯干),并发现这些部分表示之间的细微差异。
  • 第一范式中的现有方法可分为四大类:

    • 采用检测或分割技术,
    • 利用深度滤波器,
    • 利用注意力机制,
    • 其他方法。
5.1.1 Employing Detection or Segmentation Techniques

采用检测或分割技术

  • 设计思想:

    • 使用检测或分割技术来定位与细粒度对象部分相对应的关键图像区域是很简单的,例如,鸟头、鸟尾、车灯、狗耳朵、狗躯干等。
    • 得益于定位信息,即零件级边界框或分割掩模,模型可以获得相对于这些零件的更具鉴别力的中级(零件级)表示。进一步增强分类子网络的学习能力,从而显著提高最终识别的准确性。
  • 相关工作:

    该范式中的早期工作使用了**额外的密集部分注释(也称为关键点定位)**来定位对象的语义关键部分。

    • Branson 等人提出使用检测到的零件关键点组来计算多个扭曲的图像区域,并通过姿态归一化进一步获得相应的零件级特征。

    • 张等人首先基于基本事实零件注释生成零件级边界框,然后训练 R-CNN 模型来执行零件检测。

    • Di 等人进一步提出了一种阀门连接函数(VLF),该函数不仅连接了所有子网络,而且根据零件对准结果细化了定位。

      • 为了集成语义零件检测和抽象,SPDA-CNN 设计了一种自上而下的方法,通过继承先前的几何约束来生成零件级提案,
      • 然后使用 Faster R-CNN 返回零件定位预测。
    • 其他方法利用了分割信息。

      • PS-CNNMask-CNN 采用分割模型来获得零件/对象掩码,以帮助零件/对象定位。
      • 与检测技术相比,分割可以实现更准确的零件定位,因为分割侧重于更精细的像素级目标,而不仅仅是粗略的边界框。
  • 注释依赖与弱监督:

    • 使用传统的检测器或分割模型需要密集的零件注释来进行训练,这是劳动密集型的,并且会限制现实世界细粒度应用程序的可扩展性和实用性。
    • 因此,希望仅使用图像级标签来准确定位细粒度零件,这组方法被称为“弱监督”。
      • 值得注意的是,自2016年以来,在弱监督环境中开发细粒度方法的趋势明显,而不是在强监督环境中(即使用零件注释和边界框)。
      • 张等人采用了空间金字塔策略,从对象提案中生成部分提案。然后,通过使用聚类方法,他们生成了零件建议原型聚类,并进一步选择有用的聚类来获得有区别的零件级特征。
      • 基于联合分割的方法也通常用于这种弱监督的情况。一种方法是在没有监督的情况下使用共同分割来获得对象掩码,然后执行启发式策略,例如零件约束或零件对齐,以定位细粒度零件。
  • 内部语义相关性

    • 以前的大多数工作都忽略了区分零件级特征之间的内部语义相关性
    • 上述方法独立地挑选出判别区域并直接利用它们的特征,而忽略了对象的特征在语义上是相互关联的,并且区域组可以更具判别性。
    • 因此,最近的一些方法试图联合学习零件级特征之间的相互依赖性,以获得更通用、更强大的细粒度图像表示。通过执行不同的特征融合策略(例如,LSTM 或知识提取),这些联合零件特征学习方法产生了比以前的独立零件特征学习法高得多的识别精度。
5.1.2 Utilizing Deep Filters

使用深层过滤器

  • 设计思想:

    • 在深度卷积神经网络(CNN)中,深度滤波器(即CNN 滤波器)是指卷积层的学习权重。来自这些深度过滤器的响应/激活可以被视为本地化描述符。深度描述符具有以下属性:
      • 局部性:它们描述并对应于相对于整个输入图像的局部图像区域;
      • 空间性:它们还能够对空间信息进行编码。
    • 中间的 CNN 输出(例如,局部深度描述符)可以与常见对象的语义部分联系起来。因此,细粒度社区试图将这些滤波器输出用作部分检测器并因此依赖它们来进行定位分类细粒度识别。这里的一个主要优点是,这不需要任何零件级注释。
  • 相关工作:

    • 使用深度滤波器从预训练的分类 CNN 中获得检测到的部分后,使用基于部分的特征向量来训练离线分类器,例如 SVM 或决策树,以进行最终识别任务。
      • 肖等人对这些深度滤波器进行光谱聚类以形成组,然后使用滤波器组作为部分检测器。
      • NAC 利用 CNN 的通道作为部分检测器。
      • 刘等通过使用来自两个连续卷积层的激活作为指导,聚合基于部分的深度描述符,开发了一种跨层池化方法。
      • PDFS 被提出选择与零件相对应的深度滤波器,然后迭代更新学习到的“检测器”,从而发现了具有判别性和一致性的基于零件的图像区域。
    • 便于学习零件检测和基于零件分类的统一的端到端训练的细粒度模型
      • 王等人使用了一个额外的可学习的 1 × 1 1\times1 1×1 卷积滤波器作为小块(即部分)检测器。随后是全局最大池化,以保持最高激活率相对于最终分类的过滤器。
      • 基于类响应映射,S3N 利用类峰值响应,即局部最大值,作为零件定位的基础。S3N 也以相互部分学习的方式考虑部分相关性。
5.1.3 Leveraging Attention Mechanisms

利用注意力机制

  • 设计思想:

    • 以前的定位分类细粒度方法的主要缺点之一是需要对对象部分进行有意义的定义
    • 然而,在许多应用中,可能很难表示甚至定义某些对象类的公共部分,例如,非结构化对象,如菜或具有重复部分的花。
    • 与这些定位分类方法相比,寻找零件的一个更自然的解决方案是利用注意力机制作为子模块。这使得 CNN 能够关注细粒度对象的松散定义区域,因此成为一个有前景的方向。
  • 相关工作:

    • Fu 等人和 Zheng等人率先引入注意力处理来提高细胞神经网络的细粒度识别精度。
      • RA-CNN 使用循环视觉注意力模型来选择一系列注意力区域(对应于对象的“部分”,这里的“部分”是指细粒度对象的松散定义的注意区域,这与手动注释中明确定义的对象部分不同)。RA-CNN 以先前的预测为参考,以从粗到细的方式迭代生成区域注意力图。
      • MA-CNN 配备了多注意力 CNN,可以并行返回多个区域注意力。
    • Peng 等人和 Zheng 等人提出了多层次注意力模型来获得层次注意力信息(即对象级和部分级)。
      • He 等人应用多层次注意力,通过 n 路端到端判别定位网络为每个图像同时定位多个判别区域,该网络同时定位判别区域并对其特征进行编码。
      • 与上述单层次注意力方法相比,这种多层次注意力可以产生多样化和互补的信息。
    • Sun 等人结合了渠道关注和度量学习,以加强不同关注区域之间的相关性。
    • 郑等人开发了一个三线性注意力采样网络,从数百个部分建议中学习细粒度的细节,并有效地将学习到的特征提取到单个 CNN 中。
    • Ji 等人提出了一种基于注意力的卷积二元神经树,该树将注意力机制与树结构相结合,以促进从粗到细的分层细粒度特征学习。尽管注意力机制在细粒度识别中实现了很强的准确性,但在小规模数据的情况下,它往往会过度拟合。
5.1.4 Other Methods

其他方法

  • 空间变换器网络(STN)
    • STN 最初是为了以端到端可学习的方式显式执行空间变换而引入的。
    • STN 可以配备多个并行的转换器,以进行细粒度识别。STN 中的每个变换器可以对应于具有空间变换能力的零件检测器。
  • 王等人开发了一个具有几何约束的三元组补丁作为模板,以自动挖掘判别三元组,然后用挖掘的三元组生成中级表示进行分类。
  • 其他方法通过引入反馈机制获得了更好的精度
    • NTS-Net 采用多智能体协作学习方案来解决细粒度识别的核心问题,即准确识别图像中的信息区域。
    • M2DRL 是第一个在对象和零件级别上利用深度强化学习,使用其定制的奖励函数来捕获多粒度判别定位和多尺度表示。
  • 受自然语言处理中低秩机制的启发,Wang 等人提出了 DF-GMM 框架,以缓解高级特征图中的区域扩散问题,用于细粒度零件定位。
    • DF-GMM 首先通过构造低秩基从高级特征图中选择判别区域
    • 然后应用低秩基的空间信息来重构低秩特征图。零件相关性也可以通过重组处理进行建模,从而提高准确性。

5.2 Recognition by End-to-End Feature Encoding

通过端到端特征编码进行识别

  • 设计思想:
    • 与其他视觉任务一样,特征学习在细粒度识别中也发挥着重要作用。
    • 由于子类别之间的差异通常是非常微妙和局部的,因此仅使用完全连接的层捕获全局语义信息限制了细粒度模型的表示能力,从而限制了最终识别性能的进一步提高。
    • 因此,现有的一些方法旨在学习统一但有区别的图像表示。
  • 细粒度类别之间的细微差异的建模方法分为三类:
    • 通过执行高阶特征交互,
    • 通过设计新的损失函数,
    • 通过其他方式。
5.2.1 Performing High-Order Feature Interactions

执行高阶特征交互

  • 设计思想:

    • 特征学习在几乎所有的视觉任务中都起着至关重要的作用,如检索、检测、跟踪等。深度卷积网络的成功主要归功于学习到的判别性深度特征

    • 在深度学习的最初时代,全连接层的特征(即激活)通常用作图像表示。后来,更深卷积层的特征图被发现包含中高级信息,例如对象部分或完整对象,这导致了卷积特征/描述符的广泛使用。

      在这里插入图片描述

    • 此外,与完全连接的输出相比,将编码技术应用于这些局部卷积描述符已经带来了显著的改进。在某种程度上,编码技术的这些改进来自于最终特征中编码的高阶统计信息

    • 特别是对于细粒度识别,当 SIFT 特征的 Fisher Vector 编码在几个细粒度任务中优于微调的 AlexNet时,对高阶统计的端到端建模的需求变得明显。

  • 基于协方差矩阵的表示是一种具有代表性的高阶(即二阶)特征交互技术

    • V d × n = [ v 1 , v 2 , … , v n ] \boldsymbol{V}_{d\times n}=[\boldsymbol{v}_1,\boldsymbol{v}_2,\dots,\boldsymbol{v}_n] Vd×n=[v1,v2,,vn] 表示数据矩阵,其中每列包含从图像中提取的局部描述符 v i ∈ R d \boldsymbol{v}_i\in\mathcal{R}^d viRd V \boldsymbol{V} V 上对应的 d × d d\times d d×d 样本协方差矩阵表示为 ∑ = V ˉ V ˉ T \boldsymbol{\sum=\bar{V}\bar{V}}^T =VˉVˉT(或简称为 V V T \boldsymbol{VV}^T VVT),其 V ˉ \boldsymbol{\bar{V}} Vˉ 表示中心 V \boldsymbol{V} V
    • 最初提出该协方差矩阵作为区域描述符。例如表征图像块中像素的颜色强度的协方差。近年来,它已被用作视觉识别的一种很有前途的二阶混合图像表示。
  • 相关工作:

    • 其中最具代表性的方法是双线性 CNN
      • 双线性 CNN 将图像表示为从两个深层 CNN 导出的特征的合并外积,从而编码卷积激活的二阶统计,从而显著提高了细粒度识别。
      • 当两个 CNN 设置为相同时,该外积本质上导致协方差矩阵(以 V V T \boldsymbol{VV}^T VVT 的形式)。
      • 然而,外积运算产生了极高维的特征,即双线性合并特征被重塑为向量 z = v e c ( V V T ) ∈ R d 2 \boldsymbol{z}=\mathrm{vec}(\boldsymbol{VV}^T)\in\mathcal{R}^{d^2} z=vec(VVT)Rd2。这导致深度网络的分类模块中的参数数量大幅增加,这可能会导致过拟合,并使其不适用于实际应用,尤其是大规模应用。为了解决这个问题:
        • Gao 等人应用张量草图来近似原始双线性池操作的二阶统计量,并降低特征维数。
        • Kong等人对协方差矩阵采用了低秩近似,并进一步学习了低秩双线性分类器。所得到的分类器可以在不显式计算双线性特征矩阵的情况下进行评估,这导致参数大小的大幅减小。
        • 李等人还通过执行具有低秩约束的二次变换来对成对特征交互进行建模。
        • Yu 等人在双线性池之前使用降维投影来缓解维度爆炸。
        • 郑等人将双线性池应用于特征通道组,其中双线性变换通过计算每个组内的成对交互来表示。这也导致计算成本的大幅度节省。
    • 一些方法试图捕捉特征的高阶(超过二阶)相互作用,以生成更强、更具鉴别力的特征表示。
      • 崔等人介绍了一种内核池化方法,该方法通过紧凑的特征映射捕获任意有序和非线性的特征。
      • 蔡等人提出了一种基于多项式核的预测器,用于对多层卷积激活的高阶统计进行建模,以对零件交互进行建模。随后开发了 DeepKSPD,以端到端可训练的方式联合学习深度局部描述符和基于核矩阵的协方差表示。
  • 基于奇异值分解(SVD)或本征分解(EIG)的非线性缩放:

    • 原因:
      • 由于 l 2 l_2 l2 特征归一化可以抑制高响应的常见模式,从而增强这些判别特征(即,视觉突发性问题)上述基于双线性池的方法通常执行逐元素平方根归一化,然后对协方差矩阵进行 l 2 l_2 l2 归一化,以提高性能。
      • 然而,仅仅采用“ l 2 l_2 l2 -归一化”会导致高阶信息不稳定,也会导致收敛缓慢。为此,许多方法已经探索了基于奇异值分解(SVD)或本征分解(EIG)的非线性缩放,以获得二阶表示的更多稳定性。
    • 相关工作:
      • 李等人提出将幂指数应用于双线性特征的特征值,以实现更好的识别精度。
      • G2DeNet 通过高斯嵌入和矩阵平方根归一化进一步组合了互补的一阶和二阶信息。
      • iSQRT COV 和改进的 B-CNN 使用 Newton-Schulz 迭代来近似矩阵平方根归一化,只使用矩阵乘法来减少训练时间。
      • MOMN 被提出在多目标优化框架内,根据平方根、低秩和稀疏性同时规范双线性表示。
5.2.2 Designing Specific Loss Functions

设计特定损失函数

  • 阻止低熵

    与一般图像识别不同,在细粒度分类中,属于不同类别的样本在视觉上可能非常相似,有理由防止分类器对其输出过于自信(即,阻止低熵)。

    • 在细粒度任务上训练网络时,还最大化了输出概率分布的熵。
    • Dubey 等人使用成对混淆优化程序,通过将不同类别的条件概率分布更紧密地结合在一起并混淆深度网络,来解决细粒度识别中的过拟合和样本特定伪影。这允许降低预测的置信度,从而提高泛化性能。
  • 比较图像对

    人类可以通过比较图像对来有效地识别对比线索,这种类型的度量/对比学习在细粒度识别中也很常见。

    • Sun 等人首先学习多个部分对应的注意力区域,然后利用度量学习将相同注意力的同类特征拉近,同时将不同注意力或不同类别特征推开。此外,他们的方法可以在训练过程中连贯地加强不同对象部分之间的相关性。
    • CIN 通过对比通道交互模块拉近正对,同时推开负对,该模块还利用样本之间的通道相关性。
    • API-Net 也建立在度量学习框架的基础上,可以从一对图像中自适应地发现对比线索,并通过基于成对注意力的交互来区分它们。
  • 用于定位零件级模式和进一步聚集图像级表示的单损失函数

    Sun 等人开发了一个基于梯度增强的损失函数一个多样化块,以迫使网络快速移动来区分难分类。

    • 多样化块抑制了类激活图的判别区域,因此网络被迫寻找替代的信息特征。梯度引导损失集中在每个图像的困难(即,令人困惑)类上,并提高它们的梯度。
    • MC Loss 通过关注不同的零件级区域,鼓励特征通道具有更强的鉴别力。他们提出了一种不需要任何特定网络修改的单一损失,用于细粒度对象的部分定位。

上述这些基于损失函数的细粒度识别方法与骨干网无关,通常可以通过使用更强大的骨干网架构来提高其性能。

5.2.3 Other Methods

其他方法

  • 细粒度定制的辅助任务:

    除了对高阶特征之间的相互作用建模和设计新的损失函数外,另一组方法还涉及构建细粒度定制的辅助任务,以获得统一和有区别的图像表示

  • 相关工作:

    • BGL 被提出将丰富的二分图标签结合到 CNN 训练中,以对细粒度类之间的重要关系进行建模。
    • DCL 执行了一个**“破坏和构建”过程来提高识别的难度,以引导网络专注于细粒度识别的判别部分(即通过破坏学习**),然后对对象各部分之间的语义相关性进行建模(即通过构建学习)。
    • 与 DCL 类似,Du 等人使用拼图生成器代理任务处理细粒度表示学习,以鼓励网络在不同粒度级别进行学习,并同时将这些级别的特征融合在一起。
    • 一种更直接的细粒度特征学习方法,其目标是以对抗性学习方式生成身份保留的细粒度图像,以直接获得统一的细粒度的图像表示。作者表明,这种直接特征学习方法不仅保留了生成图像的身份,而且在其他具有挑战性的任务中显著提高了视觉识别性能,如细粒度少镜头学习。

5.3 Recognition with External Information

外部信息识别

5.3.1 Noisy Web Data

有噪声的Web数据

  • 设计思想:

    为了应对标注数据集难以获得的问题,一些细粒度的识别方法试图利用免费但有噪声的网络数据来提高识别性能。这一行的大多数现有工作可以大致分为两个方向:

  • 网络监督学习

    • 第一个方向涉及抓取感兴趣类别的带噪声标签的网络数据作为训练数据,这些方法通常集中在:
      • 克服了容易获取的 web 图像和来自标准数据集的标记良好的数据之间的领域差距;
      • 减少由噪声数据引起的负面影响。
    • 相关工作
      • HARCNN 利用细粒度数据中固有的易于注释的元类,还从网络中获取了大量标记有元类的图像,以正则化模型,从而以多任务的方式提高识别精度(即,对于细粒度数据和元类数据识别任务)。
      • 徐等人研究了细粒度网络图像是否可以提供弱标记信息来增强深层特征,从而通过构建多实例(MI)学习器(即,将图像视为MI包,将建议部分边界框视为MI实例)来有助于鲁棒的对象分类器。
      • Krause 等人介绍了一种替代方法,通过排除出现在多个类别的搜索结果中的图像,将通用分类模型与网络数据相结合,以对抗跨域噪声。受对抗性学习的启发,提出了一种对抗性判别损失,以鼓励标准数据和网络数据之间的表示一致性。
  • 知识转移:

    • 第二个方向是将具有良好标记的训练数据的辅助类别的知识转移到测试类别,这通常采用零样本学习元学习
    • 相关工作:
      • Niu 等人利用零样本学习将知识从带注释的细粒度类别转移到其他细粒度类别。
      • 张等人、杨等人和张等人研究了选择高质量网络训练图像以扩展训练集的不同方法。
        • 张等人提出了一种新的正则化元学习目标来指导网络参数的学习,使其最适合于目标细粒度类别。
        • 杨等人设计了一种迭代方法,通过使用多个标签修改标签分配来逐步选择有用的图像,以减少标签对噪声网络数据的影响。
        • 张等人利用不同训练时期的预测分数来监督有用和不相关的噪声网络图像的分离。
5.3.2 Multi-Modal Data

多模态数据

  • 设计思想:

    在细粒度识别中,多模态数据可以通过合并多模态数据来建立联合表示/嵌入,以提高细粒度识别的准确性。在实践中,**文本描述(text descriptions)知识库(knowledge bases)**都是推进细粒度图像表示学习的有用的额外指导。

    • 与来自细粒度图像的强语义监督(例如,零件注释)相比,文本描述是一种较弱的监督形式(即,它们只提供图像级别的监督)。然而,一个优点是非专家可以相对准确地生成文本描述。因此,它们既容易收集,又便宜。
    • 此外,高级知识库在可用时可以包含丰富的知识(例如,DBpedia)。
  • 相关工作:

    • 文本描述:

      • Reed 等人收集了文本描述,并通过结合文本和图像,为零样本细粒度图像识别引入了结构化联合嵌入。
      • He 和 Peng 以端到端的联合方式将视觉和语言双流相结合,以保留模态内和模态间信息,从而生成互补的细粒度表示。
      • PMA 提出了一种基于掩模的自注意机制,以捕捉视觉模态中最具鉴别力的部分。此外,他们还探索了使用具有查询关系注意的语言来使用视觉领域外的知识。使用所提出的渐进掩模策略,对视觉和语言模式的多个PMA块进行聚合和堆叠。
    • 知识库:

      在这里插入图片描述

      • T-CNN 使用知识库和文本中的语义嵌入进行了探索,然后训练 CNN 将图像特征线性映射到语义嵌入空间,以聚合多模态信息。
      • 为了将知识表示纳入图像特征,KERL 采用门控图网络通过图传播节点消息以生成知识表示。
      • 结合了与感兴趣的细粒度视觉类别相关的音频信息,以提高识别精度。
5.3.3 Humans-in-the-Loop

人在循环

  • 人在循环方法将人类知识的互补优势与计算机视觉算法相结合。在循环中使用人类的细粒度识别通常是以迭代的方式提出的,并且需要视觉系统在询问人类寻求帮助时保持智能。
  • 通常,对于这些类型的识别方法,在每一轮中,系统都试图了解人类是如何进行识别的,
    • 通过要求专家标记图像类别
    • 或者通过识别关键部分定位并选择判别特征进行细粒度识别。

5.4 Summary and Discussion

总结与讨论

CUB200-2011、Stanford Dogs、Stanford Cars 和 FGVC Aircraft 基准是细粒度识别中最具影响力的数据集。下表总结了属于上述三种识别学习范式的细粒度方法所取得的结果。

在这里插入图片描述

主要观察结果总结如下:

  • 有挑战亦有解决

    所审查的方法与上述细粒度识别的挑战之间存在明确的对应关系。具体而言,捕捉细微视觉差异的挑战可以通过定位分类方法或通过特定的基于构造的任务以及人在环方法来克服。通过执行高阶特征交互或利用多模态数据,可以缓解表征细粒度定制特征的挑战。最后,通过设计特定的损失函数,可以在一定程度上解决 FGIA 的挑战性,以实现更好的精度。

  • 在不同的学习范式中,“定位分类子网络识别” 和 “端到端特征编码识别” 是研究最频繁的两种范式。

  • 细粒度对象类别的部分级推理提高了细粒度识别的准确性,尤其是对于非刚性对象,如鸟类。近年来,对判别部分之间的内部语义交互/相关性进行建模引起了越来越多的关注。

  • 非刚性细粒度物体识别(如鸟类或狗)比刚性细粒度对象(如汽车或飞机)更具挑战性,这在一定程度上是由于物体外观的变化。

  • 细粒度图像识别性能随着图像分辨率的提高而提高。不同图像分辨率的 CUB200-2011 的对比结果如下表所示。

    在这里插入图片描述

  • “定位分类子网络识别” 范式在识别和定位能力之间存在权衡,这可能会影响单个集成网络的识别精度。当试图获得更好的识别结果时,这种权衡也反映在实践中,因为训练通常涉及两个网络的交替优化,或者分别训练两个网络,然后进行联合调谐。交替或多级策略使集成网络的调整复杂化。

  • 虽然有效,但与定位分类子网络相比,大多数端到端编码网络在非刚性和刚性视觉域中的人工可解释性较差,准确性也较差。最近,据观察,几种高阶池化方法试图通过呈现视觉解释或从优化角度来理解这类方法。

  • 当细粒度部分在元类别中不一致时,基于“本地化分类子网络识别”的方法很难应用(例如,iNaturalist)。在这里,统一的端到端特征编码方法更合适。

Section 6 FINE-GRAINED IMAGE RETRIEVAL

细粒度图像检索

在这里插入图片描述

  • 细粒度检索简介:

    • 细粒度检索与细粒度识别的区别在于,除了正确估计子类别外,还需要对所有实例进行排名,以便根据查询中的细粒度细节对属于同一子类别的图像进行最高排名。

    • 在细粒度检索中,我们得到了一个相同元类别(例如,鸟类或汽车)的图像数据库和一个查询,目标是基于相关细粒度特征返回与查询相关的图像

    • 与基于内容相似性(如纹理、颜色和形状)检索近似重复图像的通用图像检索相比,细粒度检索侧重于检索相同类别类型的图像(如相同的从属动物物种或相同的车辆型号)。

      在这里插入图片描述

    • 更具挑战性的是,细粒度类别的对象表现出细微的差异,可能在姿势、比例和方向上有所不同,或者可能包含较大的跨模态差异(例如,在基于草图的检索的情况下)。

    • 应用领域

      细粒度检索技术已广泛用于商业应用,例如电子商务(搜索细粒度产品)、触摸屏设备(通过草图搜索细粒度对象)、犯罪预防(搜索人脸照片)等。

    • 根据查询图像的类型,细粒度图像检索研究最多的领域可以分为两组:细粒度基于内容的图像检索(FG-CBIR)和细粒度基于草图的图像检索

    • 细粒度图像检索也可以扩展为细粒度跨媒体检索,它可以利用一种媒体类型来检索任何媒体类型,例如使用图像来检索相关的文本、视频或音频。

  • 性能评估:

    性能评估遵循标准约定

    • FG-CBIR 性能通常使用 R e c a l l @ K Recall@K Recall@K 是测试集中所有 M M M 个查询图像的平均召回分数。对于每个查询,返回前 K K K 个相关图像。如果在前 K K K 个返回的图像中至少有一个阳性图像,则召回分数将为 1,否则为 0。根据公式 R e c a l l @ K Recall@K Recall@K 如下:
      R e c a l l @ K = 1 M ∑ i = 1 M s c o r e i Recall@K=\frac{1}{M}\sum^M_{i=1}\mathrm{score}_i Recall@K=M1i=1Mscorei

    • 为了测量 FG-SBIR 性能, A c c u r a c y @ K Accuracy@K Accuracy@K 是常用的,这是真实匹配照片排名前 K K K 的草图的百分比:
      A c c u r a c y @ K = ∣ I c o r r e c t K ∣ K Accuracy@K=\frac{|I^K_\mathrm{correct}|}{K} Accuracy@K=KIcorrectK

      • 其中 ∣ I c o r r e c t K ∣ |I^K_\mathrm{correct}| IcorrectK 是前 K K K 中的真实匹配照片的数量。

6.1 Content-based Fine-Grained Image Retrieval

基于内容的细粒度图像检索

  • 相关工作:

    • SCDA

      • SCDA 是使用深度学习的细粒度图像检索的最早例子之一。
      • 它使用预先训练的 CNN,通过在不使用明确的定位监督的情况下定位图像中的主要对象来选择有意义的深度描述符。
      • 他们表明,通过去除背景特征,只选择有用的深度描述符,可以在这种无监督的检索环境中(即,不需要图像标签)显著提高检索性能。
    • 基于监督度量学习的方法

      • 最近,已经提出了基于监督度量学习的方法来克服无监督检索的检索精度限制。这些方法仍然包括专门为细粒度对象定制的附加子模块,
      • 例如[170]中提出的弱监督定位模块,该模块又受到[32]的启发。
      • CRL-WSL 采用集中排序损失和弱监督定位方法来训练其特征提取器。
      • DGCRL 在训练和测试阶段通过添加归一化标度层消除内积和欧几里得距离之间的差距,以增强类内可分性和类间紧凑性及其不相关的全局感知集中排名损失
    • 通过降低细粒度模型的置信度来修改传统的交叉熵函数,提出了分段交叉熵损失,这类似于遵循细粒度类别的自然预测置信度得分的基本思想。

  • 基于细粒度内容的图像检索方法的性能分析

    在这里插入图片描述

    • 尽管基于监督度量学习的检索方法优于无监督方法,但检索任务的绝对回忆得分仍有进一步提高的空间。
    • 一个有前景的方向是将高级技术,例如注意力机制或高阶特征交互,成功地将细粒度识别集成到 FG-CBIR 中,以实现更好的检索精度。然而,需要新的大规模 FG-CBIR 数据集来推动未来的进展,这也需要与其他特征或挑战相关联,例如开放世界子类别检索(参见第2节)。

6.2 Sketch-based Fine-Grained Image Retrieval

基于草图的细粒度图像检索

  • 细粒度基于草图的图像检索(FGSBIR)简介

    • FGSBIR 的目标是使用徒手草图作为查询模式来匹配特定的照片实例
    • 与之前讨论的基于内容的方法不同,额外的草图照片域间隙位于 FG-SBIR 的中心。因此,关键是引入一种跨模态表示,该表示不仅捕捉草图中存在的细粒度特征,而且具有遍历草图和图像域间隙的能力。
  • 相关工作:

    • 现有的 FG-SBIR 解决方案通常旨在训练联合嵌入空间,在该空间中可以以最近邻的方式比较草图和照片。

      • 李等人提出了 FG-SBIR 的第一种方法,在该方法中,他们学习了基于可变形零件的模型(DPM)作为中级表示,以独立地发现和编码草图和图像域中的各种姿势。随后在 DPM 上执行图形匹配操作,以建立两个域之间的姿势对应关系。

      • Yu 等人首先将深度学习用于该任务,利用具有阶段性预训练策略的三元组排序模型来学习两个领域的联合嵌入空间。该三元组排序模型通过辅助语义属性预测和属性排序层进行了进一步扩展,以提高泛化能力。

    • FG-SBIR 中由于草图-照片-域间隙大而遇到的隐含挑战是通过使用跨域翻译的判别生成混合模型来解决的。受这些方法的启发:

      • Song 等人引入了一个注意力模块,对视觉特征的空间位置进行了编码,并结合了粗略和细粒度的语义知识。

      • 李等人介绍了一种部分感知学习方法,通过对细粒度属性执行子空间对齐来减少实例级域间隙。

      • 尽管对细粒度 SBIR 的研究多年来蓬勃发展,但一个难题仍然存在——与其他替代方案(如文本或属性)相比,草图是否是细粒度图像检索的更好输入模式。为了回答这个问题,Song 等人展示了在细粒度检索中,草图优于文本的优越性,表明当联合建模时,每种模态都可以互补。

    • 与这些早期的工作主要基于暹罗三元组网络相比,最近有几次尝试提高 FG-SBIR 的性能

      • Pang 等人发现,当暴露于看不见的类别时,基于基线三元组的模型无法进行推广。因此,通过领域泛化设置引入了跨类别泛化,其中对原型视觉草图的通用流形进行建模,以动态表示草图/照片。
      • Bhunia 等人通过强化学习开发了一种即时检索设置,该设置在用户开始绘图时就开始检索照片。
      • ImageNet 预训练的权重被认为是初始化 FG-SBIR 的草图/照片嵌入网络的事实选择。然而,随着自监督学习的最新进展,Pang 等人在特定照片及其边缘图之间的混合模态补丁上执行了拼图求解策略。他们表明,这是一项有效的自我监督预训练策略的文本前任务,它提高了 FG-SBIR 的性能。
      • Sain 等人没有像在几乎所有以前的工作中那样执行独立的草图和照片嵌入,而是通过使用跨模态共同注意和层次笔划/区域特征融合来使用成对嵌入,以处理不同级别的草图细节。尽管性能显著提高,但值得注意的是,与其他最先进的方法相比,成对嵌入会产生显著的计算开销,至少是画廊照片数量的倍数。
    • 最近,研究了一种新的场景级细粒度 SBIR 任务。刘等人提出利用局部特征,如对象实例及其视觉细节,以及全局上下文(例如,场景布局)来处理这样的任务。

    • 除了之前的 FG-SBIR 方法外,Zhang 等人和 Radenovic 等人还对流行的 FG-SBIR 数据集以及类别级 SBIR 数据集进行了评估。在下表中比较了最近的 FG-SBIR 方法的结果。请注意,我们只提供评估策略统一和一致的方法,因此排除了涉及特定问题评估协议的方法,如零样本 FG-SBIR。

      在这里插入图片描述

Section 7 COMMON TECHNIQUES SHARED BY BOTH FINEGRAINED RECOGNITION AND RETRIEVAL

细粒度识别和检索共享的通用技术

  • 常见方法:

    • 在深度学习的背景下,细粒度识别和检索任务都需要有区别的深度特征嵌入,以区分细粒度对象之间的细微差异。识别的目的是区分类别标签,而检索的目的是返回准确的排名。为了实现这些目标,深度度量学习和多模式匹配可以被视为两组常见的技术,适用于细粒度识别和检索。

      • 深度度量学习试图将图像数据映射到嵌入空间,在嵌入空间中,相似的细粒度图像靠得很近,而不同的图像相距很远。通常,细粒度识别通过分类损失来实现度量学习,其中它包括将嵌入空间转换为细粒度类 logits 的向量的权重矩阵。

      • 而细粒度检索任务(大多数情况下没有明确的图像标签)的度量学习总是通过嵌入损失来实现的,嵌入损失对批量中细粒度样本之间的关系进行操作。

    • 最近,多模式匹配方法已经成为强大的表示学习方法,可以同时促进细粒度的识别和检索任务。

      • Mafla 等人利用文本信息和视觉线索来理解两种模态之间存在的内在关系。
      • [30] 采用图卷积网络进行多模态推理,获得关系增强的多模态特征。这种方法揭示了 FGIA 中多模式学习的新发展趋势。
  • 常见的基本思想:

    除了这些常见的方法之外,细粒度识别和检索都有许多基本思想,例如:

    • 选择有用的深度描述符
    • 降低细粒度预测的不确定性
    • 解构/构建细粒度图像以学习细粒度模式

    这些观察结果进一步说明了在本文中合并细粒度识别和细粒度检索工作的好处。

Section 8 FUTURE DIRECTIONS

未来方向

  • “细粒度”的精确定义

    这么多年以来 FGIA 这个词仍然缺乏精确的定义。

    • 具体来说,社区总是通过粗略地声明其目标对象属于一个元类别,将所谓的细粒度数据集/问题定性地描述为“细粒度”。然而,“细粒度”的精确定义可以使我们能够定量评估数据集的粒度。
    • 此外,它不仅可以更好地了解当前算法在不同粒度任务上的性能,还可以为细粒度社区带来更多的见解。
  • 下一代细粒度数据集

    • CUB200-2011、Stanford Dogs、Stanford Cars 和 Oxford Flowers 等经典细粒度数据集中绝大多数用于FGIA的性能基准测试。然而,按照现代标准,这些数据集相对较小,在性能方面基本饱和。
    • 在未来,看到更多的大规模细粒度数据集被推广以取代这些现有的基准将是有价值的,例如 iNat-2017、Dogs In the wild、RPC。
      • 这些数据集的最新结果分别为 72.6%、78.5%、80.5%,这表明还有很大的改进空间。
      • 这些新的基准除了具有规模(就子类别和图像的数量而言)外,还应包含并体现与细粒度学习相关的所有挑战,包含在现实环境中捕获的各种图像,并包括丰富的注释。
    • 然而,高质量的细粒度数据集通常需要领域专家进行注释。这在一定程度上限制了细粒度数据集的开发。作为一种潜在的解决方案,构建一个未标记的大规模细粒度数据库并采用无监督特征学习技术(例如,自监督学习)可以有利于判别特征学习,并进一步促进无监督下游任务。
    • 合成数据是一种越来越流行的训练深度模型的工具,为 FGIA 的进一步探索提供了很有希望的机会。
  • 应用于 3D 细粒度任务

    • 大多数现有的 FGIA 方法都以 2D 细粒度图像为目标,而 3D 信息(例如,3D 姿势标签或 3D 形状信息)的价值还没有得到充分探索。
    • 3D 对象表示如何提高 2D FGIA 方法的性能是一个有趣而重要的问题。
    • 另一方面,2D FGIA 方法如何推广到 3D 细粒度应用,例如机器人垃圾箱拾取、机器人感知或增强现实,也值得未来关注。为了在这一领域取得进展,存在与难以获得许多对象类别(例如动物或其他非刚性对象)的精确 3D 注释相关的悬而未决的问题。
  • 稳健的细粒度表示

    • 使 FGIA 具有独特挑战性的一个重要因素是真实世界细粒度图像的巨大可变性,包括视点、对象尺度、姿态的变化,以及零件变形、背景杂波等因素。同时,FGIA 通常规定要识别细粒度模式(源自有区别但微妙的部分)来驱动预测,这使其对图像分辨率、破坏和扰动以及对抗性示例更加敏感。
    • 尽管深度学习取得了进展,但当前的模型仍然对这些变化或干扰缺乏鲁棒性,这大大限制了它们在许多现实世界应用中的可用性,在这些应用中,高精度至关重要。
    • 因此,如何有效地获得稳健的细粒度表示(即不仅包含有鉴别力的细粒度视觉线索,而且抵抗无关信息的干扰)需要进一步深入探索。
    • 如上所述,当与下一代细粒度数据集结合时,存在与自监督学习在这些领域中的效用相关的问题。例如,自监督学习是否有助于改进 FGIA,以及我们是否对细粒度数据执行自监督以生成稳健的细粒度表示?
  • 可解释的精细学习

    • 与非专业人类相比,单方面实现更高的准确性可能不再是 FGIA 的主要目标。细粒度模型不仅具有高精度,而且具有可解释性,这一点非常重要。
    • 更具可解释性的 FGIA 可以帮助社区在使用深度学习处理细粒度任务时解决几个挑战,例如,语义调试网络表示、通过语义级别的人机通信进行学习、设计更有效的、特定于任务的深度模型等。
  • 细粒度少镜头学习

    • 人类能够在很少的监督下学习一个新的细粒度概念(例如,用一种新鸟类的一些图像),但我们最好的深度学习细粒度系统需要数百或数千个标记的例子。
    • 更糟糕的是,细粒度图像的监督既耗时又昂贵,因为细粒度对象需要由领域专家准确标记。因此,需要开发细粒度少镜头学习(FGFS)方法。
    • FGFS 的任务要求学习系统从几个例子(例如,少于10个)中为新的细粒度类别构建分类器。稳健的FGFS 方法可以显著增强细粒度识别的可用性和可扩展性。
  • 细粒度哈希

    • 最近,已经发布了更大规模的细粒度数据集。在细粒度图像检索等实际应用中,在参考数据库非常大的情况下,找到精确的最近邻居的计算成本可能高得令人望而却步
    • 图像哈希是一种流行且有效的近似最近邻搜索技术,也有可能帮助处理大规模细粒度数据。因此,针对大数据挑战,细粒度哈希是一个值得进一步探索的有前景的方向。
  • 自动细粒度模型

    • 自动机器学习(AutoML)和神经结构搜索(NAS)最近引起了越来越多的关注。
      • AutoML 的目标是自动化将机器学习应用于现实世界任务的过程
      • NAS 是自动化神经网络架构设计的过程
    • 在各种计算机视觉应用中,AutoML 和 NAS 的最新方法可能具有可比性,甚至优于手工设计的体系结构。因此,AutoML 和 NAS 技术可以为 FGIA 找到更好、更量身定制的深度模型,这也是合乎逻辑的。
  • 在更真实的环境中进行细粒度分析

    • 现有的 FGIA 基准中的绝大多数都是在静态和封闭的环境中定义的。
    • 当前 FGIA 数据集的另一大限制是,它们通常包含对象的大型实例(即,感兴趣的对象占据图像帧的大部分)。然而,这些设置并不能代表许多现实世界的应用,例如,通过用在受控环境中收集的图像训练的模型识别货架上的零售产品,或者识别/检测野生数千种自然物种的趋势。
    • 需要在领域自适应、长尾分布、开放世界设置、规模变化、细粒度视频理解、知识转移和资源受限嵌入式部署等领域进行更多研究。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/150453.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python之代理ip的配置与调试

目录 前言 一、代理IP的配置 二、代理IP的调试 2.1 使用curl命令测试代理IP 2.2 使用requests库调试代理IP 三、代理IP的获取 3.1 使用代理IP池 3.2 使用付费代理IP服务 总结 前言 代理IP是网络爬虫中常用的技术手段。通过使用代理服务器,可以实现对特定网…

某60区块链安全之不安全的随机数实战一

区块链安全 文章目录 区块链安全不安全的随机数实战一实验目的实验环境实验工具实验原理实验内容攻击过程分析合约源代码漏洞EXP利用 不安全的随机数实战一 实验目的 学会使用python3的web3模块 学会以太坊不安全的随机数漏洞分析及利用 实验环境 Ubuntu18.04操作机 实验工…

【Flink】核心概念:并行度与算子链

并行度(Parallelism) 当要处理的数据量非常大时,我们可以把一个算子操作,“复制”多份到多个节点,数据来了之后就可以到其中任意一个执行。这样一来,一个算子任务就被拆分成了多个并行的“子任务”&#x…

爱上C语言:操作符详解(下)

🚀 作者:阿辉不一般 🚀 你说呢:生活本来沉闷,但跑起来就有风 🚀 专栏:爱上C语言 🚀作图工具:draw.io(免费开源的作图网站) 如果觉得文章对你有帮助的话,还请…

STM32/N32G455国民科技芯片驱动DS1302时钟---笔记

这次来分享一下DS1302时钟IC,之前听说过这个IC,但是一直没搞过,用了半天时间就明白了原理和驱动,说明还是很简单的。 注:首先来区分一下DS1302和RTC时钟有什么不同,为什么不直接用RTC呢? RTC不…

[Vue 代码模板] Vue3 中使用 Tailwind CSS + NutUI 实现侧边工具栏切换主题

文章归档:https://www.yuque.com/u27599042/coding_star/vzkgy6gvcnpl3u2y 效果示例 配置 src 目录别名 https://www.yuque.com/u27599042/coding_star/ogu2bhefy1fvahfv 配置 Tailwind CSS https://www.yuque.com/u27599042/coding_star/yqzi9olphko9ity1 配置…

CAPL编程 - 事件驱动

1 事件概述 CAPL是一种面向过程、由事件驱动的类C语言。 事件驱动针对于顺序执行,其区别如下: 顺序执行:顺序执行流程中,子例程或过程函数按照代码编写顺序逐句执行。 事件驱动:CAPL程序由事件驱动,工程…

11.15 监控目录文件变化

监视对指定目录的更改,并将有关更改的信息打印到控制台,该功能的实现不仅可以在内核层,在应用层同样可以。程序中使用ReadDirectoryChangesW函数来监视目录中的更改,并使用FILE_NOTIFY_INFORMATION结构来获取有关更改的信息。 Re…

Selenium中元素定位方法详细介绍

📢专注于分享软件测试干货内容,欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!📢交流讨论:欢迎加入我们一起学习!📢资源分享:耗时200小时精选的「软件测试」资…

JavaScript实现飞机发射子弹详解(内含源码)

JavaScript实现飞机发射子弹 前言实现过程源码展示源码讲解HTML结构CSS结构js结构 前言 文本主要讲解如何利用JavaScript实现飞机发射子弹,实现过程以及源码讲解。实现效果图如下: 实现过程 首先,找到飞机和子弹的UI图,gif图最…

【Android】使用Retrofit2发送异步网络请求的简单案例

添加网络权限到AndroidManifest.xml清单文件 为了让你的Android应用程序能够使用互联网进行通信&#xff0c;你需要在AndroidManifest.xml文件中添加网络权限声明。<uses-permission android:name"android.permission.INTERNET"/> 这个权限应该添加到 Android…

python爬虫概述及简单实践:获取豆瓣电影排行榜

目录 前言 Python爬虫概述 简单实践 - 获取豆瓣电影排行榜 1. 分析目标网页 2. 获取页面内容 3. 解析页面 4. 数据存储 5. 使用代理IP 总结 前言 Python爬虫是指通过程序自动化地对互联网上的信息进行抓取和分析的一种技术。Python作为一门易于学习且强大的编程语言&…

LabVIEW关于USRPRIO的示例代码

LabVIEW关于USRPRIO的示例代码 USRPRIO 通常以两种方式使用&#xff1a; 1 基于 FPGA 的编程 对于希望修改USRP上的底层FPGA代码以添加自定义DSP模块的应用&#xff0c;请使用USRP示例项目。它可作为构建 USRP RIO 流式处理应用程序的起点&#xff0c;可从“创建项目”对话框…

项目资讯丨轻空间中标连云港市首座“多功能声学综合馆”(EPC)

近日&#xff0c;轻空间&#xff08;江苏&#xff09;膜科技有限公司&#xff08;以下简称“轻空间”&#xff09;成功中标连云港市首座“多功能声学综合馆”项目&#xff0c;这标志着轻空间在新型气膜领域的创新突破技术&#xff0c;再次获得政府机构的高度认可&#xff0c;为…

水声功率放大器在声呐系统中的应用有哪些

水声功率放大器在声呐系统中扮演着重要的角色&#xff0c;其应用涵盖了声呐系统的多个方面。下面就让安泰电子来介绍水声功率放大器在声呐系统中的应用。 发射声波信号&#xff1a;声呐系统通过发射声波信号并接收其回波来探测和测量海洋中的目标物体。水声功率放大器用于放大发…

划片机新手教程:从准备工作到注意事项全解析!

随着科技的飞速发展&#xff0c;划片机已成为半导体行业不可或缺的一部分。对于新手来说&#xff0c;如何正确操作划片机显得尤为重要。以下是新手操作划片机的步骤和建议。 一、准备工作 在开始操作划片机之前&#xff0c;首先需要准备好以下工具和材料&#xff1a; 1. 划片机…

CICD 持续集成与持续交付——gitlab

部署 虚拟机最小需求&#xff1a;4G内存 4核cpu 下载&#xff1a;https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/ 安装依赖性 [rootcicd1 ~]# yum install -y curl policycoreutils-python openssh-server perl[rootcicd1 ~]# yum install -y gitlab-ce-15.9.3-ce.0…

SQL常见函数整理 —— lead()向下偏移

1. 用法 是在窗口函数中使用的函数&#xff0c;它用于获取当前行的下一行&#xff08;后一行&#xff09;的某个列的值。具体来说&#xff0c;LEAD() 函数可用于查找任何给定行的下一行&#xff08;后一行&#xff09;的值&#xff0c;同时也可控制行数偏移量&#xff08;offse…

创建自定义日志筛选器

Windows的事件查看器中的日志包含了很多信息&#xff0c;但是系统自带的筛选器只能筛选固定的字段和内容。有时候想根据某个事件中的用户名或者IP筛选的时候就没办法了。此时需要创建自定义筛选器来实现。 首先找到希望筛选的日志&#xff0c;调整成详细的XML视图。 这里面就有…

WhatsApp新营销全解:出海新个体,能不能做好WhatsApp营销

对于很多外贸跨境群体来说&#xff0c;很多时候是单打独斗的新个体运营模式&#xff0c;团队成员数量一两个人。然而&#xff0c;正是这一两个人的运营团队&#xff0c;在运营的时候不仅有四两拨千斤的能力&#xff0c;还能做到十八般武艺全能。 他们在运营设计和实操环节&…