彭 治,劉 楊,杜永萍,常燕青,韓紅桂
(1.北京工業(yè)大學(xué) 信息學(xué)部,北京 100124;2.江蘇省固體廢棄物處理環(huán)保裝備工程技術(shù)研究中心,江蘇 常州 213000)
隨著日常生活中產(chǎn)生的垃圾不斷增加,對(duì)垃圾進(jìn)行分類管理是實(shí)現(xiàn)垃圾資源回收利用,同時(shí)達(dá)到垃圾減量的重要途徑。傳統(tǒng)的垃圾分類依靠人工手動(dòng)進(jìn)行,需要耗費(fèi)大量的人力物力,分類效率低。圖像識(shí)別是實(shí)現(xiàn)智能化垃圾分類的重要方法,基于神經(jīng)網(wǎng)絡(luò)模型的圖像識(shí)別與分類技術(shù)具有準(zhǔn)確度高、泛化性能好等優(yōu)點(diǎn)。
近年來(lái)在圖像識(shí)別領(lǐng)域,深度學(xué)習(xí)網(wǎng)絡(luò)應(yīng)用較廣,并在數(shù)據(jù)充足時(shí)有穩(wěn)定的表現(xiàn)。目前,將圖像識(shí)別技術(shù)應(yīng)用于垃圾分類中也受到了學(xué)者廣泛的關(guān)注與研究[1]。對(duì)于規(guī)模較小的數(shù)據(jù)集,深度神經(jīng)網(wǎng)絡(luò)模型在訓(xùn)練過(guò)程中容易產(chǎn)生過(guò)擬合的現(xiàn)象,而通過(guò)數(shù)據(jù)增強(qiáng)的方法可增加訓(xùn)練樣本,有效緩解過(guò)擬合的問(wèn)題[2-3]。此外,提高模型的泛化能力是深度神經(jīng)網(wǎng)絡(luò)模型最困難的挑戰(zhàn)之一[3]。對(duì)于模型,不僅要求它對(duì)訓(xùn)練數(shù)據(jù)集有很好的擬合,同時(shí)也希望它可以在測(cè)試數(shù)據(jù)集上有很好的性能。數(shù)據(jù)增強(qiáng)可以實(shí)現(xiàn)數(shù)據(jù)更復(fù)雜的表征,讓模型更好地學(xué)習(xí)遷移數(shù)據(jù)集上的數(shù)據(jù)分布[4-5]。目前,在圖像分類模型中都普遍應(yīng)用了數(shù)據(jù)增強(qiáng)技術(shù),Krizhevsky等人提出的AlexNet[6]中,應(yīng)用數(shù)據(jù)增強(qiáng)增加ImageNet數(shù)據(jù)集樣本從而避免神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程中產(chǎn)生過(guò)擬合。G. Huang等人提出的DenseNet[7]中,對(duì)CIFAR數(shù)據(jù)集采用標(biāo)準(zhǔn)的數(shù)據(jù)增強(qiáng)方案(鏡像/移位)提高模型的泛化能力。
隨著傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模型的深度不斷增加,訓(xùn)練過(guò)程中會(huì)出現(xiàn)梯度消失、梯度爆炸、模型過(guò)擬合等問(wèn)題[8]。通過(guò)正則化的方法對(duì)大量數(shù)據(jù)進(jìn)行訓(xùn)練可以有效地解決過(guò)擬合問(wèn)題,在一定程度上緩解淺層網(wǎng)絡(luò)的梯度消失/梯度爆炸問(wèn)題,更快地訓(xùn)練穩(wěn)定的網(wǎng)絡(luò)[9-10]。如果網(wǎng)絡(luò)層數(shù)繼續(xù)簡(jiǎn)單增加,會(huì)出現(xiàn)網(wǎng)絡(luò)退化,上百層的傳統(tǒng)神經(jīng)網(wǎng)絡(luò)將難以訓(xùn)練。He等人[11]通過(guò)引入恒等映射,實(shí)現(xiàn)跳層連接,緩解了深度網(wǎng)絡(luò)的退化問(wèn)題,深度殘差網(wǎng)絡(luò)(deep residual networks,ResNet)逐漸成為了圖像分類的核心技術(shù)。Inception[12-13]使用3個(gè)不同大小的濾波器對(duì)輸入執(zhí)行卷積操作,所有子層的輸出最后會(huì)被級(jí)聯(lián),并傳送至下一個(gè)Inception模塊,實(shí)現(xiàn)了特征的復(fù)用,提高了特征張量寬度以及對(duì)特征的囊括性[13],也減緩了加深神經(jīng)網(wǎng)絡(luò)模型引起的梯度消失/梯度爆炸問(wèn)題。
ResNeXt[14]是ResNet和Inception的結(jié)合體,不同于Inception v4[13]的是,ResNeXt不需要人工設(shè)計(jì)復(fù)雜的Inception結(jié)構(gòu)細(xì)節(jié),而是每個(gè)分支都采用相同的拓?fù)浣Y(jié)構(gòu)。ResNeXt的本質(zhì)是分組卷積[15],通過(guò)變量基數(shù)來(lái)控制分組的數(shù)量。傳統(tǒng)的模型通過(guò)加深或加寬網(wǎng)絡(luò)來(lái)提高性能,但是隨著超參數(shù)的增加,網(wǎng)絡(luò)設(shè)計(jì)的難度和計(jì)算開(kāi)銷也會(huì)增加,而ResNeXt模型在不增加參數(shù)復(fù)雜度的前提下可以有效提高準(zhǔn)確率,同時(shí)減少了超參數(shù)的數(shù)量。Lin等人[16]提出一種新的基于ResNeXt弱監(jiān)督模型的染色體簇類型識(shí)別方法,識(shí)別準(zhǔn)確率、靈敏度以及特異性都達(dá)到了較高的效果。
遷移學(xué)習(xí)是運(yùn)用已有的知識(shí)對(duì)不同但相關(guān)領(lǐng)域問(wèn)題進(jìn)行求解的一種機(jī)器學(xué)習(xí)方法[17]。深度學(xué)習(xí)模型能夠從海量數(shù)據(jù)中學(xué)習(xí)高級(jí)特征,但數(shù)據(jù)依賴是一個(gè)嚴(yán)重問(wèn)題。與傳統(tǒng)的機(jī)器學(xué)習(xí)方法相比,深度學(xué)習(xí)模型需要大規(guī)模數(shù)據(jù)來(lái)學(xué)習(xí)數(shù)據(jù)間的潛在關(guān)聯(lián)[18]。在某些領(lǐng)域由于數(shù)據(jù)采集和標(biāo)注費(fèi)用高昂,構(gòu)建大規(guī)模的高質(zhì)量標(biāo)注數(shù)據(jù)集非常困難。遷移學(xué)習(xí)放寬了訓(xùn)練數(shù)據(jù)必須與測(cè)試數(shù)據(jù)獨(dú)立同分布的假設(shè),因此利用遷移學(xué)習(xí)可以有效緩解訓(xùn)練數(shù)據(jù)不足的問(wèn)題。例如,胡等人[19]提出了動(dòng)態(tài)采樣與遷移學(xué)習(xí)結(jié)合的疾病預(yù)測(cè)模型,在規(guī)模較大的多類別疾病數(shù)據(jù)集上訓(xùn)練預(yù)測(cè)模型,然后遷移到樣本不足的疾病預(yù)測(cè)模型中,從而緩解數(shù)據(jù)不足的問(wèn)題。遷移學(xué)習(xí)把訓(xùn)練好的模型(預(yù)訓(xùn)練模型)遷移到新的模型來(lái)進(jìn)行訓(xùn)練[20-21],將已經(jīng)學(xué)到的模型參數(shù)通過(guò)某種方式分享給新模型從而加快并優(yōu)化模型的學(xué)習(xí)效率,而不需要對(duì)目標(biāo)域內(nèi)的新模型從零開(kāi)始訓(xùn)練,顯著地降低了對(duì)目標(biāo)域內(nèi)訓(xùn)練數(shù)據(jù)需求[22]。
該文將基于深度學(xué)習(xí)的圖像識(shí)別技術(shù)應(yīng)用于垃圾智能分類任務(wù),采用ResNeXt模型提取有效特征,對(duì)于訓(xùn)練數(shù)據(jù)規(guī)模有限的問(wèn)題,在利用數(shù)據(jù)增強(qiáng)技術(shù)擴(kuò)大訓(xùn)練集規(guī)模的同時(shí),進(jìn)一步通過(guò)遷移學(xué)習(xí)的策略提升模型性能,實(shí)現(xiàn)垃圾圖像的智能分類。
該文提出了一種基于遷移學(xué)習(xí)技術(shù)的深度神經(jīng)網(wǎng)絡(luò)垃圾分類模型,ResNeXt網(wǎng)絡(luò)在圖像分類中具有高效性,采用該網(wǎng)絡(luò)進(jìn)行可回收垃圾圖像的識(shí)別分類,模型結(jié)構(gòu)如圖1所示。在大規(guī)模數(shù)據(jù)集ImageNet上進(jìn)行模型訓(xùn)練,并將其遷移到垃圾圖像數(shù)據(jù)集,實(shí)現(xiàn)可回收物的準(zhǔn)確識(shí)別分類。
為了進(jìn)一步提升模型的分類準(zhǔn)確率,對(duì)采集到的垃圾圖像采用如下的方式進(jìn)行數(shù)據(jù)增強(qiáng),包括比例縮放、水平/垂直翻轉(zhuǎn)、圖像隨機(jī)裁剪等不同的數(shù)據(jù)增強(qiáng)技術(shù),獲得豐富的訓(xùn)練樣本用于模型訓(xùn)練,提升模型的魯棒性和泛化能力。
(1)利用transforms.Resize()函數(shù)重新設(shè)置大小,統(tǒng)一輸入圖像大小;
(2)利用transforms.RandomCrop(size)函數(shù)對(duì)輸入的圖像進(jìn)行隨機(jī)裁剪,設(shè)置裁剪的大小(size)為300,將輸入的圖隨機(jī)裁剪為300*300的圖像;
(3)利用transforms.RandomVerticalFlip()和transforms.RandomHorizontalFlip()函數(shù)對(duì)隨機(jī)裁剪后的圖像分別依照默認(rèn)的概率進(jìn)行垂直翻轉(zhuǎn)和水平翻轉(zhuǎn);
(4)利用transforms.RandomRotation()函數(shù)對(duì)翻轉(zhuǎn)后的圖像進(jìn)行隨機(jī)旋轉(zhuǎn)一定角度;
(5)利用transforms.Normalize()和transforms.ToTensor()函數(shù)對(duì)旋轉(zhuǎn)變換后的圖像進(jìn)行歸一化,使模型訓(xùn)練時(shí),梯度對(duì)每張圖片的作用都是平均的。
經(jīng)過(guò)數(shù)據(jù)預(yù)處理實(shí)現(xiàn)數(shù)據(jù)增強(qiáng)后,將圖像輸入模型進(jìn)行訓(xùn)練,訓(xùn)練集更加豐富,使模型具有較好的泛化能力。
圖1 基于遷移學(xué)習(xí)技術(shù)的垃圾圖像分類模型
在分類模型中,采用殘差網(wǎng)絡(luò)ResNet和Inception的結(jié)合體,即ResNeXt,實(shí)現(xiàn)特征提取。在大規(guī)模圖像分類數(shù)據(jù)集ImageNet上進(jìn)行預(yù)訓(xùn)練得到ResNeXt的網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)。
ResNeXt利用聚合變換的思想,采用一個(gè)更通用的函數(shù)代替初等變換(wixi),它本身也可以是一個(gè)網(wǎng)絡(luò),聚合轉(zhuǎn)換可以表示為:
(1)
其中,Ti(x)可以是任意函數(shù),類似于一個(gè)簡(jiǎn)單的神經(jīng)元,Ti將x投影到一個(gè)(可選的低維)嵌入表示中,然后進(jìn)行轉(zhuǎn)換。
在公式(1)中,C是要聚合的轉(zhuǎn)換集的數(shù)量,稱為基數(shù)。雖然寬度的維度與簡(jiǎn)單變換(內(nèi)積)的數(shù)量有關(guān),但基數(shù)的維數(shù)控制著更復(fù)雜的變換的數(shù)量。實(shí)驗(yàn)表明,基數(shù)是一個(gè)基本的維度,比寬度和深度的維度更有效。
最后,公式(1)中的聚合轉(zhuǎn)換用作殘差函數(shù),得到最終的形式,如公式(2):
(2)
其中,y為輸出。
ResNeXt采用同構(gòu)多分支的結(jié)構(gòu),使模型有更少的超參數(shù);同時(shí)引入基數(shù),基數(shù)增加可提高模型分類效果,比傳統(tǒng)的加深或加寬網(wǎng)絡(luò)模型有更好的性能。在模型遷移過(guò)程中調(diào)參過(guò)程更簡(jiǎn)單并具有更強(qiáng)的魯棒性。
傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)分類模型提取圖像特征后,通常采用softmax分類層進(jìn)行分類,該文使用SVM代替softmax分類層。
支持向量機(jī)屬于線性分類器,它將一系列的輸入數(shù)據(jù)映射到類別上,通過(guò)尋找超平面實(shí)現(xiàn)對(duì)樣本的分類。支持向量機(jī)的預(yù)測(cè)輸出是f(x)=Wx+b。該文采用多類SVM損失函數(shù)作為目標(biāo)函數(shù):
(3)
(4)
其中,yi表示真實(shí)的類別,syi表示在真實(shí)類別上的評(píng)分,sj表示預(yù)測(cè)錯(cuò)誤的評(píng)分。
對(duì)于一個(gè)樣本,模型預(yù)測(cè)的結(jié)果是一個(gè)評(píng)分,通過(guò)優(yōu)化損失函數(shù),分類器函數(shù)擬合這些樣本,使大部分樣本輸出滿足f(x)>0。若圖像恰好落在分類超平面,其評(píng)分等于0,離超平面越遠(yuǎn),評(píng)分的絕對(duì)值也就越大,箭頭方向指向評(píng)分的正增長(zhǎng)方向,表示正確的分類結(jié)果。
針對(duì)垃圾圖像數(shù)據(jù)中存在的單一背景與復(fù)雜背景兩種不同場(chǎng)景,分別進(jìn)行了實(shí)驗(yàn)。在單一背景中,每張垃圾圖像只有一個(gè)目標(biāo)物體;在復(fù)雜背景中,每張垃圾圖像中有多個(gè)物體,包含復(fù)雜的背景干擾。該文同時(shí)針對(duì)廚余垃圾中是否混有雜質(zhì)(如:可回收物)的問(wèn)題,利用圖像分類技術(shù)進(jìn)行檢測(cè)。
模型訓(xùn)練與測(cè)試均是在Pytorch的深度學(xué)習(xí)框架下完成的。實(shí)驗(yàn)平臺(tái)為Ubuntu系統(tǒng)、Nvidia GTX1080 Ti GPU,12 GB顯存和CUDA 11.1。模型的訓(xùn)練與測(cè)試均通過(guò)GPU加速。
(1)單一背景數(shù)據(jù)。
在單一背景圖像數(shù)據(jù)的實(shí)驗(yàn)中所用到的垃圾圖像數(shù)據(jù)是在kaggle和華為云等平臺(tái)進(jìn)行采集,從中篩選出玻璃、金屬、塑料、紙類4類可回收垃圾圖像進(jìn)行識(shí)別。
(2)復(fù)雜背景數(shù)據(jù)。
在復(fù)雜背景實(shí)驗(yàn)中所用到的垃圾圖像數(shù)據(jù)是通過(guò)人工采集到的垃圾圖像,包括純廚余垃圾和非純廚余垃圾2類圖像數(shù)據(jù)。
采集到的4類單一背景的可回收垃圾圖像樣本共9 620張,2類復(fù)雜背景圖像樣本共4 681張,圖像數(shù)據(jù)分類統(tǒng)計(jì)如表1所示。
表1 單一背景和復(fù)雜背景圖像數(shù)據(jù)分類統(tǒng)計(jì)
采用準(zhǔn)確率(Accuracy)來(lái)對(duì)測(cè)試結(jié)果進(jìn)行評(píng)價(jià)。
Accuracy=(TP+TN)/(TP+FP+FN+TN)
(5)
其中,TP(true positives)為正確地劃分為正例的個(gè)數(shù),即實(shí)際為正例且被分類器劃分為正例的樣本數(shù);FP(false positives)為被錯(cuò)誤地劃分為正例的個(gè)數(shù),即實(shí)際為負(fù)例但被分類器劃分為正例的樣本數(shù);FN(false negatives)為被錯(cuò)誤地劃分為負(fù)例的個(gè)數(shù),即實(shí)際為正例但被分類器劃分為負(fù)例的樣本數(shù);TN(true negatives)為被正確地劃分為負(fù)例的個(gè)數(shù),即實(shí)際為負(fù)例且被分類器劃分為負(fù)例的樣本數(shù)。
將數(shù)據(jù)集按7∶3分割為訓(xùn)練集和測(cè)試集,并將測(cè)試集隨機(jī)均分為三組進(jìn)行測(cè)試,同時(shí)采用ResNet101模型(基礎(chǔ)的殘差網(wǎng)絡(luò)模型)進(jìn)行對(duì)比實(shí)驗(yàn)。在訓(xùn)練過(guò)程中,設(shè)置超參Epoch為100,訓(xùn)練數(shù)據(jù)集100次,在每次訓(xùn)練的圖像輸入階段,將所選圖像進(jìn)行數(shù)據(jù)增強(qiáng)處理,提升訓(xùn)練數(shù)據(jù)量的同時(shí)增強(qiáng)模型魯棒性。初始化學(xué)習(xí)率為0.001,每10次迭代進(jìn)行一次驗(yàn)證評(píng)價(jià)。
單一背景下的圖像數(shù)據(jù)在訓(xùn)練過(guò)程中損失和準(zhǔn)確率變化如圖2所示。損失值在前700次迭代下降較快。在2 000次迭代訓(xùn)練后,損失趨近于0,訓(xùn)練準(zhǔn)確率趨于穩(wěn)定。
復(fù)雜背景下的圖像數(shù)據(jù)在訓(xùn)練中的損失和準(zhǔn)確率變化如圖3所示,損失值在前1 000次迭代下降較快。在2 500次迭代訓(xùn)練后,損失趨近于0,訓(xùn)練準(zhǔn)確率趨于穩(wěn)定。
單一背景圖像數(shù)據(jù)測(cè)試集的實(shí)驗(yàn)結(jié)果如表2所示。
單一背景下,經(jīng)過(guò)實(shí)驗(yàn)結(jié)果驗(yàn)證,基于ResNeXt101模型方法的準(zhǔn)確率都穩(wěn)定在93%以上,在紙類回收物模型平均最高準(zhǔn)確率達(dá)到98.15%,而ResNet101模型的準(zhǔn)確率相對(duì)較低。這表明ResNeXt通過(guò)變量基數(shù)來(lái)控制分組的數(shù)量,在不增加參數(shù)復(fù)雜度的前提下可以有效提高準(zhǔn)確率。
(a)損失(Loss) (b)準(zhǔn)確率(Accuracy)圖2 單一背景圖像訓(xùn)練集損失值和準(zhǔn)確率
(a)損失(Loss) (b)準(zhǔn)確率(Accuracy)
表2 單一背景圖像測(cè)試集準(zhǔn)確率(Accuracy)
復(fù)雜背景圖像測(cè)試集測(cè)試的結(jié)果如表3所示。
表3 復(fù)雜背景圖像測(cè)試集準(zhǔn)確率(Accuracy)
復(fù)雜背景下,經(jīng)過(guò)實(shí)驗(yàn)結(jié)果驗(yàn)證,基于ResNeXt101模型方法的準(zhǔn)確率穩(wěn)定在86%以上,總分類準(zhǔn)確率為87.42%。模型能夠在復(fù)雜背景下有效地檢測(cè)廚余垃圾中是否包含雜質(zhì)。
基于ResNeXt101模型方法得出的混淆矩陣如圖4(a)、(b)所示,分別表示單一背景與復(fù)雜背景的不同場(chǎng)景分類結(jié)果,縱坐標(biāo)表示圖像的真實(shí)標(biāo)簽,橫坐標(biāo)表示模型的預(yù)測(cè)標(biāo)簽,矩陣對(duì)角線上的值代表模型分類正確的結(jié)果,其余數(shù)值分別代表每個(gè)類別的分類誤差。
(a)單一背景(flat) (b)復(fù)雜背景(complex)圖4 模型混淆矩陣
圖4(a)中可以發(fā)現(xiàn)紙類圖像數(shù)據(jù)分類準(zhǔn)確率最高,達(dá)到了98%,而塑料類的圖像數(shù)據(jù)分類誤差相對(duì)較大,這是由于塑料類的圖像數(shù)據(jù)種類較多且復(fù)雜,該類數(shù)據(jù)準(zhǔn)確率相對(duì)較低,這也將是下一階段需要重點(diǎn)解決的問(wèn)題。圖4(b)中模型對(duì)純廚余垃圾分類準(zhǔn)確率較高,在非純廚余垃圾分類錯(cuò)誤樣例中發(fā)現(xiàn)包含的雜質(zhì)復(fù)雜多樣,且部分雜質(zhì)體積較小,顏色與廚余垃圾相似,例如餐巾紙、塑料袋等,這也是圖像分類技術(shù)面臨的重點(diǎn)難點(diǎn)問(wèn)題。
對(duì)比分類結(jié)果可以發(fā)現(xiàn),在單一背景圖像數(shù)據(jù)下,模型的分類準(zhǔn)確率更高,同時(shí)損失值和準(zhǔn)確率的變化能更快收斂并且能穩(wěn)定地維持最優(yōu)結(jié)果。在復(fù)雜背景下,圖像分類模型對(duì)小目標(biāo)物體的特征提取能力較低,存在干擾特征,影響模型的學(xué)習(xí)效果,具有更大的挑戰(zhàn)性。
面向單一背景和復(fù)雜背景兩種不同場(chǎng)景下的垃圾圖像數(shù)據(jù),利用遷移學(xué)習(xí)的策略進(jìn)行模型訓(xùn)練與學(xué)習(xí),實(shí)現(xiàn)了在缺乏大規(guī)模標(biāo)注數(shù)據(jù)的可回收物圖像準(zhǔn)確分類和廚余垃圾雜質(zhì)檢測(cè),在單一背景下模型分類準(zhǔn)確率高達(dá)96.19%,驗(yàn)證了遷移模型的有效性。在復(fù)雜背景下,模型的分類準(zhǔn)確率可以達(dá)到87.42%,這表明模型對(duì)于復(fù)雜背景中的雜質(zhì)有較好的特征提取能力,以及對(duì)圖像的背景與前景有較好的區(qū)分能力。其中,模型對(duì)體積較小存在干擾特征的雜質(zhì)檢測(cè)性能相對(duì)較低,對(duì)于圖像分類模型具有挑戰(zhàn)性,也將是下一階段需要重點(diǎn)解決的問(wèn)題。同時(shí),該文通過(guò)數(shù)據(jù)增強(qiáng)的方法降低了圖像成像要求,進(jìn)一步提高了模型的魯棒性和泛化能力。