關(guān)鍵詞:農(nóng)村;生活垃圾;智能分類;模型
中圖分類號:R124.3 文獻(xiàn)標(biāo)識碼:A
垃圾分類是指按照一定規(guī)定或標(biāo)準(zhǔn)將垃圾分類投放、收集、運(yùn)輸、處理,從而將垃圾轉(zhuǎn)變成公共資源的一系列活動的總稱。實(shí)行垃圾分類可以減少環(huán)境污染、提高資源有效利用率,對改善環(huán)境、節(jié)省土地資源以及提升社會治理水平具有重要意義。日常生活中人們產(chǎn)生的生活垃圾各種各樣,品種品類眾多,讓居民快速并正確地將生活垃圾分類成廚余、可回收、有害、其他垃圾等難度較大,特別是農(nóng)村地區(qū),居民普遍文化程度不高、認(rèn)知水平較低,對垃圾實(shí)施分類的難度更大。因此,目前亟需尋求一種能幫助農(nóng)村居民快速、正確地進(jìn)行垃圾分類的方法。本文應(yīng)用圖像分類的智能算法對農(nóng)村生活垃圾進(jìn)行分類,以幫助農(nóng)村居民快速、正確地對生活垃圾進(jìn)行分類。
據(jù)調(diào)查,我國近些年才開始出現(xiàn)計(jì)算機(jī)技術(shù)在垃圾分類上的應(yīng)用,如崔瑩[1]建立了山東省濰坊市垃圾分類管理系統(tǒng),用于管理人員對山東省濰坊市垃圾分類日常業(yè)務(wù)進(jìn)行處理。早期計(jì)算機(jī)在垃圾分類上的應(yīng)用均為數(shù)據(jù)管理系統(tǒng),主要是對垃圾分類信息進(jìn)行管理,直到最近幾年才出現(xiàn)垃圾智能分類模型,用于對各類生活垃圾的智能識別。如王林芝等[2]建立的基于深度學(xué)習(xí)的垃圾分類模型就是用卷積神經(jīng)網(wǎng)絡(luò)算法識別垃圾種類;瞿定垚[3]對比了卷積神經(jīng)網(wǎng)絡(luò)和視覺Transformer圖像分類算法的優(yōu)劣勢,建立了基于深度學(xué)習(xí)的家居垃圾分類模型。但上述這些模型均未面向農(nóng)村居民應(yīng)用。
1相關(guān)基礎(chǔ)理論
1.1卷積神經(jīng)網(wǎng)絡(luò)
卷積神經(jīng)網(wǎng)絡(luò)是一種運(yùn)用卷積數(shù)學(xué)運(yùn)算的特殊網(wǎng)絡(luò)。以二維卷積運(yùn)算為例(圖1),圖1中輸入3×3的二維數(shù)組,卷積核為2×2的數(shù)組,輸出經(jīng)過卷積運(yùn)算后的2×2數(shù)組。在圖1中,輸出結(jié)果第一個元素“19”(陰影部分)是由輸入的陰影部分和核元素的陰影部分計(jì)算得來,計(jì)算過程為:0×0+1×1+3×2+4×3=19,應(yīng)用此方法可以計(jì)算輸出結(jié)果中的另外3個元素25、37、43,計(jì)算過程分別為1×0+2×1+4×2+5×3=25;3×0+4×1+6×2+7×3=37;4×0+5×1+7×2+8×3=43。
卷積神經(jīng)網(wǎng)絡(luò)通常由多個卷積層、池化層、全連接層等組成,其中卷積層和池化層用于數(shù)據(jù)特征信息的提取,全連接層用于數(shù)據(jù)的分類或回歸。即卷積層通過卷積操作提取數(shù)據(jù)信息特征,池化層通過減少圖像采樣點(diǎn)數(shù)來縮小數(shù)據(jù)特征圖的尺寸,全連接層通過將數(shù)據(jù)信息特征映射到一個高維特征空間,再通過Softmax函數(shù)進(jìn)行數(shù)據(jù)的分類或回歸。
1.2MobileNetV3網(wǎng)絡(luò)
MobileNet模型是2017年Google針對手機(jī)等嵌入式設(shè)備提出的一種輕量化深度神經(jīng)網(wǎng)絡(luò)。目前,MobileNet系列中主要包括MobileNetV1、MobileNetV2、MobileNetV3共3個版本,其中MobileNetV1使用深度可分離卷積來構(gòu)建輕量級網(wǎng)絡(luò),MobileNetV2提出的InvertedResidual和LinearBottleneck單元提升了整體神經(jīng)網(wǎng)絡(luò)的準(zhǔn)確率和速度,MobileNetV3結(jié)合AutoML技術(shù)和人工微調(diào)技術(shù)實(shí)現(xiàn)更輕量級的網(wǎng)絡(luò)構(gòu)建[4]。
MobileNetV3網(wǎng)絡(luò)集成了MobileNetV1中深度可分離卷積和MobileNetV2中帶線性瓶頸的逆殘差結(jié)構(gòu),同時(shí)增加了輕量級注意力模型,并將激活函數(shù)由Swish轉(zhuǎn)換為H-Swish。MobileNetV3網(wǎng)絡(luò)結(jié)構(gòu)可分為3個部分:起始部分為一個3×3的卷積層,用于數(shù)據(jù)信息特征的提??;中間部分有多個卷積層,根據(jù)卷積層的層數(shù)和參數(shù)的不同,可分為Large和Small2個版本;最后部分通過2個1×1的卷積層代替全連接輸出類別[5]。MobileNetV3-Large的網(wǎng)絡(luò)結(jié)構(gòu)見表1。
1.3優(yōu)化算法和損失函數(shù)
構(gòu)建農(nóng)村生活垃圾智能分類模型使用的優(yōu)化算法是自適應(yīng)矩估計(jì)算法(Adaptive Moment Estimation),損失函數(shù)應(yīng)用的是交叉熵?fù)p失函數(shù)。
自適應(yīng)矩估計(jì)算法能夠根據(jù)模型參數(shù)的梯度特性自適應(yīng)地調(diào)整學(xué)習(xí)率,即對于梯度較大的參數(shù),學(xué)習(xí)率會相應(yīng)減小,避免參數(shù)更新過快導(dǎo)致模型震蕩;對于模型中梯度較小的參數(shù),學(xué)習(xí)率會相應(yīng)增大,以加速模型收斂。自適應(yīng)矩估計(jì)算法使用二階矩估計(jì)來調(diào)整學(xué)習(xí)率,能夠更好地適應(yīng)模型參數(shù)的變化,同時(shí)該算法可以減少模型參數(shù)因梯度下降而產(chǎn)生的模型震蕩,提高模型的抗噪聲能力,使模型更加穩(wěn)定[6]。
交叉熵用來評估模型訓(xùn)練得到的概率分布與真實(shí)分布的差異情況,它刻畫的是實(shí)際輸出(概率)與期望輸出(概率)的距離,即交叉熵的值越小,模型實(shí)際輸出與期望輸出這2個概率分布就越接近。使用交叉熵作為損失函數(shù)可以有效地解決各類模型的梯度消失問題。
2農(nóng)村生活垃圾智能分類模型構(gòu)建
應(yīng)用2種方法構(gòu)建農(nóng)村生活垃圾智能分類模型,分別為基于一般卷積網(wǎng)絡(luò)的農(nóng)村生活垃圾分類模型(簡稱一般卷積網(wǎng)絡(luò)模型)和基于MobileNetV3網(wǎng)絡(luò)的農(nóng)村生活垃圾分類模型(簡稱MobileNetV3網(wǎng)絡(luò)模型)。
2.1基于一般卷積網(wǎng)絡(luò)的農(nóng)村生活垃圾分類模型
基于一般卷積網(wǎng)絡(luò)的農(nóng)村生活垃圾分類模型由2層卷積層(Conv2D)和2層池化層(MaxPooling2D)構(gòu)成,之后將數(shù)據(jù)特征拉直(Flatten)送入到2個全連接層(Dense)進(jìn)行分類。基于一般卷積網(wǎng)絡(luò)的農(nóng)村生活垃圾分類模型結(jié)構(gòu)見圖2。
2.2基于MobileNetV3網(wǎng)絡(luò)的農(nóng)村生活垃圾分類模型
基于MobileNetV3網(wǎng)絡(luò)的農(nóng)村生活垃圾分類模型是將輸入圖像歸一化(Rescaling)后直接通過MobileNetV3-Large網(wǎng)絡(luò),之后通過1個全局平均池化層(GlobalAveragePooling2D),最后送入到1個全連接層(Dense)進(jìn)行分類。基于MobileNetV3網(wǎng)絡(luò)的農(nóng)村生活垃圾分類模型結(jié)構(gòu)見圖3。
3農(nóng)村生活垃圾智能分類模型訓(xùn)練與結(jié)果
3.1訓(xùn)練數(shù)據(jù)
集構(gòu)建農(nóng)村生活垃圾智能分類模型需要識別可回收垃圾、廚余垃圾、有害垃圾、其他垃圾4種垃圾分類,故模型的數(shù)據(jù)集需包含4類生活垃圾圖片。模型數(shù)據(jù)集中的圖片部分來自互聯(lián)網(wǎng),部分為現(xiàn)場照片,共收集到49223張圖片,數(shù)據(jù)量總大小約6GB。經(jīng)過數(shù)據(jù)清理后,將模型數(shù)據(jù)集的圖片全部保存為JPEG格式。4種農(nóng)村生活垃圾數(shù)據(jù)集數(shù)量對比見圖4。
3.2模型訓(xùn)練和結(jié)果
構(gòu)建基于一般卷積網(wǎng)絡(luò)和基于MobileNetV3網(wǎng)絡(luò)的2個農(nóng)村生活垃圾智能分類模型應(yīng)用的是Python語言,并在PyCharm環(huán)境下進(jìn)行訓(xùn)練。訓(xùn)練過程中將模型數(shù)據(jù)集按照8∶2的比例分為訓(xùn)練集、驗(yàn)證集,模型經(jīng)過30次迭代,每次迭代均按照比例重新分配訓(xùn)練集數(shù)據(jù)、驗(yàn)證集數(shù)據(jù),最終使模型網(wǎng)絡(luò)誤差逐步收斂。
基于一般卷積網(wǎng)絡(luò)模型的準(zhǔn)確性曲線和損失曲線如圖5所示。該模型經(jīng)30次迭代訓(xùn)練后,訓(xùn)練集準(zhǔn)確度為0.9976,驗(yàn)證集準(zhǔn)確度為0.6823;訓(xùn)練集損失為0.0051,驗(yàn)證集損失為4.0523。該模型最終準(zhǔn)確度為68.23%。
基于MobileNetV3網(wǎng)絡(luò)模型的準(zhǔn)確性曲線和損失曲線如圖6所示。該模型經(jīng)30次迭代訓(xùn)練后,訓(xùn)練集準(zhǔn)確度為0.9842,驗(yàn)證集準(zhǔn)確度為0.8384;訓(xùn)練集損失為0.1008,驗(yàn)證集損失為1.6312。該模型最終準(zhǔn)確度為83.84%。
4結(jié)論與討論
從基于一般卷積網(wǎng)絡(luò)和基于MobileNetV3網(wǎng)絡(luò)的2個農(nóng)村生活垃圾智能分類模型的訓(xùn)練結(jié)果看,MobileNetV3網(wǎng)絡(luò)模型的驗(yàn)證準(zhǔn)確度(83.84%)明顯高于一般卷積網(wǎng)絡(luò)模型的驗(yàn)證準(zhǔn)確度(68.23%),并且MobileNetV3網(wǎng)絡(luò)模型的驗(yàn)證損失也明顯低于一般卷積網(wǎng)絡(luò)模型的驗(yàn)證損失。在訓(xùn)練準(zhǔn)確度和訓(xùn)練損失方面則相反,一般卷積網(wǎng)絡(luò)模型的性能明顯好于MobileNetV3網(wǎng)絡(luò)模型的性能,這可能是由于一般卷積網(wǎng)絡(luò)模型在訓(xùn)練過程中進(jìn)入了局部最小值,從而產(chǎn)生了不良泛化,最后導(dǎo)致訓(xùn)練過程的準(zhǔn)確度和訓(xùn)練損失性能較好,而在驗(yàn)證過程中該模型的性能較差。在識別速度方面,MobileNetV3網(wǎng)絡(luò)模型在驗(yàn)證階段平均識別一張圖片的時(shí)間為125.69ms,而一般卷積網(wǎng)絡(luò)模型在驗(yàn)證階段平均識別一張圖片的時(shí)間為301.9ms。由此可見,MobileNetV3網(wǎng)絡(luò)模型的識別速度明顯高于一般卷積網(wǎng)絡(luò)模型。
本文對農(nóng)村生活垃圾智能分類模型做了初步探索與實(shí)踐,以幫助農(nóng)村居民快速、正確地對生活垃圾進(jìn)行分類。結(jié)果表明,基于MobileNetV3網(wǎng)絡(luò)的農(nóng)村生活垃圾智能分類模型性能較好,具有較高的應(yīng)用價(jià)值。但不足之處是,在廣大農(nóng)村地區(qū),少量農(nóng)業(yè)生產(chǎn)垃圾和建筑垃圾也會被統(tǒng)稱為生活垃圾,本文的數(shù)據(jù)集雖已包含農(nóng)業(yè)生產(chǎn)垃圾和建筑垃圾,但圖像數(shù)量較少,導(dǎo)致模型識別精度不高。因此,在今后模型數(shù)據(jù)集的采集中應(yīng)增加農(nóng)業(yè)生產(chǎn)垃圾和建筑垃圾的圖像數(shù)量,提高模型對這些垃圾的識別準(zhǔn)確度,以方便農(nóng)村居民更好地進(jìn)行垃圾分類。