周衍挺
(安徽理工大學(xué)數(shù)學(xué)與大數(shù)據(jù)學(xué)院,安徽 淮南 232001)
中國(guó)繪畫(huà)圖像的分類對(duì)繪畫(huà)作品的管理與使用有著重要意義。傳統(tǒng)圖像分類方法需要人工提取圖像特征,過(guò)程復(fù)雜且需要專業(yè)的知識(shí),使得圖像的特征信息無(wú)法充分提取。中國(guó)繪畫(huà)圖像記錄了人類傳統(tǒng)文化的發(fā)展,對(duì)中國(guó)繪畫(huà)圖像進(jìn)行分類研究有助于整理繪畫(huà)資源,更好的繼承中國(guó)傳統(tǒng)文化。中國(guó)繪畫(huà)以寫(xiě)意為主,圖像與實(shí)物相差較大,且圖像數(shù)量有限,不利于圖像分類。傳統(tǒng)的圖像分類方法大部分是基于淺層結(jié)構(gòu)的學(xué)習(xí)算法。Jiang等[1]通過(guò)提取紋理特征與邊緣大小直方圖來(lái)描述中國(guó)繪畫(huà)圖像,并采用支持向量機(jī)(Support Vector Machines,SVM)對(duì)其分類,取得較好的分類效果。王雪鋒等[2]提取出車輛的方向梯度直方圖 ( Histogram of Oriented Gradient,HOG) 特征,并輸入 SVM 分類器進(jìn)行分類,具備較高的分類準(zhǔn)確率與魯棒性。但是這些淺層學(xué)習(xí)算法需要人工提取復(fù)雜特征,存在泛化性能差、特征提取不充分、計(jì)算能力不足等問(wèn)題。
2012年Alex Krizhevsk等用AlexNet模型[3]奪得ImageNet視覺(jué)挑戰(zhàn)賽冠軍后,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)成為了圖像分類的主流模型[4]。卷積神經(jīng)網(wǎng)絡(luò)可以通過(guò)卷積層高效提取圖像特征信息,目前已經(jīng)被運(yùn)用到文本情感分析[5-6]、人臉識(shí)別[7-8]、目標(biāo)檢測(cè)[9-10]等領(lǐng)域。目前基于CNN的中國(guó)繪畫(huà)圖像分類研究還比較罕見(jiàn)。Sun等[11]提出提出一種基于混合稀疏卷積神經(jīng)網(wǎng)絡(luò)的方法來(lái)提取中國(guó)水墨畫(huà)的特征,并按照作者來(lái)分類。黃雪麗等[12]提出利用卷積神經(jīng)網(wǎng)絡(luò)對(duì)繪畫(huà)圖像進(jìn)行分類,并對(duì)繪畫(huà)圖像進(jìn)行數(shù)據(jù)擴(kuò)增,有效的提升了模型的圖像分類能力。
上述文獻(xiàn)中的卷積神經(jīng)網(wǎng)絡(luò)均取得了較高的圖像分類精度。然而上述文獻(xiàn)中模型沒(méi)有考慮圖像的多尺度特征信息與底層信息,導(dǎo)致圖像特征信息有所損失,且模型容易過(guò)擬合。因此,為了充分提取繪畫(huà)圖像特征信息,減輕模型過(guò)擬合,本文給出了一種改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò),其基本思想是構(gòu)建一個(gè)卷積神經(jīng)網(wǎng)絡(luò),并加入Inception模塊與殘差連接,使得模型可以充分提取圖像特征信息。此外,模型中加入了批標(biāo)準(zhǔn)化技術(shù)與重疊池化技術(shù),減輕了模型的過(guò)擬合,進(jìn)而提升模型的圖像分類能力。
卷積神經(jīng)網(wǎng)絡(luò)是一類深層人工神經(jīng)網(wǎng)絡(luò),可以通過(guò)各個(gè)層級(jí)提取出圖像的抽象特征,有著強(qiáng)大的圖像識(shí)別能力。卷積神經(jīng)網(wǎng)絡(luò)主要由卷積層、池化層以及全連接層構(gòu)成。卷積層采用權(quán)值共享與局部連接的方法來(lái)降低模型的復(fù)雜性,同時(shí)減少了模型參數(shù),減輕了模型的過(guò)擬合。卷積層主要利用卷積核提取圖像的抽象特征信息。卷積核的尺寸需要人工設(shè)置,常用的卷積核尺寸為3×3與5×5。卷積核尺寸不同,其特征提取效果也不相同。在卷積層中將前一層的圖像數(shù)據(jù)與卷積核進(jìn)行卷積運(yùn)算,再通過(guò)一個(gè)激活函數(shù)得到卷積層的輸出值。
池化層在提取圖像特征的同時(shí),可以降低圖像維度。目前有最大池化、平均池化、重疊池化等池化方法。最大池化是對(duì)區(qū)域內(nèi)像素取最大值,平均池化是計(jì)算出區(qū)域內(nèi)像素總和后再求出平均值,重疊池化方法的池化窗口大于步長(zhǎng),使得相鄰的池化窗口間有重疊區(qū)域。重疊池化的泛化能力更強(qiáng),且不易產(chǎn)生過(guò)擬合。卷積層與池化層提取出的圖像特征信息,經(jīng)過(guò)全連接層的信息整理以及降維,最后輸入分類器進(jìn)行分類。
深度學(xué)習(xí)的圖像數(shù)據(jù)通常是一批一批送到模型里訓(xùn)練。數(shù)據(jù)在訓(xùn)練過(guò)程中,每一層的數(shù)據(jù)分布都會(huì)有很大的變化,導(dǎo)致模型泛化能力減弱。批標(biāo)準(zhǔn)化(Batch Normalization,BN)[13]可以先計(jì)算每一批圖像數(shù)據(jù)的均值與方差,再進(jìn)行標(biāo)準(zhǔn)化處理,減少不同批次之間差別,從而加快收斂速度,并在一定程度上降低模型的過(guò)擬合。批標(biāo)準(zhǔn)化的公式為:
(1)
特征提取是中國(guó)繪畫(huà)圖像分類的關(guān)鍵步驟。在運(yùn)用傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)對(duì)圖像進(jìn)行分類的過(guò)程中,圖像信息隨著一層層卷積與池化處理,底層特征信息會(huì)有所損失,同時(shí)由于卷積核的單一,導(dǎo)致圖像特征信息提取不充分。為了有效利用圖像的底層細(xì)節(jié)信息,同時(shí)提取出圖像的多尺度特征信息,本文給出了一種改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)。圖1為改進(jìn)模型的網(wǎng)絡(luò)結(jié)構(gòu),模型包含4個(gè)卷積層,4個(gè)池化層,1個(gè)Inception模塊以及1個(gè)特征融合層,后面連接全連接層以及輸出層。Inception模塊可以并聯(lián)不同尺度卷積核,使得各個(gè)通道感受野不同,進(jìn)而提取出豐富的特征信息。圖2為Inception模塊結(jié)構(gòu),第一個(gè)通道對(duì)圖像數(shù)據(jù)進(jìn)行1×1的卷積處理。第二個(gè)通道先對(duì)圖像數(shù)據(jù)進(jìn)行1×1的卷積處理,再接3×3卷積。第三個(gè)通道先對(duì)圖像數(shù)據(jù)進(jìn)行1×1的卷積處理,再接5×5卷積。第四個(gè)通道先對(duì)圖像數(shù)據(jù)進(jìn)行3×3的平均池化處理后,再接1×1卷積。
圖1 改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
圖2 Inception模塊
此外,模型引入了殘差連接,將pool3層提取出的特征圖信息,向后傳播的同時(shí),輸入concat層并與conv4層的特征圖信息在特征通道維數(shù)上進(jìn)行合并,使得concat層同時(shí)具有pool3層提取出的底層細(xì)節(jié)信息以及conv4層提取出的全局特征信息,充分利用了圖像的底層信息,減少了圖像特征信息的丟失。另外,模型的池化方式為重疊池化,并在卷積運(yùn)算之后,都會(huì)經(jīng)過(guò)批標(biāo)準(zhǔn)化處理,進(jìn)而減輕模型過(guò)擬合。
表1 改進(jìn)模型參數(shù)
表1列出了改進(jìn)模型的結(jié)構(gòu)參數(shù),C、H、W 分別代表圖像的通道數(shù)、高度和寬度。如表所示,輸入圖像為227×227的3通道圖像,經(jīng)過(guò)前6層的卷積池化層交替處理后,輸出128個(gè)10×10的特征圖。再輸入Inception模塊,將Inception模塊的各個(gè)通道信息合并后,得到544個(gè)10×10的特征圖。conv4卷積核大小為1×1,可以對(duì)輸入圖像信息進(jìn)行降維處理,降低運(yùn)算成本,得到256個(gè)10×10的特征圖。然后將pool3的特征信息與conv4的特征信息融合,并進(jìn)行池化處理,得到384個(gè)5×5的特征圖。最后將融合后的特征信息通過(guò)softmax分類器輸出分類結(jié)果。
實(shí)驗(yàn)操作系統(tǒng)為Windows10,顯卡為GTX-1060,并且以Tensorflow為框架,使用Python3.6為開(kāi)發(fā)語(yǔ)言。實(shí)驗(yàn)圖像來(lái)自于千圖網(wǎng)等網(wǎng)站,分為花鳥(niǎo)、山水、人物三類。每類樣本各750幅,其中每類圖像的訓(xùn)練樣本700幅,測(cè)試樣本50副,圖3為中國(guó)繪畫(huà)圖像部分樣本。
圖3 中國(guó)繪畫(huà)部分樣本
為了驗(yàn)證改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)的圖像分類能力,本文將改進(jìn)模型、傳統(tǒng)CNN模型、Lenet模型[14]、HOG+SVM算法在中國(guó)繪畫(huà)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)。傳統(tǒng)CNN模型相比于改進(jìn)模型減少了Inception模塊與殘差連接,其余結(jié)構(gòu)與改進(jìn)模型相同。實(shí)驗(yàn)每個(gè)訓(xùn)練批次為64,初始學(xué)習(xí)率為0.001,衰減率為0.96,且在改進(jìn)模型與傳統(tǒng)CNN模型的全連接層后添加Dropout機(jī)制,Dropout值為0.5,并對(duì)全連接層的權(quán)重進(jìn)行L2正則化懲罰,正則化系數(shù)設(shè)置為0.01。Lenet模型是一種經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)模型,在手寫(xiě)數(shù)字圖像上有著很好的分類效果。HOG+SVM算法通過(guò)提取局部圖像的梯度直方圖以構(gòu)成特征,并采用SVM分類器進(jìn)行分類。每個(gè)模型均進(jìn)行5次實(shí)驗(yàn),測(cè)得分類精度后,取平均值。
表2 各模型的分類準(zhǔn)確率
從表2中可以看出本文改進(jìn)模型的分類精度優(yōu)于其他三類模型。改進(jìn)模型的分類精度相比于傳統(tǒng)CNN模型,精度提升了2.6%,說(shuō)明在模型中引入Inception模塊與殘差連接有助于提升模型的分類能力。改進(jìn)模型通過(guò)Inception模塊可以充分提取出圖像的多尺度信息,并通過(guò)殘差連接減少了底層信息的丟失,進(jìn)而提升了模型在中國(guó)繪畫(huà)圖像上的分類精度。此外,改進(jìn)模型的分類精度相比于經(jīng)典的Lenet模型,精度提升了12.15%,主要由于Inception模塊與殘差連接提升了模型的特征提取能力,同時(shí)改進(jìn)模型加入了批標(biāo)準(zhǔn)化與重疊池化技術(shù),減輕了模型的過(guò)擬合。另外,改進(jìn)模型的分類精度相比于HOG+SVM算法,精度提升了15.98%,說(shuō)明改進(jìn)模型相比于傳統(tǒng)的淺層學(xué)習(xí)算法,可以更好的提取中國(guó)繪畫(huà)圖像的抽象特征,進(jìn)而提升模型的分類能力。
在中國(guó)繪畫(huà)圖像分類的問(wèn)題上引入卷積神經(jīng)網(wǎng)絡(luò)模型,并針對(duì)傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)容易過(guò)擬合,特征提取不充分問(wèn)題,給出了一種改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)模型。該模型引入Inception模塊與殘差連接,使得模型可以充分利用圖像的多尺度特征信息與底層特征信息,并且采用批標(biāo)準(zhǔn)化、重疊池化、Dropout以及L2正則化來(lái)減輕模型的過(guò)擬合。實(shí)驗(yàn)結(jié)果表明,改進(jìn)模型通過(guò)引入Inception模塊與殘差連接,提升了模型的特征提取能力,同時(shí)防止過(guò)擬合,進(jìn)而取得更高的圖像識(shí)別精度。
佳木斯大學(xué)學(xué)報(bào)(自然科學(xué)版)2021年1期