«上一篇
文章快速检索     高级检索
下一篇»
  应用科技  2018, Vol. 45 Issue (5): 71-76, 81  DOI: 10.11991/yykj.201710009
0

引用本文  

宋佳蓉, 杨忠, 张天翼, 等. 基于卷积神经网络和多类SVM的交通标志识别[J]. 应用科技, 2018, 45(5): 71-76, 81. DOI: 10.11991/yykj.201710009.
SONG Jiarong, YANG Zhong, ZHANG Tianyi, et al. Traffic signs recogniton based on convolutional neural networks and multi-class SVM[J]. Applied Science and Technology, 2018, 45(5): 71-76, 81. DOI: 10.11991/yykj.201710009.

基金项目

国家自然科学基金项目(61473144); 航空科学基金项目(20162852031); 科技部重大科学仪器设备开发专项子课题(2016YFF0103702)

通信作者

杨忠,E-mail:YangZhong@nuaa.edu.cn

作者简介

宋佳蓉(1993−),女,硕士研究生;
杨忠(1969−),男,教授,博士生导师

文章历史

收稿日期:2017-10-29
网络出版日期:2018-01-05
基于卷积神经网络和多类SVM的交通标志识别
宋佳蓉, 杨忠, 张天翼, 韩家明, 朱家远    
南京航空航天大学 自动化学院,江苏 南京 211106
摘要:为了实现在复杂环境下具有较高准确率的交通标志识别以及在小样本情况下也能良好工作的识别网络,提出一种基于卷积神经网络和多类SVM的交通标志识别模型。此模型不需人工设计特征提取算法,且在小样本训练集上也能训练出具有较高准确率的分类模型。除此之外,利用迁移学习策略,避免重新初始化卷积神经网络,在节省大量样本与训练时间的同时能有效避免过拟合的发生。实验结果表明,提出的分类模型在小样本训练集上进行训练后得到的模型在实际测试中有较好的表现且对处于复杂背景下和严重畸变的交通标志具有可靠的识别能力和良好分类结果。
关键词交通标志识别    卷积神经网络    深度学习    迁移学习    多类SVM    过拟合    softmax    AlexNet    
Traffic signs recogniton based on convolutional neural networks and multi-class SVM
SONG Jiarong, YANG Zhong, ZHANG Tianyi, HAN Jiaming, ZHU Jiayuan    
College of Automation Engineering, Nanjing University of Aeronautics and Astronautics, Nanjing 211106, China
Abstract: In order to realize recognition of traffic signs with higher accuracy in complex environment and to acquire a classifying network that works well with small samples, a traffic signs recognition system based on the convolutional neural networks (CNNs) and multi-class support vector machine (SVM) is proposed in this paper. It does not need to design artificial feature extraction algorithm and a classification model with higher accuracy can be trained on a small sample training set. Besides, the training learning strategy is used to avoid reinitializing CNNs, so it avoids overfitting while saving a large amount of samples and time efficiently. Experimental results demonstrate that the classification model obtained in the small sample training set has good performance and has reliable recognition ability and good classification results for samples even in the condition of complex background and severe distortion.
Keywords: traffic signs recognition    CNNs    deep learning    transfer learning    multi-class SVM    overfitting    softmax    AlexNet    

近年来,随着电脑计算性能的提高,卷积神经网络被越来越多地应用在计算视觉领域。其中,在自动驾驶领域中,结合卷积交通标志的识别也得到了研究者大量的关注与研究。文献[1]通过在卷积神经网络引入交通标志的形状、颜色、图案内容3种视觉属性加入属性学习约束,同时进行交通标志属性学习和分类学习,最终在验证数据集上取得了较好的识别结果。文献[2]对传统的卷积神经网络Lenet-5进行改进,采用上万张交通标志图片对网络进行训练,使得最终实验结果取得了较好的识别率。为了提高识别的准确性,文献[3]将采集到的带有噪音的交通标志图像先处理为二值图像,再将处理后的二值图像送入网络,最终得到了具有较好准确率的识别网络。

