NIPS2018. Hybrid Knowledge Routed Modules for Large-scale Object Detection

NIPS2018. Hybrid Knowledge Routed Modules for Large-scale Object Detection

论文地址

代码地址

主流的目标检测方法单独处理每个区域的识别问题,忽略了一个场景内物体之间存在的语义互相关性。着会导致面临长尾问题时后续的性能下降。

长尾问题指少量种类的样本占据了大多数,而大量类别仅有少数样本。

文章利用了多种人类常识来推理大尺度目标类别以及达到一张图片内语义上的连贯性。文章提出了混合知识路由模块Hybrid Knowledge Routed Modules(HKRM)融合两种形式的推理:精确的知识模块和非精确的知识模块。通过在区域-区域的图结构上建模,两种模块均可以被个性化,并在特定知识形式的指导下与每张图片的视觉模式相协调。HKRM轻量、通用可以轻松地集成多种知识来赋予任何检测网络全局语义推理的能力。在大规模目标检测基准数据集上的实验表明HKRM在VisualGenome和ADE数据集上分别能够获得大约34.5%的mAP提升。

主要问题

多数基于区域目标检测方法将每个候选框单独地看作是分类和回归问题,因此检测效果完全是依赖于区域内特征地判别能力。这种模式的性能严重依赖于每个类别足够的训练数据,在应用于物体类别较多的大规模检测任务时通常性能不好。除了长尾问题,严重遮挡、类别歧义、小尺寸物体也随着图片内物体类别增多变得更严重。但是人类仍然能在复杂场景下精确地识别物体,这是因为人类具有通过常识来推理的能力。例如人在识别右下角的橘子时就利用了混合知识:

