细粒度分类具有挑战性,因为很难找到有区别的特征。找到那些能够完全描述物体的细微特征并不容易。为了解决这一问题,我们提出了一种新的自监督机制来有效地对信息区域进行定位,而不需要使用框/部件标注。我们的模型NTS-Net称为导航-教学-审查网络,由导航器代理、教学器代理和审查器代理组成。考虑到区域的信息量与其为groundtruth类的概率之间的内在一致性,设计了一种新的训练范式,使导航器能够在教学器的指导下检测出信息量最大的区域。然后,审查器从导航器中仔细识别建议的区域并做出预测。我们的模型可以看作是一个 multi-agent 合作的模型,其中各agent相互受益,共同进步。NTS-Net可以端到端训练,同时提供精确的细粒度分类预测以及推理过程中的高信息量区域。
直观地看,有较高的概率被认为是groundtruth类的区域应该包含更多的目标特征语义,从而提高整个图像的分类性能。因此,我们设计了一个新的损失函数(排序损失函数)来优化每个选择区域的信息量,使其具有与其为groundtruth类的概率相同的排序顺序,并将全图像的groundtruth作为区域的groundtruth。具体来说,导航器模型聚焦于图像中信息最丰富的区域,导航器预测该区域的信息有多丰富,这些预测用于提取出信息最丰富的区域。教学器对导航器提出的区域进行评估并提供反馈:对于每个建议区域,教学器评估其属于ground-truth类的概率;该置信度评估使用我们的新的顺序一致的损失函数引导导航器提出包含更多信息的区域。审查器仔细检查导航器建议的区域,并进行细粒度分类:将每个建议的区域扩大到相同的大小,审查器从中提取特征;对区域特征和图像整体特征进行联合处理,进行细粒度分类。
我们的方法基于这样一个假设,即信息区域有助于更好地描述对象,因此融合来自信息区域和完整图像的特征将获得更好的性能。因此,目标是定位对象中信息量最大的区域。
我们将A表示为给定图像中所有区域的集合。定义信息函数 ?: ?→(−∞?: ?→(−∞,评价区域?∈?的信息量,定义置信函数?: ?→[0,1]作为分类器去评价区域属于ground-truth类的置信度。信息量较大的区域应该具有较高的置信度,因此应满足以下条件:
我们利用导航器网络逼近信息函数?,利用教学器网络逼近置信函数?。为简便起见,我们选择区域空间A中的M个区域??。对于每个区域?????, 导航器网络评估其信息量?(??),教学器网络评估其置信度?(??)。为了满足条件1,我们对导航器网络进行优化使{?(?1)、?(?2)、···、?(??)} 和 {?(?1)、?(?2)、···、?(??)}具有相同的顺序。随着导航器网络与教学器网络的融合,导航器网络将产生更多的信息区域,帮助审查器网络获得更好的细粒度分类结果。
导航到可能的信息区域可以看作是区域建议问题。受RPN网络的启发,我们的导航器网络将图像作为输入,并生成一组矩形区域{R1,R2,…. RA},每个区域都有一个表示该区域信息量的分数(如图2)。
对于大小为448的输入图像X,我们选择锚点的尺度为{48,96,192},比例为{1:1,3:2,2:3},则导航器网络会生成一个列表,表示所有锚点的信息量。我们按照Eq. 4对信息列表进行排序,其中A是锚点的数量,?(??)是已排序信息列表中的第i个元素。为了减少区域冗余,我们根据区域的信息量对其进行非极大抑制(NMS)。然后我们提取前M个信息区域{?(?1)、?(?2)、···、?(??)}并将其输入教学器网络,得到置信度为{?(?1)、?(?2)、···、?(??)}。图3显示了M = 3的概览,其中M是超参数,表示有多少区域用于训练导航器网络。我们优化导航器网络使{?(?1)、?(?2)、···、?(??)}和{?(?1)、?(?2)、···、?(??)}具有相同的顺序。每个区域通过最小化groundtruth类和预测置信度之间的交叉熵损失来优化教师网络。
随着导航器网络的逐步收敛,它将产生信息对象的特征区域,帮助审查器网络进行决策。我们使用top-K信息区域与完整图像相结合作为输入来训练审查器网络。换句话说,这K个区域用来促进细粒度识别。图4展示了K = 3时的过程。研究表明使用信息区域可以减少类内方差,并可能在正确的标签上产生更高的置信度
使用全卷积网络作为特征提取器,不使用全连通层。具体来说,选择在ILSVRC2012上预习的ResNet-50作为CNN特征提取器, 导航器网络,教学器网络,审查器网络中的所有参数在特征提取器中共享。
导航器网络。灵感来自特征金字塔网络的设计(FPN),我们使用带有横向连接的自顶向下架构来检测多尺度区域。我们使用卷积层逐层计算特征层次结构,然后是ReLU激活和最大池化。然后我们得到了一系列不同空间分辨率的特征图。较大的特征图中的锚点对应较小的区域。图4中的导航器网络显示了我们的设计草图。利用来自不同网络层的多尺度特征图,可以生成不同尺度、不同比例的区域信息。在我们的设置中,我们使用尺寸为{14X14,7x7,4x4}的特征图,对应于尺寸为{48x48,96x96,192x192}的区域。将导航器网络中的参数表示为??(包括特征提取器中的共享参数)。
教学器网络。教学器网络(图3)近似映射?: ?→[0,1],表示各区域的置信度。教学器网络从导航器网络中接收到M个尺度归一化(224×224)的信息区域{R1,R2,…RM},教学器网络输出置信度作为教学信号帮助导航器网络学习。除了特征提取器中的共享层外,教学器网络还有一个全连接层,共有2048个神经元。为了方便起见,我们将教学器网络中的参数表示为??。
审查器网络。在从导航器网络接收到top-K信息区域后,将?个区域调整到预定义的大小(在我们的实验中我们使用224x224),并输入特征提取器生成这些?个区域的特征向量,每个特征向量的长度为2048。然后我们将这些?个特征与输入图像的特征连接起来,并将其送入一个具有2048×(K+1)神经元(图4)。我们用函数S来表示这些变换的组合。我们将审查器网络中的参数表示为??。
损失函数与优化