以上文献都结合卷积神经网络模型对交通标志分类做了大量的研究,避免了复杂的人工特征提取算法的设计,研究结果具有一定的参考性。在现有卷积神经网络模型的启发下,以上文章都采用softmax分类器。而训练softmax分类器需要大量样本,因而在小样本数据下,采用softmax分类器容易造成过拟合,降低网络的泛化性。同时,由于SVM分类器在小样本数据集上具有出色分类性能,文中提出一种基于卷积神经网络和多类SVM分类器[4]的交通标志识别模型。此模型利用卷积神经网络强大的特征提取和泛化能力,使得算法在复杂环境中依然具有可靠的识别结果。

文中通过迁移学习策略[5-6]对AlexNet网络[7]特征提取部分进行微调,并将微调结果作为本文的特征提取器。然后将卷积神经网络提取的特征作为多类SVM分类器的输入。同时为了进一步防止过拟合现象的发生[8],本文在SVM分类器中加入dropout层,利用随机置零策略进行参数选择。最后,通过实验结果证实本文提出的分类模型相比于采用softmax分类器有更好的准确率、在复杂背景中具有较高的识别率和较强的鲁棒性。

1 卷积神经网络和SVM 1.1 AlexNet网络

AlexNet网络[7]是著名的卷积分类网络,可成功实现对1 000类别物体的分类。其结构可以分为特征提取器和分类器2部分。

特征提取器主要由卷积层、池化层、激活函数组成。卷积层由大小不同的卷积核组成,卷积核类似于传统视觉中的特征提取算子,但区别于传统视觉算子,卷积核参数由网络自己学习得到,可以提取图像从底层到高层的不同特征信息;池化层常连接在卷积层之后,一般常用最大池化操作,池化层可以加强网络对平移变化的鲁棒性;激活函数为网络引入非线性因素,使得网络可以逼近任意函数形式。

分类层主要由全连接层和多类逻辑回归函数组成。全连接层学习用合理的方式组合特征,可以看为函数映射。逻辑回归函数进行类别概率判别,逻辑回归判别见式(1)。同时,为了防止全连接层过拟合,AlexNet网络引入dropout层,dropout[9]采用随机置零的方式,防止神经元以特定的方式组合工作,从而防止深度网络的过拟合。

$p({y^{(i)}} = j|{x^{(i)}};{\theta }) = \frac{{{{\rm e}^{{\theta }_i^{\rm{T}}{{x}^{(i)}}}}}}{{\sum\nolimits_{l = 1}^k {{{\rm e}^{{\theta }_l^{\rm{T}}{{x}^{(i)}}}}} }}$ (1)

式中: $j$ 代表类别, ${{x}^{(i)}}$ 为输入, $k$ 代表类别总数, ${{\theta }_j}$ 表示将样本 ${{x}^{(i)}}$ 映射到 $j$ 类的参数, ${\theta }$ 表示 ${{\theta }_i}$ i = 1, 2, ···, j))组成的矩阵, $p({y^{(i)}} = j|{{x}^{(i)}};{\theta })$ 表示 ${{x}^{(i)}}$ 属于 $j$ 类的概率。

1.2 标准SVM

SVM是基于结构风险最小化理论的有监督学习算法,通过寻找最优分割超平面来实现分类[10]。相比于神经网络,SVM在小样本数据集上也能表现出良好的分类效果,因而得到广泛使用。标准的SVM通过寻求式(2)的最优解来找到最优超分割平面。

