張寶金,劉偉新,任海龍,荊洪迪,崔宇,吳東,張振江
(1.鞍鋼礦業(yè)有限公司眼前山分公司,遼寧 鞍山市 114000;2.中國(guó)科學(xué)院沈陽(yáng)自動(dòng)化研究所,遼寧 沈陽(yáng) 110016)
在鐵礦石的開采加工過(guò)程中,及時(shí)了解鐵礦石的品位至關(guān)重要。通過(guò)鐵礦石品位能夠大致判斷鐵礦石的利潤(rùn),采用人工智能識(shí)別鐵礦石品位可以及時(shí)發(fā)現(xiàn)廢石增多的情況,從而減少?gòu)U石的產(chǎn)生,降低處理成本。
近年來(lái),人工智能得到了飛速的發(fā)展,基于深度學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò)的圖像識(shí)別技術(shù)更是衍生了一系列快速且精確的算法,在工程中得到了廣泛的應(yīng)用。徐述騰等[1]實(shí)現(xiàn)了利用電鏡對(duì)礦石礦物進(jìn)行智能識(shí)別;郭艷軍等[2]采用ResNet18 深度卷積神經(jīng)網(wǎng)絡(luò)對(duì)礦物進(jìn)行識(shí)別與分類;劉飛躍等[3]利用深度學(xué)習(xí)對(duì)礦山的巖體質(zhì)量進(jìn)行了精細(xì)化評(píng)價(jià);張野等[4]利用深度學(xué)習(xí)對(duì)巖石的巖性進(jìn)行了自動(dòng)識(shí)別與分類。
礦石品位的識(shí)別是相同背景下的圖像淺層信息提取與識(shí)別,因此,利用人工智能模型來(lái)判斷礦石的品位可以達(dá)到很高的準(zhǔn)確率。通常對(duì)于淺層信息來(lái)說(shuō),提高分辨率是快速提升模型正確率的方法,但提升輸入圖片的分辨率對(duì)于模型的速度與大小有著指數(shù)級(jí)的關(guān)系。故針對(duì)生產(chǎn)現(xiàn)場(chǎng)需要模型既具有一定精度又有便攜性且識(shí)別速度需要達(dá)到標(biāo)準(zhǔn),因此,本文選擇MobileNet-SSD 算法對(duì)鐵礦石品位進(jìn)行判斷。
MobileNet-SSD 算法的第一個(gè)識(shí)別判斷模塊為利用改進(jìn)的MobileNet 搭建的SSD 算法,其中MobileNet 模型是谷歌開發(fā)的一種輕量級(jí)的神經(jīng)網(wǎng)絡(luò)模型,主要用于各種嵌入式設(shè)備搭載利用,其使用的核心是深度可分離卷積塊。而SSD 算法是結(jié)合了Fast-RCNN、YOLO 兩大主流算法的優(yōu)點(diǎn),其檢測(cè)速度為Fast-RCNN 的6 倍,map值比YOLO高11%。
MobileNet-SSD 算法是利用改進(jìn)的MobileNet 網(wǎng)絡(luò)替換SSD 中的VGG16 網(wǎng)絡(luò),在其他結(jié)構(gòu)不變的情況下可以提升模型的運(yùn)行速度,減少模型的大小。結(jié)合定位的礦石位置,使用掩碼信息提取礦石中心圖像,并利用KNN 模型進(jìn)行二次預(yù)測(cè),結(jié)合兩次的預(yù)測(cè)結(jié)果進(jìn)行加權(quán)處理,輸出最終的結(jié)果。
MobileNet 是一種專注于嵌入式設(shè)備的輕量的卷積神經(jīng)網(wǎng)絡(luò),相比于傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò),采用深度可分離卷積(Depthwise Separable Convilution)在小幅度降低模型準(zhǔn)確率的情況下可大大減少模型的參數(shù)與運(yùn)算量。
MobileNet 中深度可分離卷積結(jié)構(gòu)分為以下兩部分。
(1)逐通道卷積。常規(guī)卷積為3 個(gè)卷積核負(fù)責(zé)1 個(gè)同共通道,而逐通道卷積(簡(jiǎn)稱DW 卷積)的1 個(gè)卷積核負(fù)責(zé)1 個(gè)通道,DW 卷積在二維平面內(nèi)進(jìn)行,卷積核的數(shù)量與上一層通道數(shù)以及Featuremap 個(gè)數(shù)相同[6],在減少參數(shù)的情況下保證網(wǎng)絡(luò)的深度以及對(duì)信息的提取。
(2)逐點(diǎn)卷積。逐點(diǎn)卷積(PW 卷積)的運(yùn)算與常規(guī)卷積運(yùn)算非常相似,其卷積核的尺寸為1×1×M,M為上一層的通道數(shù)。所以這里的卷積運(yùn)算會(huì)將上一步的map在深度方向上進(jìn)行加權(quán)組合,生成新的特征圖。有幾個(gè)卷積核就有幾個(gè)特征圖輸出[6]。
(3)算量計(jì)算。模型的計(jì)算量簡(jiǎn)稱算量,是衡量算法運(yùn)行速度以及訓(xùn)練速度的一個(gè)關(guān)鍵指標(biāo)。實(shí)例中輸入的圖片為3(M)通道輸入,4 通道,最終輸出4(N)個(gè)特征圖,圖片的長(zhǎng)寬為DF,卷積核大小為(3×3)DK×DK,具體如圖1 所示。
圖1 算量對(duì)比
通過(guò)理論計(jì)算,深度可分離卷積在深度加深的情況下計(jì)算量大約為普通卷積計(jì)算量的1/8~1/9,嵌入式設(shè)備算力較低,VGG16 在大多數(shù)設(shè)備運(yùn)行不良而MobileNet-SSD 則能流暢運(yùn)行,且所占內(nèi)存空間也更少。
實(shí)驗(yàn)室數(shù)據(jù)集為從某地下鐵礦實(shí)地采集,數(shù)據(jù)集包含1334 張圖片共5 個(gè)類別,分別為磁鐵礦貧/富、赤鐵礦貧/富以及圍巖,經(jīng)過(guò)圖像翻轉(zhuǎn)變換、平移變化、噪聲擾動(dòng)、縮放旋轉(zhuǎn)等數(shù)據(jù)增強(qiáng)操作,將原有的數(shù)據(jù)集擴(kuò)充成5 565 張圖片,部分?jǐn)?shù)據(jù)如圖2所示。
圖2 部分?jǐn)?shù)據(jù)圖展示
本實(shí)驗(yàn)平臺(tái)配置:系統(tǒng)為win10-64;CPU 為i 711700;GPU 為雙路1060-6G;模型的搭建及訓(xùn)練均在python3.7 以及tensorflow2.2 下進(jìn)行編譯及訓(xùn)練;使用tensorflow 進(jìn)行分布式訓(xùn)練并利用N 卡CUDA 進(jìn)行加速訓(xùn)練過(guò)程。
目標(biāo)檢測(cè)算法模型的精度由 mAP(mean Average Precision)來(lái)進(jìn)行評(píng)定,其中AP為PR曲線下的面積值;P為精確度(Precision),R為召回率(Recall)所組成的面積及為AP值。
式中,TTP是其IOU 值大于閾值檢測(cè)框的數(shù)量(閾值設(shè)置為0.5);FFP為IOU 值小于閾值檢測(cè)框的數(shù)量;FFN為沒(méi)有檢測(cè)到的真實(shí)框的數(shù)量;RRecall表示分類器認(rèn)為是正類且原本確實(shí)是正類的部分占所有原本屬于正類的比例;PPrecision表示分類器認(rèn)為是正類并且原本確實(shí)是正類的部分占所有分類器認(rèn)為是正類的比例。
訓(xùn)練采用遷移學(xué)習(xí)的訓(xùn)練思想,設(shè)計(jì)訓(xùn)練過(guò)程為50 Epoch,前25 Epoch 執(zhí)行凍結(jié)前20 層權(quán)重進(jìn)行訓(xùn)練,25~50 Epoch 訓(xùn)練正常;利用 Early Stopping(早停法)對(duì)迭代進(jìn)行控制,在3 次訓(xùn)練損失值下降少于0.1 或不下降時(shí)終止訓(xùn)練,最終迭代在47 Epoch 提前終止,損失值收斂到6.25,在進(jìn)行多次訓(xùn)練的模型中效果較好,如圖3 所示。
圖3 損失值曲線
利用數(shù)據(jù)集中的測(cè)試集對(duì)模型進(jìn)行測(cè)試,測(cè)試結(jié)果如圖4 所示,MobileNet-SSD 模型對(duì)不同品位的礦石和圍巖可以進(jìn)行很好的分類識(shí)別,單張圖片識(shí)別的準(zhǔn)確率能達(dá)到97%,而視頻的識(shí)別結(jié)果正確率稍低,為91%,說(shuō)明本文模型具有良好的魯棒性和泛化性。
圖4 部分實(shí)驗(yàn)結(jié)果
(1)MobileNet-SSD 模型可以很好地識(shí)別礦石品位及圍巖,并可以在大多數(shù)嵌入式設(shè)備上進(jìn)行搭載識(shí)別,速度和準(zhǔn)確率均可達(dá)到要求。
(2)MobileNet-SSD 算法在加大分辨率時(shí)需要的算力更少,便于后期嵌入式設(shè)備性能突破時(shí)更改模型的結(jié)構(gòu),增加正確率。
(3)增加模型樣本數(shù)量、將圖片進(jìn)行統(tǒng)一處理均能提升一定的準(zhǔn)確率,但會(huì)消耗一定的算力。
綜上所述,MobileNet-SSD 算法是一種適用于低算力嵌入式的算法,對(duì)礦石品位以及圍巖具有良好的魯棒性和泛化性,可充分利用算力資源。