陳志鴻 ,胡海峰 ,馬水平 ,于遨波
(中山大學(xué)電子與信息工程學(xué)院,廣東 廣州 510006)
場景分類問題是計(jì)算機(jī)視覺領(lǐng)域一項(xiàng)重要且具有實(shí)用價(jià)值的任務(wù)。早期的場景分類問題主要采用一些淺層學(xué)習(xí)結(jié)構(gòu),諸如支持向量機(jī)[1-2]、單隱層神經(jīng)網(wǎng)絡(luò)[3]、核回歸[4]等機(jī)器學(xué)習(xí)方法。這些傳統(tǒng)的場景分類方法需要人工設(shè)計(jì)特征并且方法的魯棒性不強(qiáng),難以在復(fù)雜的分類問題上有效地表現(xiàn)出性能以及泛化能力。隨著深度學(xué)習(xí)的出現(xiàn)和大規(guī)模標(biāo)注數(shù)據(jù)集的發(fā)展,許多具有挑戰(zhàn)性的計(jì)算機(jī)視覺任務(wù)包括場景分類任務(wù)取得了很好的表現(xiàn)。
然而,在識別性能提升的同時(shí),深度卷積神經(jīng)網(wǎng)絡(luò)的參數(shù)也越來越多,算法效率也隨之降低。GoogLeNet模型[5]提到了尺度增強(qiáng)變換的方法,通過對圖像進(jìn)行隨機(jī)裁剪以降低訓(xùn)練難度,這種方法往往會(huì)裁剪出與分類標(biāo)簽無關(guān)的區(qū)域,從而使用了錯(cuò)誤的圖像數(shù)據(jù)進(jìn)行模型訓(xùn)練,使得訓(xùn)練出來的深度網(wǎng)絡(luò)不能有效地表征場景特征,導(dǎo)致裁剪后的圖像與其標(biāo)簽的相關(guān)性降低。本文提出了一種基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法,通過訓(xùn)練熱點(diǎn)圖生成層,得到識別性能符合設(shè)定閾值的網(wǎng)絡(luò),以生成代表圖像關(guān)鍵信息的熱點(diǎn)圖。研究結(jié)果表明,基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法識別率和效率更高、模型的泛化能力更好。
傳統(tǒng)的提高神經(jīng)網(wǎng)絡(luò)性能的方法為增加網(wǎng)絡(luò)的深度。然而,隨著深度的增加,參數(shù)和計(jì)算量都將大幅提升,并且容易產(chǎn)生過擬合的現(xiàn)象。為了解決這一問題,GoogLeNet[5]用Inception結(jié)構(gòu)將稀疏矩陣聚類為較為密集的子矩陣來提高計(jì)算性能。在圖像進(jìn)入網(wǎng)絡(luò)前,首先將圖像大小調(diào)整為256、288、320和352四種比例。在調(diào)整好的圖片中提取左、中、右三個(gè)正方形區(qū)域,對于每個(gè)正方形,裁剪其四個(gè)角以及正中心區(qū)域。這樣,一張圖片就被分為144塊區(qū)域,得到的區(qū)域包含圖片的絕大多數(shù)信息,在這些區(qū)域中隨機(jī)選擇圖片進(jìn)行后續(xù)的卷積操作。但在隨機(jī)選擇區(qū)域時(shí),所選區(qū)域與其標(biāo)簽的相關(guān)性是不確定的,以致可能使用錯(cuò)誤的圖像數(shù)據(jù)去訓(xùn)練模型,從而降低了模型的泛化能力。針對這一問題,本文提出了基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法,其具體算法流程圖如圖1所示。
圖1 基于自適應(yīng)區(qū)域監(jiān)督 機(jī)制的場景分類算法流程圖Fig.1 Flowchart of scene classification algorithm based on adaptively regional supervision
在熱點(diǎn)圖生成層中學(xué)習(xí)每張場景圖像的重要信息并且生成熱點(diǎn)圖像,在自適應(yīng)監(jiān)督裁剪層中依據(jù)熱點(diǎn)圖自適應(yīng)地進(jìn)行裁剪,最后將裁剪的圖像輸入分類層進(jìn)行訓(xùn)練,得到對于圖像的分類結(jié)果(算法如圖2所示)。相比于原始的卷積神經(jīng)網(wǎng)絡(luò)算法,本算法既減小了網(wǎng)絡(luò)參數(shù)的規(guī)模,又提高了網(wǎng)絡(luò)的識別性能,使得算法模型具有更好的泛化能力。
本層方法受到Zhou等[6]的啟發(fā)。Zhou等[6]使用了類似于Network in Network[7]和GoogLeNet[5]的網(wǎng)絡(luò)框架,提出了類別激活圖(class activation map,CAM)[6],文中使用類別激活圖進(jìn)行弱監(jiān)督的目標(biāo)檢測及分類,并且取得了與全監(jiān)督卷積神經(jīng)網(wǎng)絡(luò)相當(dāng)?shù)淖R別度。
類別激活圖是通過卷積神經(jīng)網(wǎng)絡(luò)中的全局平均池化(global average pooling,GAP)實(shí)現(xiàn),全局平均池化輸出最后一個(gè)卷積層每個(gè)單元特征映射的空間平均值,這些值的加權(quán)總和用于生成最終輸出。同樣,計(jì)算最后一個(gè)卷積層的特征圖的加權(quán)和可以獲得類別激活圖,利用這些特征來得到每一類別的得分。本文的熱點(diǎn)生成層基于此方法,通過設(shè)定的閾值,當(dāng)模型分類的準(zhǔn)確度達(dá)到此閾值時(shí),使用其進(jìn)行熱點(diǎn)圖生成。
給定一張場景圖像,讓fk(x,y)表示最后一個(gè)卷積層第k個(gè)單元上(x,y)位置上的值,對于單元k,使用全局平均池化可以得到結(jié)果
圖2 基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法示意圖Fig.2 Sketch map of scene classification algorithm based on adaptively regional supervision
:
Fk=∑x,yfk(x,y)
(1)
對于給定的一個(gè)類別c,最后輸出層(softmax層)的輸入為:
(2)
(3)
因此,得到每個(gè)類別的得分:
(4)
定義類別c的類別激活圖中每一個(gè)空間點(diǎn)的激活值為:
(5)
圖3是熱點(diǎn)生成層效果示例圖。熱點(diǎn)生成層通過學(xué)習(xí)MIT Indoor數(shù)據(jù)集[8],生成了該數(shù)據(jù)集中一張標(biāo)簽為“酒吧”場景圖的熱點(diǎn)圖,其中紅色至藍(lán)色由大至小表示相應(yīng)區(qū)域與標(biāo)簽的相關(guān)程度,圖中“吧臺”等被標(biāo)識為紅色,表示其與標(biāo)簽“酒吧”具有更高的相關(guān)性。
圖3 熱點(diǎn)圖示例圖Fig.3 Example of heat map
自適應(yīng)監(jiān)督裁剪層是為了對原始場景圖像進(jìn)行自適應(yīng)有監(jiān)督的裁剪以獲得下一層網(wǎng)絡(luò)的輸入。本層以熱點(diǎn)圖為依據(jù),自動(dòng)地調(diào)整場景圖裁剪區(qū)域,自動(dòng)地適應(yīng)不同場景圖的關(guān)鍵信息,從而提高裁剪圖像與分類標(biāo)簽的相關(guān)性,減少分類層網(wǎng)絡(luò)的參數(shù),降低網(wǎng)絡(luò)訓(xùn)練的難度。
假設(shè)原始圖像的大小為M×N,所需要裁剪的區(qū)域大小為m×n,每一次訓(xùn)練的過程中隨機(jī)產(chǎn)生t個(gè)裁剪中心點(diǎn):
(x,y)?{(x1,y1),(x2,y2),,(xt,yt)}
(6)
(7)
其中,1≤i≤t。 最后,選取得分最大的區(qū)域作為裁剪區(qū)域,其裁剪中心點(diǎn)值為:
(8)
設(shè)定自適應(yīng)監(jiān)督裁剪層產(chǎn)生的裁剪中心點(diǎn)為(x0,y0),按照裁剪尺寸進(jìn)行裁剪,得到一個(gè)大小為m×n的圖像矩陣作為分類層的輸入。
分類層使用的是He等[9]提出的殘差網(wǎng)絡(luò)(residual network,ResNet)結(jié)構(gòu), 為了解決深度網(wǎng)絡(luò)準(zhǔn)確度達(dá)到飽和之后下降的問題,ResNet采用殘差模塊(如圖4所示)作為基本組成單元, 原始卷積層外部加入越層連接(shortcut)支路構(gòu)成基本殘差模塊, 使原始的映射H(x)被表示為H(x)=F(x)+x。其中,F(x)被稱為殘差映射,x為輸入信號,從而卷積層對H(x)的學(xué)習(xí)轉(zhuǎn)化為對F(x)的學(xué)習(xí)。
圖4 殘差模塊示意圖Fig.4 Sketch map of residual block
使用殘差模塊構(gòu)成殘差網(wǎng)絡(luò)[9]作為分類層。假設(shè)分類的類別個(gè)數(shù)有I個(gè),則通過熱點(diǎn)生成層、監(jiān)督裁剪層得到圖像輸入分類層之后,分類層的輸出即softmax層的輸出為:
output=[s1,s2,,sI]T
(9)
最后,將output中值最大的元素對應(yīng)的分類,作為
對應(yīng)圖像的分類結(jié)果。
為了驗(yàn)證基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法的有效性以及可靠性,本文在15-Scene和MIT Indoor兩個(gè)數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)。15-Scene和MIT Indoor是兩個(gè)使用于場景分類的權(quán)威數(shù)據(jù)集,被廣泛應(yīng)用于場景分類方面的實(shí)驗(yàn)。15-Scene[9]數(shù)據(jù)集由15種場景類別圖組成,其中13種場景圖由Fei-Fei發(fā)布,另外2種場景在其后進(jìn)行補(bǔ)充;MIT Indoor由67個(gè)復(fù)雜室內(nèi)場景組成,是一個(gè)權(quán)威的室內(nèi)場景數(shù)據(jù)集。本文將所提的基于自適應(yīng)區(qū)域監(jiān)督的場景分類算法在15-Scene和MIT Indoor兩個(gè)經(jīng)典的場景分類數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)驗(yàn)證。
在15-Scene數(shù)據(jù)集中,共有15個(gè)場景類別,平均每種場景有300張圖片(共4 485張場景圖)。圖5是15-Scene數(shù)據(jù)集中五種不同場景的示例圖。根據(jù)文獻(xiàn)[10]的配置,對于每一類場景,隨機(jī)選取100張場景圖作為訓(xùn)練樣本,其余為測試樣本,進(jìn)行20次獨(dú)立實(shí)驗(yàn),取均值作為實(shí)驗(yàn)結(jié)果。
圖5 15-Scene數(shù)據(jù)集中不同類別的場景Fig.5 Examples of scenes in 15-Scene dataset
在參數(shù)設(shè)置方面,熱點(diǎn)生成層的閾值T設(shè)置為90%,監(jiān)督裁剪層生成裁剪中心點(diǎn)數(shù)t設(shè)置為10,實(shí)驗(yàn)過程中保持不變。實(shí)驗(yàn)中分類層使用了三種常用的網(wǎng)絡(luò),他們分別是ResNet50、ResNet152、Inception-ResNet。
為了驗(yàn)證本文所提出的算法的有效性(效率),分別使用ResNet50、ResNet152、Inception-ResNet網(wǎng)絡(luò)以及本文基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法在15-Scene[9]數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),統(tǒng)計(jì)不同方法單個(gè)Epoch的平均運(yùn)行時(shí)間。圖6為不同方法時(shí)單個(gè)Epoch消耗的平均時(shí)間。由圖可知,裁剪使得輸入網(wǎng)絡(luò)的圖像尺寸變小,網(wǎng)絡(luò)的參數(shù)規(guī)模變小,基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法的運(yùn)行效率均比原始網(wǎng)絡(luò)框架高。
圖6 15-Scene數(shù)據(jù)集訓(xùn)練 過程中單個(gè)Epoch的平均運(yùn)行時(shí)間Fig.6 The average runtime of a single Epoch during the training of 15-scene dataset
為了驗(yàn)證本文提出的算法的可靠性(識別率),分別使用隨機(jī)裁剪場景圖的ResNet50、ResNet152、Inception-ResNet算法以及本文算法在15-Scene數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)。表1是在15-Scene數(shù)據(jù)集上的的實(shí)驗(yàn)結(jié)果。從實(shí)驗(yàn)結(jié)果可以看出,不管是ResNet50、ResNet152、Inception-ResNet,基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法的Top1、Top3、Top5準(zhǔn)確率都有明顯的提升;相對于隨機(jī)裁剪圖像的算法,基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的ResNet50的Top5準(zhǔn)確率提升5.64%, ResNet152的Top5準(zhǔn)確率提升8.76%, Inception-ResNet的Top5準(zhǔn)確率提升1.04%。另外,相比于文獻(xiàn)[6]中的ImageNet預(yù)訓(xùn)練模型結(jié)合SVM分類器、Places預(yù)訓(xùn)練模型結(jié)合SVM分類器兩種算法以及文獻(xiàn)[11]中的LESMLIP算法,本文所提出的算法自適應(yīng)地關(guān)注到場景圖中重要的信息,并且使用這些信息進(jìn)行深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,使得網(wǎng)絡(luò)具有較高的準(zhǔn)確度,具有實(shí)際的參考價(jià)值。
在MIT Indoor數(shù)據(jù)集中,共有67個(gè)室內(nèi)場景類別,每個(gè)類最少有100張圖片(共15 620張場景圖)。圖7是MIT Indoor數(shù)據(jù)集中五種不同場景圖像的示例圖。根據(jù)文獻(xiàn)[8]的配置,對于每一類場景,訓(xùn)練樣本為80張,測試樣本為20張,進(jìn)行20次獨(dú)立實(shí)驗(yàn),取均值作為實(shí)驗(yàn)結(jié)果。
在參數(shù)設(shè)置方面,熱點(diǎn)生成層的閾值T設(shè)置為55%,裁剪中心點(diǎn)取樣數(shù)設(shè)置為10,實(shí)驗(yàn)過程中保持不變。為了更好地進(jìn)行比較對照,除了在ResNet50、ResNet152、Inception-ResNet進(jìn)行實(shí)驗(yàn)以外,還與文獻(xiàn)[8,12]在MIT Indoor的實(shí)驗(yàn)結(jié)果進(jìn)行比較。
表2是在MIT Indoor數(shù)據(jù)集上的的實(shí)驗(yàn)結(jié)果。從實(shí)驗(yàn)結(jié)果可以看出,除了個(gè)別指標(biāo)外,基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的ResNet50、ResNet152、Inception-ResNet的Top1、Top3、Top5準(zhǔn)確率都有提升;其中,相比隨機(jī)裁剪圖像的算法,基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的ResNet50的Top5準(zhǔn)確率提升1.68%,ResNet152的Top5準(zhǔn)確率提升1.05%,Inception-ResNet的Top5準(zhǔn)確率提升15.99%。基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的Inception-ResNet相對于隨機(jī)裁剪圖像的算法準(zhǔn)確率有了很明顯的提升。另外,相比于文獻(xiàn)[8]中的SPM算法以及文獻(xiàn)[12]中的MOP-CNN算法,本文所提出的算法準(zhǔn)確地關(guān)注到了與標(biāo)簽相關(guān)的場景信息,使得分類具有較高的準(zhǔn)確度,其中隨機(jī)裁剪的Inception-ResNet準(zhǔn)確率低于MOP-CNN[12];而,基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的Inception-ResNet關(guān)注到了場景圖中的重要信息,從而準(zhǔn)確度相比于MOP-CNN提升了13.51%。
表1 15-Scene數(shù)據(jù)集中Top1、Top3、Top5準(zhǔn)確率Table 1 Top1, Top3 and Top5 accuracy in 15-Scene %
圖7 MIT Indoor數(shù)據(jù)集中場景圖像的示例圖Fig.7 Examples of scenes in MIT Indoor dataset
通過在15-Scene和MIT Indoor兩個(gè)數(shù)據(jù)集的實(shí)驗(yàn),基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法能夠提高運(yùn)行效率以及識別準(zhǔn)確率,在15-Scene數(shù)據(jù)集中最高識別率達(dá)到99.40%,在MIT Indoor數(shù)據(jù)集的最高識別率達(dá)到78.19%。結(jié)果表明,基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法能夠減小網(wǎng)絡(luò)參數(shù)的規(guī)模,算法的運(yùn)行效率高,能夠裁剪出與標(biāo)簽相關(guān)較強(qiáng)的圖像,對復(fù)雜場景的適應(yīng)性和魯棒性好。
本文提出了基于自適應(yīng)區(qū)域監(jiān)督機(jī)制的場景分類算法。算法由三部分組成:熱點(diǎn)圖生成層、自適應(yīng)監(jiān)督裁剪層、分類層。熱點(diǎn)圖生成層通過學(xué)習(xí)圖像數(shù)據(jù)集以生成熱點(diǎn)圖,自適應(yīng)監(jiān)督裁剪層依據(jù)熱點(diǎn)圖自適應(yīng)地調(diào)整最佳的裁剪位置,最后分類層學(xué)習(xí)裁剪后的圖像,輸出每張圖像的分類。這種自適應(yīng)區(qū)域監(jiān)督機(jī)制,能夠提高裁剪圖像與分類標(biāo)簽的相關(guān)性以提高算法的識別率,并且能夠減小了網(wǎng)絡(luò)參數(shù)的規(guī)模以提升算法的運(yùn)行效率。在15-Scene和MIT Indoor兩個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)表明:相對于原始算法框架,本文算法的效率以及識別率更高,對復(fù)雜的場景圖像具有更好的適應(yīng)性。