$\left\{ \begin{array}{l}{\min _{{w},b}}\frac{1}{2}||{w}|{|_2}\\{y^{(i)}}({w} \cdot {{x}^{(i)}} + b) \geqslant 1(i = 1,2, \cdots ,m)\end{array} \right.$ (2)

式中: ${y^{(i)}}$ 代表第 $i$ 个样本标签, ${{x}^{(i)}}$ 代表第 $i$ 个样本特征, $m$ 为训练集大小。

2 分类模型设计

本文提出的分类模型主要分为2部分:特征提取部分和多类SVM分类器,整体结构如图1所示。

Download:
图 1 模型结构

图1中,特征提取器主要对输入图片进行特征提取和融合,最终得到图像的高阶特征并将提取到的信息特征送入多类SVM分类器。随机丢失层进行参数随机丢失步骤,此步骤通过随机失活神经元可有效防止过拟合的发生;然后结合不加正则化项的SVM算法进行分类,得到最终输出结果。

2.1 特征提取器

传统的视觉特征提取算法只能提取到图像的边缘、方向等底层特征。卷积神经网络具有强大的特征提取能力,可以提取到图像从底层到高层不同层次的特征信息,因而具有更好的特征提取效果。然而,训练一个卷积神经网络往往需要大量的样本和数据。因此,本文采用迁移学习策略,对AlexNet网络的特征提取部分进行微调,得到本次模型的特征提取器。特征提取器主要由多个卷积层–RELU函数–池化层结构连接组成。采用迁移学习是因为本次模型和AlexNet网络均作用于图像数据,因而输入数据具有相同的数据结构,因此AlexNet网络的特征提取器适用于本文模型。

其中,微调时降低浅层卷积层的学习率,将顶层卷积层的学习率适当放大。因为本文数据和Alexnet数据都为图像数据,因而具有相同的低阶特征,因此浅层特征提取层区别不大,可以减小学习率使其更新速率变慢。顶层卷积层主要提取类别等特征,在不同的任务中一般差异较明显,所以设置较大学习率加快更新速率。

2.2 分类器

模型分类器采用多分类SVM分类器,由于标准的SVM分类器一般针对二分类问题,为了实现一次进行多目标分类,模型采用hinge损失函数[11]来达到多分类目的。hinge损失函数为

${L_i} = \sum\limits_{j \ne {y_i}} {\max (0,{s_j} - {s_i} + 1)} $
$L = \sum\limits_{i = 1}^m {{L_i}} $ (3)

式中: ${s_i}$ 代表第 $i$ 个训练样本对应类别的分数, ${s_j}$ 代表其余类别的得分, $m$ 为训练集大小, ${L_i}$ 代表第 $i$ 个训练样本总得分, $L$ 代表训练样集总得分。

通常情况下,为防止过拟合,需要在损失函数中引入正则化项[12],引入正则化项在确保分类器准确分类的同时尽可能减小模型复杂度,从而保证了模型的泛化性。加入正则化项后的损失函数如为

$L = \sum\limits_{i = 1}^m {{L_i}} + \lambda ||{w}|{|_2}$

然而在反向传播时,正则化项加大了计算量,因此本文将传统SVM中的正则化项用dropout层替代,使得损失函数计算仍采用式(3)。但在每次迭代过程中dropout层会随机丢失参数,此策略会对参数更新提供约束,最终达到均衡参数选择的目的,从而有效防止模型过拟合的发生,提高模型泛化能力。

2.3 测试阶段对dropout层的处理

在测试阶段,为了能充分利用数据信息,网络结构中的dropout层通常情况会被去掉。当去掉dropout层时,为了保证网络能正确工作,需要对数据进行进一步处理,通常是对相应的神经元输入乘上drop ratio值[7]。因为去掉dropout层后,原来与dropout层连接的神经元的输入会大于期望输入,如公式(4)和(5)所示。因此会造成数据分布的改变,数据分布的改变会对网络的分类性能造成不利影响。为了避免这种情况的发生,在去掉dropout层时,需要给相应神经元的输入乘上drop ratio值。

${i_{{\rm{withdropout}}}} = p\sum {{w_i}{x_i}} + b$ (4)
${i_{{\rm{withoutdropout}}}} = \sum {{w_i}{x_i}} + b$ (5)

式中: ${i_{{\rm{withdropout}}}}$ ${i_{{\rm{withoutdropout}}}}$ 分别代表在引入dropout和去掉dropout层时单个神经元的总输出, $p$ 为drop ratio值,取值范围为[0, 1], ${w_i}$ 代表权重, ${x_i}$ 神经元单个输入, $b$ 为偏置。

3 实验结果与分析 3.1 实验数据

本次数据由训练集和测试集2部分组成。每部分分别由5类组成,分别为禁停标志、限速标志、斑马线、禁止鸣笛、无标志。同时本次所有数据皆从校园内外实地拍摄和网络下载获取,具体细节见表1图2表1展示了样本构成详细信息,图2列举了部分训练集中实际图像数据。

表 1 实验样本组成
Download:
图 2 部分训练样本展示
3.2 分类模型的训练与测试 3.2.1 小样本数据集上SVM与softmax对比

文章提出相比于softmax分类器,SVM在小数据集上有更好的表现。为了验证这一结论,该部分针对分类器部分采用SVM与softmax做了实验对比,对比结果如图34表2所示。表2是对图34的统计结果,即平均值。其中,损失值在区间[80, 150]已经稳定,测试准确率在迭代次数为60时已经稳定。

Download:
图 3 Softmax与SVM训练损失值对比
Download:
图 4 Softmax与SVM测试准确率对比
表 2 Softmax与SVM实验结果统计

图34表2可知,在训练集上SVM的损失值略高于softmax分类器;但在测试集上,SVM分类器的准确率明显高于分类器。因为与softmax相比SVM会集中于对分类边界的数据进行调整,即分类类别的调整。也就是说分类器只利用在分类边界的数据对自身进行调整。而对softmax分类器而言,所有数据的变化都会对loss值造成影响,所以softmax会利用所有数据进行调整。在此情况下,SVM更侧重于类别归属判断,而softmax更侧重于最终分值的优化。因此为了所有样本得分总和最优,softmax有时会误分类一些数据,所以在小样本上的准确率表现不如SVM。

3.2.2 dropout层的影响

文章提出在SVM分类器中加入dropout层,可以提高模型的泛化能力。为了验证在模型中引入dropout层能有效防止过拟合现象的发生,从而提高模型的泛化能力。该部分对引入dropout层和去掉dropout层2个分类模型做了实验对比,对比结果如图56表3所示。表3是对图56的统计结果,即平均值。其中,损失值在区间[80, 150]已经稳定,测试准确率在迭代次数为60时已经稳定,本文drop ratio值设为0.6。

Download:
图 5 有无dropout层训练损失值对比
Download:
图 6 有无dropout层测试准确率对比
表 3 有无dropout层实验结果统计

图56表3可知,去掉dropout层的分类模型在训练集上的损失值要小于引入dropout层的分类模型,但在测试集上的分类准确度小于引入dropout层的模型。因为不引入dropout层,在训练过程中,模型为了寻找更小的损失值,会对训练集过分拟合。

因为网络为了在训练集上寻找更小的损失值,会通过特定神经元组合来形成更好的输出,并不会对全连层的神经元携带的类别信息进行无偏考虑。此种情况下,训练出的网络在训练集上会有很好的表现。但当测试数据集与训练数据集相比存在小偏差时,在训练数据集上拟合的网络无法在测试集上表现出好的分类性能,使得最终模型泛化性较差。引入dropout层后,模型在每次迭代过程中只会随机优化一部分参数,即整个网络被随机分为多个子网络,每次训练只针对单个子网络进行,优化单个子网络。此方法使得每个子网络在训练过程中是独立的,避免了神经元之间形成特定的组合方式,因而在训练集上的损失值难以达到最优。但由于各个子网络在每个迭代周期独立工作,因此参数分布较为均衡,不会对某些特征给予过大权重,否则会使得部分子网络无法表现出好的分类性能。在测试阶段,整个网络进行工作,即各个子网络的贡献均被考虑,此种组合方式大大减小了模型过拟合发生的可能性。因而引入dropout层的模型有更强的泛化能力。同时,上述实验结果证实了引入dropout层可以使得分类模型在测试集上有更好的表现。

3.3 分类模型的实物预测

该部分利用分类模型对实际图片进行了识别测试,实验结果展示了网络单张输入图例和输出结果。其中,输出结果代表分类模型对每张图片所属类别的预测概率,具体实验结果见图7

Download:
图 7 实物预测结果

图7可知,分类模型的实物预测有着很好的预测能力,证实了模型有好的分类准确度。同时在背景环境十分相似的情况下,比如无标识类别与禁止停车和限速标志背景十分相似,模型也有着非常好的区分能力。其次,在实际图片有严重畸变和光照变化明显的情况下,本文的分类模型依然有着很高的分类准确度,说明该模型对环境变化有着较强的鲁棒性。

4 结论

本文提出了基于卷积神经网络和多类SVM的交通标志识别模型,通过理论分析和实验对比、验证得到以下结论:

1)在小样本数据集条件下,SVM分类器相比于softmax分类器有更好的分类结果。