HKRM模块结构

  1. 这个圆形物体是橙色并且和周围的橘子类似(共享的属性知识
  2. 这个物体在碗中(成对关系知识
  3. 这个物体有中等形状,位置接近其他水果(空间布局

已有相关工作探索了直接关系建模或迭代推理架构来利用知识,后者能够结合局部和全局推理,但是只利用了基本检测网络区域内的预测结果,而没有增强中间特征表示。

文章贡献/创新点

文章提出了Hybrid Knowledge Routed Modules来通过两种形式利来用多种语义推理:

  • 精确的知识模块,主要针对用语言学知识总结的概念上的结构化约束(例如共享属性、关系);
  • 非精确的知识模块,编码一些非精确的约束(例如一些通用的空间布局)。

HKRM在考虑特定先验知识图作为外部监督的情况下,为每个区域对学习自适应的情景连接,而没有固定连接权重。HKRM通用性强,能够适用于结合任何知识形式来实现更高级和混合的语义推理。文章实验了三种形式的知识:属性知识(颜色、状态)、点对关系知识(共存、主客体关系)、空间知识(布局、尺寸、覆盖),HKRM轻量且能够集成到任何检测网络中用于提升全局推理能力。HKRM因此能够在具有相似属性、点对关系和空间关系的特定区域中共享视觉特征,具有严重遮挡、类别歧义和小尺寸问题的区域在来自其他区域的外部指导下可以增强识别和定位效果。另外,HKRM能够在常见/不常见种类中蒸馏通用的特征,因此可以缓解种类严重不平衡的问题。

所提方法

文章目的是构建一种通用的模块,通过利用知识来借助全局推理实现大规模目标检测。HKRM模块包含两种模块来支持任何形式的先验知识:精确知识模块来利用外部知识,非精确知识模块来利用非精确定义或未被人类总结的知识。

HKRM网络结构

给定输入图片,每个区域的特征通过区域候选网络提取出来,基于区域特征,每个模块构建了一个自适应的区域到区域的无向图G^:G^=<N,E>\hat{\boldsymbol G}:\hat{\boldsymbol G}=<\mathcal N,\mathcal E>,其中N\mathcal N是区域节点,ei,jEe_{i,j}\in\mathcal E定义了两个节点之间的一种知识。每个模块通过集成特定的知识来输出增强的特征,最后一些模块的输出拼接到一起,送入bounding box回归曾和分类层,获得最后的检测结果。

精确知识模块

文章将可以清楚定义和使用语言总结的人类常识作为精确知识,最有代表性的精确知识包括属性知识(苹果是红的)和成对关系知识(人骑着马)。该模块在类别-类别知识图Q\boldsymbol Q的映射的指导下监督式地更新G^\hat{\boldsymbol G}中的区域图节点,Q\boldsymbol Q是一种特定形式的语言知识。

自适应的区域到区域图

对于提出的所有候选框Nr=NN_r=|\mathcal N|,它们的视觉特征f={fi}i=1Nr,fiRD\boldsymbol f=\{f_i\}_{i=1}^{N_r},f_i\in\mathbb R^{D}由backbone网络提取得到。每条边的连接都可以对应地更新以描述特定情景信息,给定一种特定地知识图Q\boldsymbol Q,每条边的权重自适应地学习出来:

e^ij=MLP(α(fi,fj))\hat e_{ij}=\mathrm{MLP}(\alpha(f_i,f_j))

其中α()\alpha(\cdot)为区域对(fi,fj)(f_i,f_j)之间的L1距离。给定不同的先验图Q\boldsymbol Q,可以对应生成不同的区域-区域图G^\hat{\boldsymbol G}。文章强迫预测的e^ij\hat e_{ij}和先验图Q\boldsymbol Q边的权重一致,定义Q=<C,V>\boldsymbol Q=<\mathcal C,\mathcal V>为类别到类别的图,包含CC个类别节点和对应的边权重vi,jVv_{i,j}\in\mathcal V。训练过程中由于已知区域的真值,因此两个区域节点的边的权重e^ij\hat e_{ij}可以朝着Q\boldsymbol Q中区域真值类别之间的边的权重e~ij\tilde e_{ij}学习。因此MLPQ\mathrm{MLP}_{\boldsymbol Q}可以学习编码精确的区域知识关系,即e~ij=vci,cj\tilde e_{ij}=v_{c_i,c_j}。损失函数为:

L(f,WQ,Q)=i=1Nrj=1Nr12(e^ije~ij)2\mathcal L(\boldsymbol f,W_{\boldsymbol Q},\boldsymbol Q)=\sum_{i=1}^{N_r}\sum_{j=1}^{N_r}\frac12(\hat e_{ij}-\tilde e_{ij})^2

通过图推理的特征演化

在所学习的边E^={eij^}\hat{\mathcal E}=\{\hat{e_{ij}}\}上执行行标准化,可以通过不同权重边连接的区域特征来增强区域本身特征f\boldsymbol f',表达为矩阵乘法:

f=E^fWe\boldsymbol f'=\hat{\mathcal E}\boldsymbol f\mathbf W_e

其中WeRD×E\mathbf W_e\in\mathbb R^{D\times E}是变换权重矩阵,fRE\boldsymbol f'\in\mathbb R^EEE维通过图推理增强后的特征。通过来自其他区域外部知识的自适应指导,可以解决严重遮挡、类别歧义和小尺寸问题。训练参数WQW_{\mathbf Q}是堆叠的MLP和We\mathbf W_e

属性知识

属性知识图QA\mathbf Q^A表示和多种属性有关的物体类别,包括颜色、尺寸、材料和状态。精确的属性知识模块可以利用高频类别特征的视觉属性迁移来改进少类别特征。考虑CC类和KK个属性,可以获取到C×KC\times K的频率分布表。然后利用两类边的权重来测量两个类别的概率分布的JS散度eci,ejA=JS(PciPcj)e_{c_i,e_j}^A=JS(P_{c_i}||P_{c_j})。文章使用JS散度主要是避免KL散度非对称性KL(PiPj)KL(PjPi)KL(P_i||P_j)\not= KL(P_j||P_i)。最后模块输出增强后的特征faREa\boldsymbol f_a'\in\mathbb R^{E_a}

关系知识

关系知识表示类别之间的成对关系,例如位置关系(along, on),主客体关系(吃、穿)或共存关系。文章直接从语义信息之中计算频率统计量或者简单地看一对类别是否共存,来获得QR\mathbf Q^R图,最后输出增强后的特征frREr\boldsymbol f_r'\in\mathbb R^{E_r}

非精确知识模块

文章将不能精确定义或可由人类总结的常识看作非精确知识,因此引入了非精确知识模块。每个区域的特征表示为q={qi}\boldsymbol q=\{q_i\}非精确知识模块集成了MM个区域-区域图推理来编码非精确先验。文章为所有的区域候选框对学习每张图G^m\hat{\mathbf G}_m中边的权重e^ij(m)\hat e_{ij}^{(m)}。最后平均所有图的边的权重,并且和单位矩阵相加获得边的连接e^ijIE^I\hat e_{ij}^I\in\hat{\mathcal E}^I

e^ijI=1Mm=1Me^ij(m)+I\hat e_{ij}^I=\frac1M\sum_{m=1}^M\hat e_{ij}^{(m)}+\mathbf I

然后采用矩阵乘法g=E^IfWg\boldsymbol g'=\hat{\mathcal E}^I\boldsymbol f\mathbf W_g来获得演化特征gREg\boldsymbol g'\in\mathbb R^{E_g}。可训练的参数为M个堆叠的MLP和所有图共享的变换矩阵WgRD×Eg\mathbf W_g\in\mathbb R^{D\times E_g}

空间布局模块

每个区域的输入特征就是简单的bounding box的坐标,为了保证尺度变换的不变性,文章使用了相对几何特征(xiwˉ,yihˉ,wiwˉ,hihˉ,pi)\left(\frac{x_i}{\bar w}, \frac{y_i}{\bar h}, \frac{w_i}{\bar w}, \frac{h_i}{\bar h}, p_i\right),其中wˉ\bar whˉ\bar h是图片的尺寸,pip_i是每个区域初始的前景概率。

仿真实验

文章开展了Visual Genome和ADE两个数据集上的大规模目标检测任务,为了验证模型的泛化性和VG中领域知识迁移的有用性,文章选择了和VG数据集中重复的445类作为目标。此外文章还评价了PASCAL VOC2007和MSCOCO 2017的性能。

构建知识图谱

文章基于VG数据集的统计量可以构建属性知识和关系知识图。对于属性知识,文章考虑了VG数据集中3000个类别中200个最高频的属性标注,例如颜色、材料和状态,计算它们的频率统计,作为类别属性表格。对于关系知识,文章采用了VG数据集中200个最高频的关系标注,例如位置关系、主客体关系和每个类别关系对的频率统计量。

fa\boldsymbol f_a'fr\boldsymbol f_r'g\boldsymbol g'f\boldsymbol f拼接到一起,输入到锚框回归和分类层。

实验结果

HKRM在VG1000、VG3000和ADE数据集上性能对比

HKRM在PASCAL-VOC和MSCOCO上性能对比

HKRM在VG1000可视化结果

文章还用了t-SNE方法将精确和非精确知识进行聚类可视化:

HKRM知识二维可视化