張文韜 張婷
摘 ?要:卷積神經網絡是圖像分類領域效果卓越的深度學習算法,然而訓練深度神經網絡是一項繁瑣且復雜的工作,不僅在結構設計上依賴開發(fā)人員豐富的經驗,還容易產生過擬合現象。因此,該文提出一種基于模型遷移的圖像識別方法,該方法能夠在簡化設計思路的同時極大地提升卷積神經網絡的性能。此外還在三個小型圖片集上進行了多次模型訓練和對比分析。研究結果表明,經過遷移學習優(yōu)化的卷積神經網絡的測試集準確率均得到顯著提升。
關鍵詞:圖像識別;深度學習;卷積神經網絡;遷移學習;預訓練模型
中圖分類號:TP391.4 ? ? 文獻標識碼:A ? 文章編號:2096-4706(2023)14-0057-04
Research on Convolutional Neural Network Image Recognition Method
Based on Transfer Learning
ZHANG Wentao, ZHANG Ting
(School of Mechanical and Automotive Engineering, Shanghai University of Engineering Science, Shanghai ?201620, China)
Abstract: Convolutional neural network is an effective deep learning algorithm in the field of image classification. However, training the deep neural network is a tedious and complex work, not only relying on the rich experience of developers in structural design, but also prone to over fitting. Therefore, this paper proposes an image recognition method based on model migration, which can greatly improve the performance of convolutional neural network while simplifying the design idea. In addition, multiple model training and comparative analysis are conducted on three small image sets. The research results show that the test set accuracy of convolutional neural network optimized by Transfer learning is significantly improved.
Keywords: image recognition; Deep Learning; Convolutional Neural Network; Transfer Learning; Pre-trained Model
0 ?引 ?言
隨著智能手機與社交媒體的普及,大量的圖片信息相繼產生。人類能夠在復雜的自然環(huán)境中識別物體并判斷出物體的類別,然而如何將這種能力應用于計算機,令其靈活自如地對圖片信息進行分類,提高信息獲取的效率,并將這些分類識別方法應用于后續(xù)的目標檢測、目標跟蹤等領域,是一個值得深入研究和探討的重要課題[1]。
傳統(tǒng)的分類方法通常采用淺層的模型結構,例如高斯混合模型、K-均值聚類、支持向量機與邏輯回歸模型等,這些結構最多含有一兩個隱含層,難以刻畫復雜的映射關系,通常不能在大規(guī)模的數據集上取得很高的識別準確率。隨著人工智能的發(fā)展,卷積神經網絡(Convolutional Neural Network, CNN)在圖像識別領域取得重大突破。CNN結構具有權值共享與稀疏連接等特點,展現出良好的自適應性和強大的學習能力,能夠在大幅度減少訓練參數量的同時保證圖像的識別準確率[2]。因而,CNN對于傳統(tǒng)算法而言擁有極大的優(yōu)勢,在圖像識別領域廣受青睞。
訓練一款有效的CNN是一項繁瑣且復雜的工作。首先,在設計網絡結構時,卷積層的數量和卷積核的大小沒有明確的設計準則,往往需要多次嘗試積累經驗。其次,采用常規(guī)方法訓練的網絡中的可訓練參數沒有穩(wěn)定的初始化方法,通常為一定范圍內的隨機初始化,容易陷入局部最優(yōu)解。最后,在訓練樣本數不足的情況下,深度神經網絡普遍容易產生過擬合的現象[3]。因此,本文針對上述問題提出一種相對簡單且高效的圖像識別方法,采用基于模型的遷移學習思路,引入先進的CNN作為預訓練模型,使網絡能夠以較快的速度收斂并取得較高的識別準確率,同時還能有效緩解過擬合現象。
1 ?卷積神經網絡模型
CNN經過多年的發(fā)展,在圖像識別領域頻頻取得優(yōu)異成績,甚至能夠取得優(yōu)于人眼識別的準確率。接下來按照時間順序介紹幾種性能優(yōu)異的CNN[4]。
1.1 ?AlexNet
AlexNet是一個包含5層卷積層和3層全連接層的8層CNN模型[5],其在多個方面進行了創(chuàng)新。例如采用線性整流單元作為激活函數,利用Dropout正則化緩解過擬合,采用重疊的最大池化避免模糊化效果,提出通過局部響應歸一化增強泛化能力,使用數據增強擴大樣本集規(guī)模等。這些方法極大地提升了模型性能,使其在ImageNet數據集上遠超第二名的識別準確率,給當時的學術界和工業(yè)界帶來了巨大沖擊。
1.2 ?VGGNet
VGGNet是牛津大學計算機視覺組和Google合作研發(fā)的CNN[6],采用反復堆疊的小尺寸卷積核代替AlexNet中的大卷積核,在減少參數的同時將網絡深度增加至16~19層,顯著改善了當前的技術成果,證明網絡深度的增加對于其性能的提升具有重要意義。VGGNet的結構規(guī)整,整個網絡都使用同樣大小的卷積核和池化核,尤其適于硬件加速,同時還具有良好的泛化能力,因此廣泛應用于諸多圖像識別任務中。
1.3 ?GoogLeNet
GoogLeNet是由Google研究院推出的CNN[7],采用模塊化設計的思想,通過大量堆疊Inception模塊,設計出稀疏連接的網絡結構,并通過密集矩陣的高計算性能來提升計算資源的利用率。如圖1所示,Inception模塊是一種將多個卷積和池化操作組裝在一起的網絡模塊,一方面可以讓網絡的深度和寬度高效率地擴充,另一方面也提升了網絡對尺度的適應性和感知力。
1.4 ?ResNet
ResNet是2015年提出的CNN[8],通過殘差結構成功訓練出深層的神經網絡。如圖2所示,ResNet通過在卷積層的輸入和輸出之間添加一條跳連線,將前邊的特征信息直接輸送到后面,有效緩解了因梯度消失或梯度爆炸帶來的模型退化,網絡得以在輸入特征的基礎上在堆積層學習到新的特征,從而獲得性能優(yōu)越且能穩(wěn)定訓練的深層網絡模型。
1.5 ?DenseNet
DenseNet是2017年提出的[9],通過全新的密集連接機制,以前饋的方式將每一層與前面所有層的輸出特征進行通道合并實現特征重用,不但緩解了梯度彌散問題,而且還能夠在參數與計算量很少的情況下實現更優(yōu)的性能,如圖3所示。DenseNet可以使用少量的卷積核生成大量的特征,不需要重新學習多余的特征圖,每個層都能訪問到網絡的“集體知識”,同時緊湊的內部結構減少了特征冗余,隨著參數數量的增加也不會出現性能下降或過度擬合的跡象,因而成為各種計算機視覺任務中良好的特征提取器。
1.6 ?MobileNet
MobileNet是Google為移動端和嵌入式設備而設計的一款輕量化CNN[10]。MobileNet使用深度可分離卷積來構建輕量化網絡,將標準卷積分解成深度卷積和逐點卷積,二者結合達到的效果與一個標準卷積相近,但計算量卻遠遠少于標準卷積。MobileNet還引入了寬度因子和分辨率因子兩個全局超參數,使用戶依據約束條件在內存大小和準確率之間取舍,構建出滿足嵌入式設備小內存、低延遲等要求的模型。
2 ?遷移學習
遷移學習是一種重要的機器學習方法,本著將預訓練模型的參數遷移到新的模型來幫助新模型訓練的思路,利用數據、任務或模型之間的相似性,將在舊領域學習過的模型應用于新的領域。遷移學習引入預訓練模型的參數并將其作為學習的起點,在此基礎上對網絡高層的參數進行微調。這樣,新模型能夠運用預訓練模型學習到的知識更好地實現相應功能。遷移學習涉及兩個基本的領域——源域和目標域,當目標領域數據量遠遠小于源領域數據量時,遷移學習能夠借助源領域的知識有效幫助模型去學習目標領域的知識,本文采用的基于遷移學習的CNN圖像識別過程如圖4所示。
CNN適合于從圖像中學習層次表示,低層網絡通常能提取圖像中常見的低級特征(例如邊緣和曲線),其所包含的知識適用于絕大多數的圖像識別任務,而高層網絡更傾向于學習抽象化的高級特征,往往僅適用于某些特定的任務,因而高層的網絡權重在遷移后需要進行微調以適應目標領域任務的需求。CNN包含許多在大型圖像數據集ImageNet識別任務中取得高精度的模型,這些模型在開發(fā)的時候已經消耗了大量的時間和計算資源,包含有豐富的圖像識別知識,可以作為預訓練模型完成其他圖像識別任務,以大幅減少訓練所需的數據量并加快網絡的收斂過程[11]。
3 ?圖像識別實戰(zhàn)
本節(jié)以MNIST、Fashion-MNIST和CIFAR-10三個圖像數據集為例,選擇VGG16、ResNet50、InceptionV3、DenseNet121、Xception和MobileNetV1六種CNN作為研究對象,將是否進行遷移學習作為兩種不同的訓練方式開展對照實驗,在深度學習框架TensorFlow的高級API Keras上進行訓練并測試其性能,相關設置如表1所示[12]。
MNIST數據集由0~9共十種手寫數字圖片組成,這些圖片均由真人書寫,其圖像數據識別主要依賴于模型對黑白輪廓的特征提取能力,識別難度最低。表2展示了六種CNN在MNIST數據集上取得的測試集準確率,可以看出在不使用遷移學習的情況下,不同CNN的收斂速度存在差異,例如Xception的準確率達到了99.09%,而MobileNet的準確率僅有95.60%,可以認為MobileNet并未完全收斂。而應用遷移學習后,所有CNN均實現99%以上的準確率,這說明所有CNN都達到收斂到最優(yōu)解的狀態(tài)。由此可知遷移學習具有加快CNN收斂速度的效果。
Fashion-MNIST數據集圖像共包含70 000張十種不同類別的時尚穿戴品圖像,分別是T恤、牛仔褲、套衫、裙子、外套、涼鞋、襯衫、運動鞋、包、短靴,不僅考驗模型對輪廓的提取能力,更考驗模型對真實物品的細節(jié)掌控能力。表3展示了六種CNN在Fashion-MNIST數據集上所取得的測試集準確率,可以看出遷移學習對網絡性能提升的作用更加明顯,全部取得高于91%的測試集準確率,同時不同CNN之間的性能差異也體現出來。例如在不使用遷移學習的情況下,InceptionV3、DenseNet121和Xception有很高的測試準確率,原因可能在于GoogLeNet系列的CNN對于不同尺寸的感知能力更強。而DenseNet121、Xception和MobileNet產生了過擬合現象,在應用遷移學習方法之后,訓練集與測試集的準確率差距縮小,說明過擬合現象得到一定程度的緩解。
CIFAR-10數據集是一個用于識別普通物體的小型數據集,包含10個類別3通道的RGB彩色圖片:飛機、汽車、鳥類、貓、鹿、狗、蛙類、馬、船和卡車,相較于前面的數據集包含更加豐富的細節(jié),同時物體的角度和背景也不盡相同,場景更加接近于現實世界,導致識別難度大幅提升。表4展示了六種CNN在CIFAR-10數據集上所取得的測試集準確率。由于數據樣本的復雜程度大幅提升,六種網絡取得的準確率都遠遠小于前兩個數據集。無遷移學習條件下大部分CNN甚至難以在訓練集上取得高精度,只有DenseNet121和Xception訓練集的準確率相對較高,然而卻因為過擬合而無法在測試集上取得良好的效果。而在遷移學習條件下,所有訓練集的準確率都上升到95%以上,而測試集準確率的提升幅度則在10%~38%之間,原因可能在于CIFAR-10更接近于ImageNet數據集,預訓練模型能夠有效避免CNN陷于局部最優(yōu)解,緩解過擬合現象,最終以更快的收斂速度取得更高的識別準確率。
4 ?結 ?論
本文采用基于模型的遷移學習方法對CNN的性能進行優(yōu)化,驗證了遷移學習對CNN性能的正向影響包括提升準確率、加快收斂速度、緩解過擬合,以及避免局部最優(yōu)解等方面。本文選用六種CNN作為研究對象,通過在三個小型圖像數據集上進行模型訓練和對比,展現了這些方法在處理不同圖像識別任務時的性能差異性。本文采用的方法能夠在較短的時間內獲得高準確率,一定程度上簡化了深度學習模型的設計思路,具有更高的實用性和可操作性。然而,數據增強和正則化等常用的深度學習優(yōu)化策略尚未在文中采用,同時也未涉及CNN之外的深度學習模型,因此可以說神經網絡的圖像識別性能優(yōu)化還可以有更多的研究思路以及更大的提升空間。
參考文獻:
[1] 董瀟.卷積神經網絡的圖像分類優(yōu)化算法研究 [D].淮南:安徽理工大學,2020.
[2] 李炳臻,劉克,顧佼佼,等.卷積神經網絡研究綜述 [J].計算機時代,2021,346(4):8-12+17.
[3] 丁文博,許玥.預訓練模型的跨領域跨任務遷移學習 [J].科技資訊,2020,18(2):107-110.
[4] 張珂,馮曉晗,郭玉榮,等.圖像分類的深度卷積神經網絡模型綜述 [J].中國圖象圖形學報,2021,26(10):2305-2325.
[5] KRIZHEVSKY A,SUTSKEVER I,HINTON G E. ImageNet Classification with Deep Convolutional Neural Networks [J].Communications of the Acm,2017,60(6):84-90.
[6] SIMONYAN K,ZISSERMAN A. Very Deep Convolutional Networks for Large-Scale Image Recognition [J/OL]. arXiv:1409.1556.[2022-11-05]. https://ui.adsabs.harvard.edu/abs/2014arXiv1409.1556S/abstract.
[7] SZEGEDY C,LIU W,JIA Y Q,et al. Going Deeper with Convolutions [J/OL].arXiv:1409.4842 [cs.CV].[2022-11- 05].https://arxiv.org/abs/1409.4842.
[8] HE K M,ZHANG X R,REN S Q,et al. Deep Residual Learning for Image Recognition [C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).Las Vegas:IEEE,2016:770-778.
[9] HUANG G,LIU Z,MAATEN L V D. Densely Connected Convolutional Networks [C]//2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Honolulu:IEEE,2017:2261-2269.
[10] HOWARD A G,ZHU M L,CHEN B,et al. MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications [J/OL].arXiv:1704.04861 [cs.CV].[2022-11- 09].https://arxiv.org/abs/1704.04861.
[11] 趙衛(wèi)東,施實偉,周嬋. 基于ImageNet 預訓練卷積神經網絡的圖像風格遷移 [J]. 成都大學學報:自然科學版, 2021,40(4):367-373.
[12] 龍良曲.TensorFlow 深度學習 [M]. 北京:清華大學出版社,2020.
作者簡介:張文韜(1997—),男,漢族,河南平頂山人,碩士研究生在讀,研究方向:深度學習與故障診斷。