2)本文利用卷积神经网络与多类SVM分类器构建了对交通标志的识别模型。同时为了防止过拟合现象的发生,在多类SVM分类器中融入了dropout层。并通过对于实验证明了加入dropout层的模型有更好的分类准确度。

3) 分类模型的实物预测实验证明该模型对环境变化有较强的鲁棒性。

参考文献
[1] 王方石, 王坚, 李兵, 等. 基于深度属性学习的交通标志检测[J]. 吉林大学学报: 工学版, 2018, 48(1): 319-329. (0)
[2] 吕耀坤. 基于卷积神经网络的实景交通标志识别[J]. 物联网技术, 2017, 7(1): 29-30. (0)
[3] 黄琳, 张尤赛. 应用深层卷积神经网络的交通标志识别[J]. 现代电子技术, 2015, 38(13): 101-106. DOI:10.3969/j.issn.1004-373X.2015.13.028 (0)
[4] 郭显娥, 武伟, 刘春贵, 等. 多类SVM分类算法的研究[J]. 山西大同大学学报: 自然科学版, 2010, 26(3): 6-8, 14. (0)
[5] TAJBAKHSH N, SHIN J Y, GURUDU S R, et al. Convolutional neural networks for medical image analysis: full training or fine tuning[J]. IEEE transactions on medical imaging, 2016, 35(5): 1299-1312. DOI:10.1109/TMI.2016.2535302 (0)
[6] MARMANIS D, DATCU M, ESCH T, et al. Deep learning earth observation classification using ImageNet Pretrained networks[J]. IEEE geoscience and remote sensing letters, 2016, 13(1): 105-109. DOI:10.1109/LGRS.2015.2499239 (0)
[7] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks[C]//Proceedings of the 25th International Conference on Neural Information Processing Systems. Lake Tahoe, Nevada, 2012: 1097-1105. (0)
[8] GU Yingxin, WYLIE B K, BOYTE S P, et al. An optimal sample data usage strategy to minimize overfitting and underfitting effects in regression tree models based on remotely-sensed data[J]. Remote sensing, 2016, 8(11): 943. DOI:10.3390/rs8110943 (0)
[9] SRIVASTAVA N, HINTON G, KRIZHEVSKY A, et al. Dropout: a simple way to prevent neural networks from overfitting[J]. Journal of machine learning research, 2014, 15(1): 1929-1958. (0)
[10] 张冬生. 支持向量机在分类问题中的应用研究[J]. 黑龙江科技信息, 2010(35): 64. DOI:10.3969/j.issn.1673-1328.2010.35.059 (0)
[11] WU Yichao, LIU Yufeng. Robust truncated hinge loss support vector machines[J]. Journal of the American statistical association, 2007, 102(479): 974-983. DOI:10.1198/016214507000000617 (0)
[12] 刘建伟, 李双成, 罗雄麟. p范数正则化支持向量机分类算法 [J]. 自动化学报, 2012, 38(1): 76-87. (0)