郭永存,張 勇,2,李 飛,楊 鵬,
(1.安徽理工大學(xué) 深部煤礦采動響應(yīng)與災(zāi)害防控國家重點(diǎn)實(shí)驗(yàn)室,安徽 淮南 232001;2.安徽理工大學(xué) 電氣與信息工程學(xué)院,安徽 淮南 232001; 3.安徽理工大學(xué) 機(jī)械工程學(xué)院,安徽 淮南 232001)
煤炭是我國的主要能源,在能源結(jié)構(gòu)中占據(jù)較大的比重。原煤中往往含有大量的矸石[1],這不僅降低了煤的使用效率,而且矸石的堆放還會對環(huán)境造成一定的污染,因此,有必要對煤和矸石進(jìn)行分離。傳統(tǒng)的煤、矸石分離技術(shù)有篩網(wǎng)跳汰法、重介質(zhì)法和浮選法等[2],但這些方法帶來的粉塵污染、水污染和土地污染等問題,給環(huán)境和人類健康帶來極大危害。
近年來,國內(nèi)外學(xué)者對煤矸分選技術(shù)進(jìn)行了大量的研究,潘越等[3]利用X射線透射法探測煤和矸石密度,根據(jù)透射信號圖像的不同區(qū)分煤和矸石,但這種方法存在電離輻射,有可能對工作人員身體造成較大傷害,因此,在應(yīng)用上受到了一定的限制;WANG等[4]結(jié)合激光三角測量法和動態(tài)稱重法,通過煤和矸石的密度差來區(qū)分煤和矸石,但該方法誤差較大;余樂等[5]提出一種基于部分灰度壓縮擴(kuò)階共生矩陣的圖像識別方法,對煤和矸石0~255級灰度圖像進(jìn)行特征提取,并依據(jù)特征參數(shù)進(jìn)行分類,該方法穩(wěn)定性有待提高;李曼等[6]采用濾波的方式提取煤和矸石表面灰度和紋理參數(shù),通過最小二乘支持向量機(jī)識別判斷煤和矸石,該方法識別準(zhǔn)確率有待提高;雷世威等[7]通過對YOLOv3模型結(jié)構(gòu)和損失函數(shù)的改進(jìn),提高了網(wǎng)絡(luò)對小目標(biāo)煤和矸石的檢測識別能力;PU等[8]利用卷積神經(jīng)網(wǎng)絡(luò)和遷移學(xué)習(xí)技術(shù)訓(xùn)練、識別煤和矸石圖像,并采用驗(yàn)證集數(shù)據(jù)去驗(yàn)證訓(xùn)練模型的效果,其訓(xùn)練準(zhǔn)確率達(dá)到100%,但驗(yàn)證集數(shù)據(jù)準(zhǔn)確率只有82.5%,且模型出現(xiàn)過擬合,模型性能有待提高;徐志強(qiáng)等[9]利用現(xiàn)有的卷積神經(jīng)網(wǎng)絡(luò)模型對采集的煤和矸石圖像進(jìn)行訓(xùn)練和識別判斷,并采用模型剪枝技術(shù)對現(xiàn)有的卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行優(yōu)化,進(jìn)一步提高了煤矸識別的準(zhǔn)確率。
筆者通過搭建實(shí)驗(yàn)裝置采集、構(gòu)建煤和矸石數(shù)據(jù)集,并利用算法對數(shù)據(jù)集進(jìn)行增強(qiáng)。在VGGNet16網(wǎng)絡(luò)的基礎(chǔ)上,引入空洞卷積和批歸一化模塊對模型進(jìn)行改進(jìn),增強(qiáng)模型特征提取能力,加快模型訓(xùn)練收斂速度,提高煤矸識別準(zhǔn)確率;并與其他經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行浮點(diǎn)運(yùn)算次數(shù)和F1分?jǐn)?shù)的對比,進(jìn)一步說明智能煤矸識別算法的優(yōu)勢。
卷積神經(jīng)網(wǎng)絡(luò)是目前深度學(xué)習(xí)具有代表性的網(wǎng)絡(luò)之一,在圖像分析和處理領(lǐng)域應(yīng)用廣泛。其中卷積操作用于提取圖像特征,生成特征圖;池化操作用于降低特征圖維度,減少模型參數(shù)量;激活函數(shù)使模型具備非線性映射的能力;全連接操作用于預(yù)測,輸出結(jié)果。煤矸識別卷積神經(jīng)網(wǎng)絡(luò)如圖1所示。
圖1 煤矸識別卷積神經(jīng)網(wǎng)絡(luò)模型
卷積神經(jīng)網(wǎng)絡(luò)的特征提取能力主要體現(xiàn)在卷積運(yùn)算,通過卷積操作,網(wǎng)絡(luò)輸出第m層特征圖的感受野l(fā)m,其計(jì)算公式如下:
(1)
式中:lm-1為第m-1層特征圖的感受野;fk為卷積核;si為第i層步長;*表示卷積操作。
卷積操作如圖2所示。將感受野尺寸為5×5的特征圖,通過與3×3的卷積核進(jìn)行卷積運(yùn)算,得到感受野為3×3的特征圖。
圖2 卷積操作示意圖
空洞卷積[10-11]通過在卷積層引入空洞系數(shù)Dr,控制卷積核感受野的大小,使網(wǎng)絡(luò)在不增加計(jì)算量、不損失特征圖分辨率的同時(shí)擴(kuò)大卷積核的感受野,獲得更豐富的圖像特征,加強(qiáng)網(wǎng)絡(luò)對多尺度目標(biāo)的檢測效果。空洞卷積核尺寸fn計(jì)算公式如下:
fn=fk+(fk-1)*(Dr-1)
(2)
空洞卷積核尺寸在原卷積核的基礎(chǔ)上增加了(fk-1)*(Dr-1),卷積核的感受野也相應(yīng)增加,通過空洞卷積操作,網(wǎng)絡(luò)第m層特征圖的感受野l(fā)′m計(jì)算公式如下:
(3)
式中l(wèi)′m-1為空洞卷積第m-1層特征圖的感受野。
空洞卷積操作如圖3所示。在空洞系數(shù)Dr=1時(shí),卷積核的尺寸由原來的3×3增加到5×5,通過空洞卷積操作,感受野尺寸為5×5的特征圖輸出感受野大小為1×1。
圖3 空洞卷積操作示意圖
在進(jìn)行機(jī)器學(xué)習(xí)時(shí),為了加速訓(xùn)練,常常會對數(shù)據(jù)進(jìn)行預(yù)處理。傳統(tǒng)的預(yù)處理方法有零均值和白化,但隨著網(wǎng)絡(luò)層數(shù)的加深,參數(shù)對分布的影響不定,導(dǎo)致網(wǎng)絡(luò)層內(nèi)和層間的輸入分布均發(fā)生改變,迫使網(wǎng)絡(luò)需要適應(yīng)新的分布,傳統(tǒng)預(yù)處理方法不再適用于深度神經(jīng)網(wǎng)絡(luò)。
批歸一化模塊[12-14]通過網(wǎng)絡(luò)訓(xùn)練時(shí)的一個小批量數(shù)據(jù),計(jì)算輸出某個神經(jīng)元的xi的均值和方差,并引入2個參數(shù)γ、β,對網(wǎng)絡(luò)進(jìn)行變換重構(gòu),學(xué)習(xí)恢復(fù)原始網(wǎng)絡(luò)所需的特征分布,減少網(wǎng)絡(luò)隱藏層數(shù)據(jù)分布改變對網(wǎng)絡(luò)訓(xùn)練的影響,加快網(wǎng)絡(luò)的訓(xùn)練收斂速度,提升網(wǎng)絡(luò)穩(wěn)定性。批歸一化算法操作如圖4所示。
圖4 批歸一化算法操作示意圖
批歸一化算法的操作步驟如下:
(4)
(5)
2)對當(dāng)前批次輸入數(shù)據(jù)進(jìn)行批歸一化操作:
(6)
3)通過可學(xué)習(xí)的參數(shù)γ和β對批歸一化后的數(shù)據(jù)進(jìn)行重構(gòu)變換,輸出最終的數(shù)據(jù):
(7)
式中:xi為當(dāng)前層的神經(jīng)元,下標(biāo)i=1,2,…,c;ε為一個接近于0的正值常量,用于表示變換重構(gòu)中數(shù)值的穩(wěn)定性。
VGGNet[15]是牛津大學(xué)計(jì)算機(jī)視覺組研發(fā)的深度卷積神經(jīng)網(wǎng)絡(luò),其通過將5×5的大型卷積核拆分成2個3×3的小型卷積核,并通過多次堆疊的方式,在不增加參數(shù)量的情況下,加深網(wǎng)絡(luò)模型深度,提高模型特征提取能力。筆者提出的智能煤矸識別算法DC&BN(Dilated Convolution & Batch Normalization)是在經(jīng)典VGGNet16網(wǎng)絡(luò)的基礎(chǔ)上嵌入空洞卷積和批歸一化模塊的方法,使模型具備在少量增加運(yùn)行浮點(diǎn)次數(shù)的情況下,增大模型感受野,加強(qiáng)特征提取能力,加快模型訓(xùn)練收斂速度,提升分類準(zhǔn)確率等。經(jīng)典VGGNet16網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示。
圖5 VGGNet16網(wǎng)絡(luò)結(jié)構(gòu)
VGGNet16網(wǎng)絡(luò)中主要存在CRM、L-CRM等2種基本結(jié)構(gòu),如圖6所示。
圖6 VGGNet16基本結(jié)構(gòu)
CRM結(jié)構(gòu)包括2個3×3卷積模塊,卷積后均采用ReLU函數(shù)激活,并進(jìn)行最大值池化操作;L-CRM結(jié)構(gòu)則是在CRM結(jié)構(gòu)的3×3卷積后增加一個1×1卷積,用于線性變換。智能煤矸識別算法DC&BN網(wǎng)絡(luò)結(jié)構(gòu)如圖7所示。
圖7 智能煤矸識別算法網(wǎng)絡(luò)結(jié)構(gòu)
智能煤矸識別算法基本結(jié)構(gòu)包括DBRM和L-DBRM,如圖8所示。
圖8 智能煤矸識別算法基本結(jié)構(gòu)
DBRM結(jié)構(gòu)將CRM結(jié)構(gòu)中的3×3卷積替換成卷積核尺寸為3×3,空洞系數(shù)Dr=1的空洞卷積,用于擴(kuò)大卷積核的感受野,增強(qiáng)卷積的特征提取能力,實(shí)現(xiàn)對更大范圍目標(biāo)特征的采樣。通過在空洞卷積和激活函數(shù)之間增加批歸一化模塊,加快模型訓(xùn)練收斂速度,提高模型穩(wěn)定性和訓(xùn)練準(zhǔn)確率。
在實(shí)驗(yàn)室環(huán)境下搭建實(shí)驗(yàn)裝置,采集煤和矸石圖像,制作數(shù)據(jù)集。實(shí)驗(yàn)裝置如圖9所示。
圖9 煤和矸石數(shù)據(jù)采集實(shí)驗(yàn)裝置
利用搭建的實(shí)驗(yàn)裝置,采集煤和矸石圖片各500張,煤和矸石樣張分別如圖10(a)、圖10(b)所示。數(shù)據(jù)集按照7∶1∶2的比例劃分為訓(xùn)練集、驗(yàn)證集和測試集。
(a) 煤 (b) 矸石
實(shí)驗(yàn)基于Windows10 64位操作系統(tǒng),電腦配置為Inter Core i5-9300H, NVIDIA GTX1660Ti 6G顯卡;在深度學(xué)習(xí)框架Tensorflow2.0中進(jìn)行模型的訓(xùn)練、驗(yàn)證和預(yù)測。模型輸入圖像尺寸設(shè)置為224像素×224像素,訓(xùn)練周期為50輪,模型優(yōu)化器為SGD函數(shù),損失函數(shù)為交叉熵?fù)p失函數(shù),并記錄訓(xùn)練精度和損失函數(shù)曲線。
實(shí)驗(yàn)訓(xùn)練集樣本僅有700張,在模型訓(xùn)練時(shí)容易陷入過擬合,需要對采集的樣本進(jìn)行數(shù)據(jù)增強(qiáng)。實(shí)驗(yàn)數(shù)據(jù)增強(qiáng)方式和參數(shù)值如表1所示。
表1 數(shù)據(jù)增強(qiáng)參數(shù)
智能煤矸識別算法DC&BN對采集數(shù)據(jù)集的訓(xùn)練曲線如圖11所示。
(a) 訓(xùn)練準(zhǔn)確率曲線
(b) 訓(xùn)練損失函數(shù)曲線
由圖11(a)可知,煤和矸石圖像訓(xùn)練準(zhǔn)確率和驗(yàn)證準(zhǔn)確率在第5個周期后,均達(dá)到90%以上,在27個訓(xùn)練周期以后訓(xùn)練準(zhǔn)確率和驗(yàn)證準(zhǔn)確率均達(dá)到98%以上,且波動幅度較小。
由圖11(b)可知,訓(xùn)練損失函數(shù)在第5個周期后,損失函數(shù)值趨于0,雖有個別點(diǎn)出現(xiàn)較大誤差,但總體趨于穩(wěn)定。模型訓(xùn)練效果理想,模型各部分超參數(shù)和權(quán)重值訓(xùn)練較為合理,并且損失函數(shù)曲線間的間隙較小,屬于完美擬合狀態(tài)。
經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)模型主要有VGGNet、LeNet-5[16]、AlexNet[17]、GoogleNet[18]和ResNet[19]等。利用Tensorflow 2.0分別搭建上述網(wǎng)絡(luò),對采集的煤和矸石圖像數(shù)據(jù)集進(jìn)行訓(xùn)練,模型訓(xùn)練曲線如圖12所示。
(a)模型訓(xùn)練準(zhǔn)確率曲線
(b)模型訓(xùn)練損失函數(shù)曲線
由圖12可知,智能煤矸識別算法DC&BN收斂速度較快,經(jīng)歷5輪訓(xùn)練后,模型即收斂,準(zhǔn)確率達(dá)到97%以上,最終趨于100%,性能與ResNet系列網(wǎng)絡(luò)相當(dāng)。AlexNet、LeNet-5分別經(jīng)歷約30輪、40輪的訓(xùn)練,損失函數(shù)才逐漸收斂;而VGGNet和GoogleNet在50個周期的訓(xùn)練過程中,準(zhǔn)確率曲線均處于振蕩狀態(tài),訓(xùn)練準(zhǔn)確率較低,損失函數(shù)也不收斂。
此外,針對上述網(wǎng)絡(luò)模型采用浮點(diǎn)運(yùn)算次數(shù)FLOPs[20]和F1分?jǐn)?shù)2個指標(biāo)進(jìn)行數(shù)據(jù)對比分析,如表2所示,模型預(yù)測結(jié)果示例如圖13所示。
表2 模型評價(jià)指標(biāo)對比
(a)預(yù)測正確示例
(b)預(yù)測錯誤示例
DC&BN的F1分?jǐn)?shù)與LeNet-5、AlexNet、ResNet系列網(wǎng)絡(luò)相當(dāng),均在0.97以上,模型預(yù)測準(zhǔn)確率較高。對比浮點(diǎn)運(yùn)算次數(shù),DC&BN的浮點(diǎn)運(yùn)算次數(shù)與原VGGNet16網(wǎng)絡(luò)相近,為71 632 538次,雖高于LeNet-5和AlexNet,但遠(yuǎn)低于ResNet50和ResNet101;而原VGGNet16、VGGNet19和GoogleNet網(wǎng)絡(luò)不僅浮點(diǎn)運(yùn)算次數(shù)高,且F1分?jǐn)?shù)較低,模型復(fù)雜度高,參數(shù)訓(xùn)練效果不理想。
綜上所述,智能煤矸識別算法DC&BN在訓(xùn)練準(zhǔn)確率、收斂速度和F1分?jǐn)?shù)方面均取得了良好的效果,雖然浮點(diǎn)運(yùn)算次數(shù)比LeNet-5和AlexNet高,但也在合理的范圍內(nèi),且收斂速度較二者要快。
1)基于空洞卷積和批歸一化算法對經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)VGGNet16進(jìn)行改進(jìn),并搭建實(shí)驗(yàn)裝置,采集、構(gòu)建煤和矸石數(shù)據(jù)集,通過對網(wǎng)絡(luò)的訓(xùn)練和驗(yàn)證,結(jié)果表明智能煤矸識別算法DC&BN訓(xùn)練和驗(yàn)證準(zhǔn)確率均可達(dá)97%以上,且從第5個訓(xùn)練周期后開始收斂,收斂速度較快。
2)利用浮點(diǎn)運(yùn)算次數(shù)FLOPs和F1分?jǐn)?shù)對智能煤矸識別算法DC&BN進(jìn)行評價(jià),其F1分?jǐn)?shù)可達(dá)0.994 3,模型訓(xùn)練效果較好,能夠?qū)ξ粗愋蜆颖咀龀鲚^高準(zhǔn)確率的預(yù)測;模型浮點(diǎn)運(yùn)算次數(shù)為71 632 538次,模型復(fù)雜度處于較低水平。
3)利用深度學(xué)習(xí)框架Tensorflow 2.0,分別對多個網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練和驗(yàn)證,并與DC&BN進(jìn)行對比分析,結(jié)果表明智能煤矸識別算法DC&BN訓(xùn)練收斂速度較快,準(zhǔn)確率較高,雖浮點(diǎn)運(yùn)算次數(shù)較大,但在合理的范圍內(nèi)。