您的位置:首页 > 其它

论文笔记:Multi-Label Image Recognition with Graph Convolutional Networks

2019-06-05 21:05 1846 查看

论文:Multi-Label Image Recognition with Graph Convolutional Networks

通过data-driven方式建立有向图用于描述标签之间的关联关系,提出了基于图卷积(GCN)的端到端多标签分类系统。通过ResNet101对图像进行特征提取,通过GCN学习到标签映射作为标签分类器对图像的特征向量进行分类。

1、Introduction

对于多标签分类而言,最简单的处理方式是将多标签分类问题转化为多个二分类问题,近些年来CNN的发展使得该类方法得到了一定程度上的提升。但是,该类方法忽略了目标之间的拓扑结构。一些方法用捕获目标之间的相关性,如概率图模型、RNN等。概率图模型将多标签问题表述为一个结构推理问题,计算复杂度较高,存在拓展性问题。RNN以顺序的方式对标签进行预测,预测的顺序不同会对预测结果有所影响,需要一些先验经验,确定标签预测的顺序。另一种是通过注意力机制隐式的对标签相关性进行建模,考虑图像中的局部区域之间的关系,可以被看成对局部相关性进行建模,仍然忽略了标签之前的全局相关性。

2Related Work

大型数据集的发展、CNN的发展使得图像分类的性能得到了快速的发展。最直接地处理多标签分类问题的方式是通过构建多个二分类问题,该方式会因为标签数量的增长导致构建的二分类器数量指数增长,且该类方式没有考虑标签之间的相关性。

已经有很多学者提出了捕获标签依赖性的方法,如通过RNN、LSTM、spatial regularization network 、attention mechanisms等方法。

3、方法

该模型分为两部分:

1、通过CNN对图像进行特征提取,使用的是ResNet101,对第五个卷积层的输出做池化操作,结果作为特征,维度为2048。

2、通过GCN对标签的依赖关系进行建模,生成一个标签相关性分类器W。

则多标签的预测得分为:

损失函数为:

在该论文中,每个标签构成了图的节点,节点的特征向量为标签的词向量(word embeding),通过一个相关性矩阵A来表示图的节点之间的关联关系,是一个方阵,则图卷积运算可表示为:

对于该模型而言,关键在于标签相关性矩阵A的构建。

如上图所示,两个标签之间的相关性可能相对不同,因此相关性矩阵是一个非对称矩阵,通过条件概率表示两个标签之间的相关关系,一般而言,两者不相等。

出现时, 出现的概率:

出现时, 出现的概率:

构建一个方阵M,长宽为标签的个数, 表示标签i与标签j同时出现的次数,则两个标签之间的条件概率可以表示为:

表示在训练集中标签i出现的次数。

该种计算方式存在一些问题:标签之间相关性可能呈现拖尾分布,即部分标签之间的相关关系可能是噪声;训练集与测试集之间标签出现的相对测试可能不完全一致,因此可以标签相关性简化为二值相关性,即:

为了避免过拟合问题,可以对相关性矩阵进行调整:

p用于控制邻居节点在信息聚合时所占的比重,如果p=0,则忽略邻居节点的信息,如果p=1,则节点本身会被忽略。

4、实验

4.1、评价指标

per-class precision (CP), recall (CR), F1 (CF1) and the average overall precision (OP), recall (OR), F1 (OF1);

mean average precision (mAP),average overall F1 (OF1), average per-class F1 (CF1)。

4.2、实现细节

GCN:两层GCN,输出分别是1024维和2048维,选择的输入词向量是在Wikipedia dataset上训练的300-dim GloVe。对于包含多个单词的标签,对包含的词向量取均值。

CNN:ResNet101

通过Pytorch进行实现,选择随机梯度下降作为优化器。

4.3实验结果

论文链接:https://arxiv.org/abs/1904.03582

代码链接:https://github.com/chenzhaomin123/ML_GCN

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