概述
本文是一篇关于细粒度分类的深度框架评估的论文,主要利用最有前景的CNN进行了各种实验,探究了直接微调具有SOTA性能的CNN在图像分类任务上的潜能。可以作为车辆再识别与车辆细粒度分类的一个知识补充。
论文题目:A Systematic Evaluation of Recent Deep Learning Architectures for Fine-Grained Vehicle Classification
关键摘要:
首先,细粒度车辆分类是对车辆的品牌、型号和年份进行分类的任务。这是一项非常具有挑战性的任务,因为不同类型但颜色和视角相似的车辆通常比相同类型但颜色和视角不同的车辆看起来更相似 (类间很相似,类内差距大)。车辆品牌。型号,年份以及颜色在诸如车辆检索,车辆再识别,车辆跟踪及交通分析等应用中具有重要作用。
本文的工作主要是研究了几种在大规模图像分类任务中表现强悍的标志性卷积神经网络对于车辆细粒度分类的适应性。主要是对比了VGG16,各种形式的ResNet,Inception,DenseNet以及MobileNet网络架构的性能。探究了CNN训练的几个层面,如数据增强、从头训练或者微调网络。重要的是,本文并没有介绍特定于车辆分类的网络架构或者训练过程。
作者最终的模型达到了94.6%的最先进分类精度,超过了所有相关的工作,甚至是专门为任务定制的方法,例如包括车辆零件检测。
简单介绍:
相比于传统的图像分类(区别分类狗、猫、自行车等),细粒度法分类是共同基本类别内的目标类型或者种类的区分,是一项具有挑战性的任务。主要在于具有相同的类型的目标会存在巨大的视角,尺度,颜色等变化,而不同类型的目标却存在非常相似的外观与形状等。如下图所示:
卷积神经网络框架:
1、VGG
VGG是一个单路径的包含大量参数的网络,通过大量堆叠3x3卷积层,可以实现大卷积核的感受野,并且可以减少参数。
具体的如2个3x3卷积核的感受野等价于1个5x5卷积核的感受野,3个3x3卷积核的感受野等价于1个7x7卷积核的感受野。其计算公式如下:
K= (N-1)*(k-1)+k K为大卷积核尺寸,N为堆叠的小卷积核个数,k为小卷积核尺寸
VGG16与VGG19在分类任务及其他任务上具有较好的表现效果。
2、ResNet
通过引入残差短连接(identity shortcut),一定程度上解决了梯度消失问题,使得最后的计算梯度可以无障碍地反向传播到前面的额各层。并通过残差学习简化了训练学习任务。这种残差结构可以更好地训练更深的神经网络,成为了一种炼丹必试的经典。
3、DenseNet
同样使用残差连接,在每一个block中,DenseNet将每一个卷积输出与后续的每一层输入进行连接,并将特征加操作换成了concat操作,此操作一定程度上可以保存用来concat的各层特征的独立信息。由于过多卷积输出特征的堆叠(concat),会产生大量的参数。因此采用1x1卷积核作为bottleneck进行特征通道缩减。减少了参数量并提高了计算效率。
相比于ResNet,在同等精度条件下,具有更少的参数量。此特性对于训练具有少量数据的细粒度车辆分类任务具有很好的前景。另外,残差连接可以提供更稳定的梯度用于适应于车辆分类。而且,相比于加操作,concatenation操作更能保留来自前层的图像细节信息,此细节对于细粒度分类至关重要。
4、Inception
基于inception的模型起源于GoogLeNet,GoogLeNet模型不同于其他传统的顺序地堆叠卷积与池化操作的单路网络,首席使用具有多分支的Inception模块,Inception模块的结果是1x1,3x3,5x5等多个分支特征的concat,每个分支会产生不同的特征感受野。这种对模块输入进行多分支多尺度操作的思想,可以恢复局部特征(小卷积核)与全局上下文特征(大卷积核)。
Inception-ResNet-v2是在Inception基础上引入了ResNet的短连接,具有了更快的训练速度。最新的Inception-v4,将二维的大卷积核分解成了两个一维的卷积操作,如把7x7替换成了1x7与7x1两个操作,大大减少了参数量。
5、MobileNet-v1
此网络主要是用于在移动设备上进行网络推断,不同于传统网络架构,MobileNet将卷积操作分解成了两步操作,先是是在通道方向进行逐通道的卷积操作产生相同通道的输出特征,然后使用1x1操作来组合不同通道的对应神经元形成一个输出特征,采用多个1x1过滤器就可生成多通道的输出特征。另外,超参数width mutiplier可以控制各卷积层的特征数,超参数 resolution multiplier可以控制各卷积层输入特征的分辨率,用于准确率与延时的折中。
迁移学习:
迁移学习是一种机器学习技巧,用于为新任务重学习新的分类器。ImageNet训练模型很适于做迁移学习。巨大的数据量训练的模型包含了视觉世界的多方面。相比于随机初始化,编码在模型权重中的知识更适合作为许多视觉任务的初始化,模型初始化对于训练大模型至关重要。
ImageNet训练的模型迁移有两种使用:
1、直接作为特征提取器,用于其他任务的分类器训练。
2、微调预训练模型用于适应新的训练任务,随机初始化的层使用较大的学习率,预训练的层使用较小的学习率。
数据增强:
为了缓解特定任务数据量少,并增强模型的泛化性与鲁棒性,数据增强至关重要。
主要采用的方法有:水平翻转,轻微的旋转,运动模糊,添加噪声。
评估:
Stanford Cars-196数据集:包含196中车辆的16,185张图像,训练集有8,144张,测试集有8,041张,训练实验在通过标注框裁剪出的图像块数据上进行。
对于少量的数据集,迁移学习的微调相比于从头训练具有很好的性能。
数据增强效果:
主要是水平翻转与运动模糊对结果有较大的提升。
不同模型性能对比:
由上图可见,Inception稍逊于ResNet系列,这表明残差模型快或者稳定的梯度对于细粒度的分类具有重要作用。
DenseNet在准确率与速度上都比较强悍,速度稍逊于MobileNet。
最后
以上就是还单身樱桃为你收集整理的关于最近用于细粒度车辆分类的深度学习框架的系统评估的全部内容,希望文章能够帮你解决关于最近用于细粒度车辆分类的深度学习框架的系统评估所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复