ML-GCN
文献阅读入门,加油冲冲冲!阅读方法参考@柚子味的羊
- 论文信息
-
- 论文名:Multi-Label Image Recognition with Graph Convolutional Networks∗
- 领域:计算机视觉、多标签物体识别
- 关键词:
- 发表年份:2019
- 会议/期刊名: IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)
- 级别:国际会议(计算机视觉方面的三大顶级会议:ICCV,CVPR,ECCV,统称为ICE)
- 先验知识、知识拓展
文章中涉及到的先验背景知识、基础概念
-
- 1 多标签图像识别:预测图片中各物体的标签
- 2 预测标签的数量将随着类别数量的增加而呈指数级增长。例如,如果一个数据集包含20个标签,那么预测的标签组合的数量可能超过100万(即2^20个)。
- 3 拓扑结构是对象共现模式的重要正则化矩阵。例如,一些标签的组合几乎不可能出现在物理世界中。
- 文章结构
- Abstract
- Introduction
- Related Work
- Approach
- Experiments
- Conclusion
- 背景
摘要、介绍、相关工作
-
-
-
- 提出问题:
- 图片中的物体间普遍存在联系,可以对标签的依赖关系进行建模以提高识别表现
- 有可拓展性和灵活性的
- 相关工作:
- 1 解决多标签识别问题的朴素方法是,独立看待每一个物体,然后转换成二分类问题来预测感兴趣的物体是否出现
- 2 CNN网络可以很好地解决单标签图像分类问题,但是这些方法都忽略了物体间复杂的拓扑结构
- 3 刺激了捕捉物体标签相关性/依赖的研究,建模标签的依赖关系,显式地对标签依赖性进行建模:
- 不基于图(正则化预测空间)
- 基于概率图,转化成一个结构推理问题,但是可拓展性低;
- Gong等人,基于排名的学习策略,训练深度卷积神经网络,加权近似排名损失
- 基于RNN,转化成一个顺序序列问题;
- Wang等人,结合RNN,将标签转换为嵌入的标签向量
- Wang,transformer和LSTM单元
- 基于注意机制。
- Zhu,空间正则化网络,加权注意图,注意机制
- 考虑了一个图像中被关注的区域之间的关系,这可以看作是局部相关性,但是忽略了标签的全局的相关性,这需要需要从单一图像之外的知识中推断出来
- 基于概率图,转化成一个结构推理问题,但是可拓展性低;
- 基于图
- Li,树状结构图,最大生成树算法
- Li,与图像相关的条件标签结构
- Lee,知识图谱
- 不基于图(正则化预测空间)
-
- 文章方法
- 两个模块:图像表征学习模块和基于GCN的分类器学习模块
-
- 介绍
- 1 提出基于GCN的多标签识别模型,在物体标签上建立有向图,节点是标签的词嵌入,表示事物间的组合联系,对每个图像标签学习它的相互依赖分类器。
- 2 用GCN将有先验特征(如词嵌入向量)的标签图映射成相互依赖的对象分类器,将对象分类器作为一组待学习的独立参数向量
- 3 将分类器应用于另一个子图提取出来的图像描述中,用于端到端的训练
- 4 这些分类器从标签图中吸收信息,进一步应用于全局图像表示,以进行最终的多标签预测
- 5 词嵌入向量到分类器的映射参数是在所有类别(如图像标签)之间共享的,所有分类器的梯度都会影响这个基于 GCN 的分类器生成函数,可以对标签的相关性进行隐式建模
- 方法架构
- 图像表征学习模块
- ResNet-101卷积网络,得到2048×14×14的特征图,采用全局最大池化来获取图像级特征x
- GCN分类器学习模块
- GCN用于半监督分类,其基本思想是通过在节点之间传播信息来更新节点表示,以特征描述Hl和相应的相关矩阵A作为输入,然后更新节点信息,通过叠加多个GCN层来学习和建模节点之间复杂的相互关系
- 节点级的输出是每个节点的预测分数,每个GCN节点的最终输出是我们的任务中相应标签的分类器。
- 每个GCN层l将前一层的节点表示作为输入,输出新的节点表示
- 第一层输入向量的维数是节点级别的词嵌入,最后输出的向量是图表示级别的,将学习到的分类器应用到图表示中,得到预测分数。整个网络采用传统的多标签分类损失法进行训练
- 相关系数矩阵
- 用数据驱动的方式建立,在数据集中挖掘它们的共现模式,以条件概率的形式建模标签相关依赖关系
- 相互关系矩阵是不对称的
- 图像表征学习模块
- 介绍
-
-
-
- 创建方法:
- ①计算在训练集中标签对的出现情况,得到标签共现矩阵M
- ②通过M得到条件概率矩阵
- 创建方法:
-
-
-
-
-
-
- ③为了解决稀有依赖产生的噪声和关系在训练集与数据集的发生绝对次数不一样而产生的过拟合现象,提出二值化相关性,设置阈值τ进行过滤
- ③为了解决稀有依赖产生的噪声和关系在训练集与数据集的发生绝对次数不一样而产生的过拟合现象,提出二值化相关性,设置阈值τ进行过滤
-
-
-
-
-
- 重新加权方案
- 为了避免二值化相关性产生的过平滑,导致节点特征难以区分,改进方案。使用参数p决定节点本身及相邻节点的权重。
- 重新加权方案
-
- 文章实验
- 评价指标
- 平均mAP值,每一类的&整体的P,R,F1 值
- 如果标签的置信度大于0.5,则预测为正
- 实施细节
- 2个GCN层,输出向量维数分别是1024和2048
- 标签表示用300-dim GloVe作为堆叠GCN的输入,对多个单词的种类名取所有词嵌入的平均值
- 相关系数矩阵τ设定为0.4,p设定为0.2
- 图片表示学习的非线性激活函数设定为LeakyReLU
- 卷积特征提取骨架采用在ImageNet上预训练好的ResNet-101
- 训练图片的输入尺寸是随机的,会被重置为448 × 448,同时利用随机水平翻转作为数据增强
- 网络优化器使用SGD,momentum设为0.9,Weight decay 是10e−4;初始学习率0.01,每40个epoch衰减10倍;网络训练100个epoch,使用PyTorch框架
- 对比
- 与最先进的方法相比,本文方法与所提出的重新加权方案在几乎所有指标下都表现得更好
- 评价指标
-
- 消融实验
- ML-GCN对不同类型单词嵌入方法的敏感性
- GloVe, Google News,FastText,the simple one-hot word embedding
- 使用不同的单词嵌入作为GCN的输入,多标签识别精度不会受到显著影响;方法所实现的准确性提高并不是绝对来自于单词嵌入的语义;使用强大的单词嵌入可以导致更好的性能
- ML-GCN对不同类型单词嵌入方法的敏感性
- 消融实验
-
-
- 阈值τ在相关矩阵二值化中的影响
- 当过滤掉小概率的边缘(即有噪声的边缘)时,多标签识别的精度提高了;当太多的边被过滤掉时,精度会下降,因为相关的邻居也会被忽略
- 阈值τ在相关矩阵二值化中的影响
-
-
-
- p对相关矩阵重加权的影响
- 如果p太小,则图中的节点(标签)无法从相关的节点(标签)中获得足够的信息。而如果p太大,就会导致过度平滑;但是p等于0时效果也很好,此时并没有明确地合并标签相关性,主要得益于ML-GCN建立的隐式依赖相关性
- p对相关矩阵重加权的影响
-
-
-
- GCN的深度
- 当图卷积层数增加时,两个数据集上的多标签识别性能都会下降。可能的原因是当使用更多的GCN层时,节点之间的传播会累积,从而导致过度平滑。
- GCN的深度
-
-
- 分类器结果可视化
- 通过该方法学习到的分类器可能不局限于学习到分类器的数据集,可能具有泛化能力(例如,超级概念“交通”中的分类器“汽车”和“卡车”,在分类器空间中很接近);普通ResNet学习到的分类器均匀地分布在空间中,并且没有显示出任何有意义的拓扑结构;该方法能够有效地建模标签依赖关系
- 分类器结果可视化
-
- 在图像检索中的表现
- 该方法的检索结果明显优于普通的ResNet
- 在图像检索中的表现
- 总结和思考( •̀ ω •́ )✧
- 创新点:
- 1 卷积提取特征+GCN根据词嵌入提取依赖关系
- 2 显式地为分类器学习的标签依赖性建模,吸收相关节点的信息-->标签相关系数矩阵-->指导信息传播
- 3 重新加权方案-->平衡节点和邻域之间的权值,以进行节点特征更新-->避免过拟合和过平滑
- 4 定性和定量的实验结果都表明,该方法优于先前的计算方式,且分类器保持了重要的语义拓扑结构
- 文章不足:
- 作者没写不足...outperforms other existing state-of-the-art methods
- 可借鉴点/学习点:
- 作为GCN在多标签图像识别的开山之作,还是值得一看的
- 实验证明做的很充分,有对比、消融、关键结果可视化以及应用能力
- 好会吹水,这个来回拉扯的书写方式给我学!
- 创新点: