謝子殿 馮海東
(黑龍江科技大學(xué)電氣與控制工程學(xué)院,黑龍江 哈爾濱 150022)
煤炭在我國(guó)能源中處于壓艙石的地位,智能化賦能煤礦安全生產(chǎn),煤礦綠色、高效的高質(zhì)量轉(zhuǎn)型發(fā)展成為必然。煤礦皮帶運(yùn)輸系統(tǒng)作為原煤運(yùn)輸?shù)闹饕绞?,?duì)保證礦井正常生產(chǎn)起至關(guān)重要的作用。由于礦井皮帶運(yùn)輸系統(tǒng)具有設(shè)備布置多、運(yùn)輸量大、傳送速度快、運(yùn)輸線(xiàn)路長(zhǎng)且環(huán)境復(fù)雜等特點(diǎn),因此作為煤炭生產(chǎn)運(yùn)輸重要設(shè)備之一的皮帶機(jī),具有運(yùn)輸量大、傳送速度快、傳送距離遠(yuǎn)以及可以適應(yīng)復(fù)雜環(huán)境等特點(diǎn)。在生產(chǎn)過(guò)程中掉落在皮帶上的錨桿、角鐵以及大塊矸石等長(zhǎng)桿利器和大塊容易導(dǎo)致皮帶發(fā)生斷帶、撕帶等故障[1-3],造成非計(jì)劃停產(chǎn),對(duì)煤礦安全、連續(xù)生產(chǎn)造成嚴(yán)重影響。
基于深度學(xué)習(xí)的圖像識(shí)別方法具有設(shè)備安裝簡(jiǎn)便、維護(hù)成本低等優(yōu)點(diǎn),逐漸成為皮帶運(yùn)輸機(jī)非煤異物識(shí)別的主流方法。隨著科學(xué)技術(shù)發(fā)展,邊緣設(shè)備憑借其體積小、運(yùn)用靈活、擴(kuò)展性強(qiáng)且現(xiàn)場(chǎng)運(yùn)行可靠等優(yōu)點(diǎn),在煤礦生產(chǎn)中逐漸替代傳統(tǒng)服務(wù)器集中分析、處理與決策的方式,解決了系統(tǒng)延時(shí)較高、響應(yīng)速度慢等問(wèn)題。因此,該文提出一種基于YOLOv5改進(jìn)的輕量化模型,在減少浮點(diǎn)運(yùn)算量的同時(shí),還可以提高網(wǎng)絡(luò)的檢測(cè)速度和精度。
為了在提高模型精度的同時(shí)不增加模型的運(yùn)算量,骨干網(wǎng)絡(luò)采用Ghost 模塊與ConvNeXt 模塊相結(jié)合的方式形成GhostNeXt 骨干網(wǎng)絡(luò)。
1.1.1 Ghost 模塊
卷積神經(jīng)網(wǎng)絡(luò)中冗余的特征信息圖具備較高的檢測(cè)性能,Ghost 模塊通過(guò)計(jì)算量更少的“廉價(jià)”線(xiàn)性操作方式替代普通卷積生成冗余特征圖,是GhostNet 的核心組件,其原理結(jié)構(gòu)如圖1所示。Ghost 模塊先通過(guò)普通卷積生成不含冗余特征的本征特征圖,再通過(guò)恒等變換和線(xiàn)性運(yùn)算生成含有冗余信息的特征圖。線(xiàn)性變換的實(shí)質(zhì)是3×3 或5×5 深度可分離卷積。
圖1 Ghost 模塊結(jié)構(gòu)原理
為了驗(yàn)證Ghost模塊的高效性,根據(jù)參數(shù)量(Parameter)和每秒浮點(diǎn)運(yùn)算次數(shù)(Flops)計(jì)算公式,將常規(guī)卷積方法與使用Ghost 卷積所得到的Parameter、Flops 分別作商,得到參數(shù)壓縮比rc和理論加速比rs,分別如公式(1)、公式(2)所示。
式中:w'為輸入特征圖的寬度;h'為輸入特征圖的高度;c為輸入特征圖的通道數(shù);n為常規(guī)方法普通卷積核的個(gè)數(shù);m為Ghost 模塊普通卷積核的個(gè)數(shù);d為Ghost 模塊深度卷積核的大小;s為每個(gè)通道產(chǎn)生的總特征圖映射數(shù)(即1 個(gè)固有特征圖和s-1 個(gè)廉價(jià)特征圖)。
定義s=n/m,一般情況下m 1.1.2 ConvNeXt 模塊 ConvNeXt 借鑒Transformer 網(wǎng)絡(luò)的先進(jìn)部分,同時(shí)還結(jié)合了CNN 網(wǎng)絡(luò)的特點(diǎn),從而打造一種性能更高的CNN 網(wǎng)絡(luò),其主要改進(jìn)如下:1)采用GeLU 激活函數(shù)替換ReLU 激活函數(shù)(ReLU 激活函數(shù)特性曲線(xiàn)和GeLU激活函數(shù)特性曲線(xiàn)如圖2所示)。ReLU 激活函數(shù)如公式(3)所示。由圖3 可知,ReLU 活函數(shù)的缺陷是當(dāng)某一神經(jīng)元的輸入變量為非正數(shù)時(shí),其輸出量為0,會(huì)導(dǎo)致該神經(jīng)元“壞死”,從而限制模型的性能。GeLU 通過(guò)引入“隨機(jī)正則”,避免了負(fù)梯度時(shí)神經(jīng)元“壞死”的缺陷,提高了模型的魯棒性,其函數(shù)如公式(4)所示。2)將深度可分離卷積遷移至1×1 升維卷積前,采用大7×7 核卷積。該操作在擴(kuò)大感受野的同時(shí)還不會(huì)增加模型參數(shù)量。3)在減少歸一化函數(shù)使用的同時(shí),采用使用層歸一化函數(shù)替代批量歸一化函數(shù),克服了批歸一化函數(shù)受批尺寸影響較大的缺點(diǎn)。 圖2 ReLU 與GeLU 激活函數(shù)曲線(xiàn)對(duì)比圖 圖3 ResNet 與ConvNeXt 結(jié)構(gòu)對(duì)比 經(jīng)上述改進(jìn)后,ConvNeXt 模塊的最終結(jié)構(gòu)如圖3(b)所示。 式中:x為輸入變量,即函數(shù)的自變量;r(x)為GeLU 激活函數(shù)的輸出變量,即因變量。 式中:g(x)為GeLu 激活函數(shù)輸出量,即函數(shù)的因變量;t為高斯函數(shù)積分變量。 Ghost 模塊中的深度可分離卷積在減少模型計(jì)算量的同時(shí),也不可避免地忽視了各通道之間相同位置上的特征信息。通道密集卷積計(jì)算最大限度地保留了每個(gè)通道之間的隱藏連接,因此對(duì)Ghost 模塊進(jìn)行改進(jìn),在其后增加通道混洗操作,將輸出的特征圖重新分組排布,得到深度可分離通道密集卷積(GSConv)模塊,其結(jié)構(gòu)原理如圖4所示。 圖4 GSConv 結(jié)構(gòu)原理 在GSConv 模塊的基礎(chǔ)上搭建如圖5(a)所示的GSBottleneck,再引入“一次性聚合”的方法來(lái)設(shè)計(jì)跨級(jí)部分網(wǎng)絡(luò)(VoV-GSCSP)模塊(如圖6(b)所示),該模塊降低了計(jì)算和網(wǎng)絡(luò)結(jié)構(gòu)的復(fù)雜性,但是保持了足夠的精度。最終將GSConv 模塊與VoVGSCP 模塊有機(jī)組合,以構(gòu)成Slim Neck 網(wǎng)絡(luò)(如圖5所示。) 圖5 SlimNeck 結(jié)構(gòu)原理 圖6 GSBottleneck 與VoVGSCP 結(jié)構(gòu)原理 首先,該文使用的數(shù)據(jù)均是通過(guò)模擬煤礦井下環(huán)境,在皮帶上對(duì)煤和非煤異物混合進(jìn)行多角度拍攝得到的,包括錨桿、角鐵、工字鋼、電鎬以及煤矸石等常見(jiàn)非煤異物。如圖7所示,為了使數(shù)據(jù)集更接近煤礦井下真實(shí)環(huán)境,采用Albumenations 庫(kù)對(duì)采集的圖像進(jìn)行旋轉(zhuǎn)、鏡像、霧化以及對(duì)比度變換等一系列擴(kuò)充和數(shù)據(jù)增強(qiáng)處理,擴(kuò)充后的數(shù)據(jù)集包括3 000 張圖片。 圖7 數(shù)據(jù)增強(qiáng) 其次,使用LabellImg 對(duì)圖片進(jìn)行標(biāo)注(如圖8所示),標(biāo)注的內(nèi)容包括編號(hào)、異物名稱(chēng)、邊框中心點(diǎn)坐標(biāo)橫縱坐標(biāo)(xa,ya)、邊框的寬度和高度(wa,ha)等(保存的標(biāo)簽文件格式為xml)。 圖8 標(biāo)簽文件生成 最后,將標(biāo)簽文件的格式轉(zhuǎn)換為txt 文本形式,并按照7∶2∶1 的比例將數(shù)據(jù)集劃分為訓(xùn)練集、驗(yàn)證集和測(cè)試集。 硬件平臺(tái)采用AMD R5 3600 CPU和NVIDIA RTX 3050 8G GPU,操作系統(tǒng)為Ubuntu Kylin 20.04 LTS,應(yīng)用軟件環(huán)境為CUDA 11.6、Python 3.8 以及Pytorch 1.13.0,訓(xùn)練輪數(shù)為150 輪,批尺寸大小為32。 該文通過(guò)消融試驗(yàn)證明GhostNeXt-Slim Net模型具有較高的性能。該文的評(píng)價(jià)指標(biāo)為精確率P、召回率R、所有類(lèi)別平均精確率M、每秒十億次浮點(diǎn)運(yùn)算數(shù)G以及推理時(shí)間T。 前3 個(gè)評(píng)價(jià)指標(biāo)的計(jì)算公式分別如公式(5)~公式(7)所示。 式中:TP為正樣本被正確識(shí)別的數(shù)量;FP為誤判為正樣本的負(fù)樣本數(shù)量;FN為漏報(bào)的正樣本數(shù)量;n為各類(lèi)非煤異物樣本總數(shù);N為非煤異物類(lèi)別數(shù)。 TP、FN、FP和TN(TN為負(fù)樣本被正確識(shí)別的數(shù)量)的定義見(jiàn)表1。 表1 TP、TN、FP 和FN 的定義表 設(shè)定模型一為GhostNet 原網(wǎng)絡(luò);模型二將骨干網(wǎng)絡(luò)修改為GhostNeXt,不更改頸部網(wǎng)絡(luò);模型三將頸部網(wǎng)絡(luò)更換為Slim Neck,骨干網(wǎng)絡(luò)不做修改;模型四為該文的最終模型,將骨干網(wǎng)絡(luò)修改為GhostNeXt,并且將將頸部網(wǎng)絡(luò)更換為Slim Neck,然后對(duì)4 種網(wǎng)絡(luò)模型進(jìn)行逐一訓(xùn)練。4 種模型平均精確率隨迭代次數(shù)變化情況對(duì)比效果如圖9所示,系統(tǒng)自動(dòng)統(tǒng)計(jì)生成的各類(lèi)指標(biāo)數(shù)據(jù)見(jiàn)表2。 表2 消融試驗(yàn)對(duì)比表 圖9 對(duì)比效果圖 該文采用GhostNeXt 主干網(wǎng)絡(luò)提高了非煤異物識(shí)別的精確率和召回率,縮短了推理時(shí)間。采用Slim Neck 在降低模型運(yùn)算量的同時(shí)幾乎不影響其他性能指標(biāo)。各類(lèi)異物識(shí)別提升效果見(jiàn)表3。 表3 各類(lèi)異物識(shí)別效果比對(duì) 為了進(jìn)一步展示該文的模型GhostNeXt-Slim Net 的優(yōu)化效果,筆者將該模型部署在邊緣設(shè)備中。該邊緣設(shè)備搭載HM87 低功耗工業(yè)主板;CPU為雙核雙線(xiàn)程的英特爾奔騰3560M;GPU 是基于GP108-300 核心的英偉達(dá)GT 1030,擁有300 多個(gè)CUDA 處理器,而散熱設(shè)計(jì)功耗TDP 僅為30 W。操作系統(tǒng)選用基于Linux 核心的Fedora 29,該系統(tǒng)易用性高,方便管理員監(jiān)控和管理系統(tǒng)。CUDA 環(huán)境為10.2,可以與該邊緣平臺(tái)的GPU完美兼容。 由表4 可知,雖然曠視輕量網(wǎng)絡(luò)(Shfflenet)v2 與移動(dòng)網(wǎng)絡(luò)v3S(Mobilenet v3 Small)擁有更快的識(shí)別幀率,但是檢測(cè)精度較低,不僅置信度偏低,而且還出現(xiàn)漏檢現(xiàn)象。與移動(dòng)網(wǎng)絡(luò)v3L(Mobilenet v3 Large)相比,該文的模型網(wǎng)絡(luò)擁有更快的識(shí)別幀率和更高的識(shí)別精度。因此,該文模型實(shí)現(xiàn)了模型識(shí)別精度與速度的平衡優(yōu)化目標(biāo)。 表4 各輕量化網(wǎng)絡(luò)識(shí)別效果比對(duì) 綜上所述,該文得出以下3 個(gè)結(jié)論:1)該文結(jié)合Ghost模塊與ConvNeXt 模塊的GhostNext 主干網(wǎng)絡(luò),以增加極少運(yùn)算量為代價(jià)提高了模型提取特征的能力。2)Slim 頸部結(jié)構(gòu)在幾乎不影響精確度和推理速度的情況下,減少了模型的運(yùn)算量。3)該文的模型GhostNeXt-SlimNet 有效權(quán)衡了模型的精確度和運(yùn)算量,既能滿(mǎn)足煤礦實(shí)際生產(chǎn)對(duì)非煤異物識(shí)別精度的需求,又能在邊緣設(shè)備上流暢地運(yùn)行。1.2 瓶頸網(wǎng)絡(luò)
2 試驗(yàn)
2.1 數(shù)據(jù)集構(gòu)建
2.2 模型訓(xùn)練
2.3 結(jié)果比對(duì)
2.4 邊緣平臺(tái)部署
3 結(jié)語(yǔ)
中國(guó)新技術(shù)新產(chǎn)品2023年18期