Knowledge Guided Disambiguation for Large-Scale Scene Classification With Multi-Resolution CNNs》阅读笔记

《Knowledge Guided Disambiguation for Large-Scale Scene Classification With Multi-Resolution CNNs》阅读笔记

图像分类中遇到的困难,以及针对这些困难本文方法的优势在哪里?
场景分类中遇到的困难:
1、场景的类别常常通过多个信息(局部目标,全局布局,背景信息)综合确定,这使得分类的类间差距很大。
2、随着场景类别的增多,在大规模图像分类中,标签的歧义称为另一关注的焦点。
论文的贡献:
1、提出(由相互补充的粗分辨率CNN和精细分辨率CNN构成的)多分辨率CNN框架以获得多阶段的视觉信息和结构。
2、设计了两个消除标签歧义的技术:1)根据验证集合上混淆矩阵提供的信息将标签有歧义的多个类和并成一个超级大类。2)利用额外的网络产生每张图像的soft标签。接着利用超级类或者soft标签指导CNN的训练。
2、 本文方法获得的成就。
1、 ILSVRC2015, Places2挑战赛的第二名。
2、 CVPR2016, LSUN挑战赛的第一名
3、 论文评价提出的方法在MIT Indoor67和SUN397数据集上,准确率分别为86.7%, 72.0%。
分类的准确率
Knowledge Guided Disambiguation for Large-Scale Scene Classification With Multi-Resolution CNNs》阅读笔记_第1张图片
本文方法具体是怎么做的?
a. 本文采用的基本的网络框架
基本的网络框架是:BN_Inception
为什么要采用这个网络框架?
1、 这个网络框架是有效的。
2、 场景包含多个尺度空间的语言信息,对于不同的尺度空间的观察信息是不一样的。比如远距离看的一间办公室,以及近距离看的办公室的一张桌子。Inception 在它的inception 模块的multi-scale 想法使得它适合场景识别任务。
这个网络框架的结构详细介绍为:
Knowledge Guided Disambiguation for Large-Scale Scene Classification With Multi-Resolution CNNs》阅读笔记_第2张图片
http://ethereon.github.io/netscope/#/editor
这个网址对模型进行可视化进行讲解。Model文件见txt文件
b. 本文的multi-revolution CNN
首先我们介绍two-revolution CNN
基本框架如下所示:
Knowledge Guided Disambiguation for Large-Scale Scene Classification With Multi-Resolution CNNs》阅读笔记_第3张图片
粗分类的网络就是传统的BN_Inception。
细分类的网络是改进后的BN_Inception。是在原有网络的倒数第一层之前,增加了两个卷积层。
接着看multi-resolution CNNs.
Deeper CNN更有利于得到图像的视觉信息和结构。同时多个CNN网络同时训练分类性能可以得到有效的提高,能够改善最后的识别性能。
在实验中,训练四个网络,输入的region的大小分别为128,256,384,512。
对网络的训练:
如何进行多分辨CNN的训练:
1、对于每个分辨网络我们进行单独的训练
2、就按照一般的常规步骤进行训练。
3、minibatch随机梯度下降,momentum是0.9,学习率初始为0.1,学习率的衰减率在第5节介绍,训练图像被resize到N*N大小,然后从固定的位置集合中选择裁剪的位置对训练图像进行裁剪,裁剪的大小w,h来自于集合{N,0.875,0.75N,0.625N,0.5N},裁剪后的图像被resize到M*M大小(M=0.875N)。同时裁剪后的图像被做了随机的水平翻转。对于bn-inception, N=256;对于deeper bn-inception, N=384.
c. 差异性的消除
1、 从混淆矩阵获得信息
C是混淆矩阵,C(ij)是表示将第i类分成第j类的可能性。这个值越大表示两类之间的差异性越大。N是场景的总的类别数。计算类与类之间的相似性如下:
S=(C+C’)/2
等式保证相似性度量是一个对称度量。
根据相似性矩阵,本文提出自顶向上的聚类算法将相近的类融合成为一个大类。聚类算法流程如下:
Knowledge Guided Disambiguation for Large-Scale Scene Classification With Multi-Resolution CNNs》阅读笔记_第4张图片
在一次迭代中,我们挑选相似性最大的两个类,将这两个类合并成一个超级类,然后将最大相似性所在位置的行 列 删除,同时增加新的行列。
迭代的终止条件是没有相似性比T大。
这次聚类的效果使得场景的类别数目更少,更有利于高效的训练网络。
讲这个方法进行实施,原始的401个类别在 取0.3,0.5,0.7的时候被合并成351,372,386个类别。
在测试阶段,预训练的模型仅仅预测超级大类的得分。我们通过将每个超级大类的可能性等除,获得每个子类的可能性。在实践中,这种策略被证实是有效的。
2、 从其它网络获得信息
解决为问题:在前面的大类构造中,我们失败于对构成超级大类的小类进行区分。为了解决这个问题我们采用额外的网络得到所有图像的soft 标签。
针对大规模的数据库,选择的额外网络也是有可能再一次造成歧义问题的。但是幸运的是,很多CNN模型是在相对小的标签优异的数据集上训练的,也是公开可利用的。这个预先训练的模型可以很好的提取少量图像的底层寓意特征。我们利用预训练的模型去获得图像的soft标签。

Knowledge Guided Disambiguation for Large-Scale Scene Classification With Multi-Resolution CNNs》阅读笔记_第5张图片
Knowledge Guided Disambiguation for Large-Scale Scene Classification With Multi-Resolution CNNs》阅读笔记_第6张图片

你可能感兴趣的:(图像分类文献阅读以及操作)