王培珍 ,楊志豪,汪正才,薛子邯,劉 林,張代林
(1.安徽工業(yè)大學 電氣與信息工程學院,安徽 馬鞍山 243032;2.安徽工業(yè)大學 工程實踐與創(chuàng)新教育中心,安徽 馬鞍山 243032;3.安徽工業(yè)大學煤的潔凈轉化與高值化利用安徽省重點實驗室,安徽 馬鞍山 243032;4.安徽工業(yè)大學 冶金減排與資源綜合利用教育部重點實驗室,安徽 馬鞍山 243032)
煤巖顯微組分的構成與其反應性、黏結性、結焦性等工藝性質密切相關。鏡質組為煤中主要的顯微組分之一,實現鏡質組中各顯微組分及亞組分的自動分類與識別,對配煤優(yōu)化和焦炭質量的預測具有重要意義。目前,煤巖顯微組分的定量分析普遍采用的還是數點法,對測定者專業(yè)水平要求高,勞動強度大,分析成本高。為此,研究者們嘗試采用圖像處理技術對煤巖顯微組分進行識別。LESTER 等[1]根據亮度與形態(tài)學特征,對殼質組和樹脂體取得了較好識別效果,但對于其他組分分析效果不甚理想。王素婷等[2]將局部二進制模式與灰度共生矩陣相結合提取煤巖顯微組分的紋理特征,再構建支持向量機對煤巖與礦物質進行分類,其正確率最高可達92.77%,但對于三大組別內的顯微組分未作進一步分析。WANG 等[3]采用k-means 聚類算法對煤巖顯微圖像進行分割,再使用隨機森林完成煤巖顯微組分的分類,其正確率最高可達90.44%,但該方法僅在煤化度Ro<1.0%時有效且只適用于部分顯微組分。宋孝忠等[4]研制了一種能夠實現顯微鏡自動聚焦、自動掃描和圖像自動采集功能的煤巖顯微圖像自動采集硬件平臺,并采用kmeans 聚類算法對顯微圖像進行分割,依據像素點的灰度測算其反射率,從而判斷其顯微組分類別。由于腔體填充物、熒光及照明等因素對灰度有較大的影響,且隨著煤化程度的加深,不同顯微組分間灰度差異減小,因而僅僅依靠灰度信息推算顯微組分類別的方法仍有較大的提升空間。筆者所在課題組亦曾采用圖像分析與模式識別的方法對顯微組分進行分類[5-8],采用傳統(tǒng)的模式識別方法提取煤巖顯微圖像的紋理、灰度(亮度)分布特征,再采用PCA、壓縮感知等方法對特征空間進行降維,最后構建極限學習機或支持向量機對惰質組、殼質組及鏡質組顯微組分自動分類,取得了一定的效果,但這些方法中初始特征集的構建需要豐富的人工經驗,對于構建的初始特征集需進行進一步的特征提取以去除冗余信息和降維(即特征工程),另需大量的實驗嘗試以確定算法中涉及的參數。
卷積神經網絡由于可以自動提取圖像的不同層次的特征,因而在圖像分類與識別的過程中可以避免繁瑣的特征工程,實現端到端的自動識別,被越來越多地應用于模式分類與識別領域。但經典的卷積神經網絡規(guī)模較大、訓練時間長、難以應用于某些實際場景,為此相繼出現了一系列輕量級網絡模型,如:SqueezeNet[9]、MobileNet V2[10]、ShuffleNet V2[11]等。這些輕量級模型在尺寸大小和速度方面有較大的提升,但其提升的普遍代價是準確率的損失。注意力機制可以使深度卷積神經網絡從輸入信息中選擇出對當前任務目標更關鍵的信息,同時抑制其他無關信息,從而可以提高分類的效率與準確性。如:HU 等[12]提出SE (Sequeze-and-Excitation) 模塊并將其嵌入Res-Net,分類準確率得到有效提升;WOO 等[13]采用空間和通道注意力機制相結合的方式,相比于僅關注通道的注意力的文獻[12]取得了更好的效果;針對注意力機制引入的高復雜度問題,WANG 等[14]提出了一種輕量級的架構單元ECA,用較低的計算成本來提高網絡性能。
鑒于上述現狀及煤巖鏡質組中亞組分識別這一特定問題,筆者提出一種基于改進注意力機制的輕量級煤巖鏡質組識別網絡模型,以實現煤巖鏡質組顯微亞組分的高精度自動識別。
基于現行國家標準GB/T 15588—2013《煙煤顯微組分分類》[15],依據細胞結構保存的完好程度及其區(qū)域大小、形態(tài)等特征,鏡質組分為結構鏡質體、無結構鏡質體、碎屑鏡質體3 個顯微組分。其中,結構鏡質體細分為結構鏡質體-1 和結構鏡質體-2,無結構鏡質體細分為均質鏡質體、基質鏡質體、團塊鏡質體和膠質鏡質體。其在油浸反光下典型顯微圖像如圖1 所示[16]。
圖1 鏡質組顯微亞組分典型圖像[16]Fig.1 Typical microscopic images of vitrinite submacerals[16]
結構鏡質體-1 細胞結構保持完整且排列有序;結構鏡質體-2 細胞腔變形甚至消失,但殘跡尚存,呈較規(guī)則的線條狀或團塊狀結構;均質鏡質體較為均一,呈粗細不等的長條狀;基質鏡質體形態(tài)各異,常與其他顯微組分或共生礦物膠結,有時呈斑點狀或團塊狀的集合體;團塊鏡質體主要表現為圓形、橢圓形和紡錘形;膠質鏡質體通常充填于細胞腔或其他空腔中;碎屑鏡質體為徑粒小于10 μm 的鏡質體碎屑,多表現為細小粒狀或者不規(guī)則形狀。由此可見,各顯微亞組分結構有一定的規(guī)律,蘊含較為豐富的紋理信息;形態(tài)特征存在明顯差異,但部分亞組分形態(tài)特征又具有一定的相似性。針對這些特點,若采用傳統(tǒng)的小樣本方法進行識別,特征維數高且特征量間存在大量的信息冗余,需要采取合適的方法進行進一步的特征提取,涉及的人為因素多且需要大量的實驗嘗試。為避免特征工程,筆者在后續(xù)工作中采用深度學習的方法構建分類模型,實現鏡質組各亞組分端到端的自動識別。
煤樣來源于山西大同、靈石、呂梁、西山、河東、霍西煤田和河南平頂山煤田、東升煤礦、鶴壁八礦及內蒙古東升煤田等,含主焦煤、氣煤、肥煤、瘦煤,按國家標準GB/T 10773—2008《煤巖分析樣品制備方法》制樣后,在油浸反射光下采用光學顯微鏡(400 倍放大)采集顯微圖像。采集獲取的典型原始圖像如圖2 所示,大小為2 448 像素×2 048 像素。選取其中的420 幅顯微圖像作為初始樣本,其中280 幅為訓練樣本,140 幅為測試樣本。因樣本數相對較少,若由其直接訓練網絡模型則易產生過擬合現象,為此采用隨機裁剪、旋轉、鏡像和加噪等處理方式對樣本進行增強,增強后的訓練集包含1 960 幅圖像,測試集含980幅圖像。圖3 為對典型顯微圖像進行增強后的結果。
圖3 典型圖像增強效果Fig.3 Enhancement samples of typical images
盡管對初始數據樣本進行了增強,但現有樣本數據量仍難以支撐經典卷積神經網絡模型的訓練。加之鏡質組部分顯微亞組分間特征差異較小、甚至存在交織等,使得辨識難度增大。為此,筆者提出一種嵌入注意力機制的輕量級鏡質組亞組分識別網絡模型,結構如圖4 所示。首先對輸入的鏡質組顯微圖像進行數據增強;再以ShuffleNet V2 作為基礎網絡,利用增強的鏡質組數據集對在大型數據集上預訓練后的基礎網絡模型進行遷移學習,構建主干網絡以提取特征;最后在主干網絡的輸出部分嵌入注意力機制,并根據鏡質組顯微亞組分圖像的特點對注意力機制進行改進,進一步提取深層次的特征信息,進而得到適用于鏡質組顯微亞組分識別的網絡模型。
圖4 嵌入注意力機制的輕量級鏡質組顯微亞組分識別網絡結構Fig.4 Lightweight vitrinite submaceral recognition network structure embedded with an attention mechanism
輕量級網絡模型中,ShuffleNet V2 具有較高精度和較低的計算復雜度,其在準確率、復雜度和訓練速度上綜合優(yōu)勢較為突出,可在有限的計算預算下獲得較高的識別準確率,筆者選擇ShuffleNet V2 作為基礎網絡用于特征提取。特征提取器每個stage 由一個空間下采樣單元和若干基本單元組成。為了避免過多的分組卷積在內存訪問時增加的開銷,在卷積層輸入輸出通道采用通道拆分(Channel split)技術代替分組操作,即在基本單元的開頭,將C個特征通道(即通道維度)的輸入劃分為2 個分支,每個分支分別具有C/2 個通道數。拆分后的一個分支不作任何處理以滿足并行度,另一個分支由點卷積和深度可分離卷積構成,遵循輸入和輸出特征通道數相等的準則。卷積完成后,左右2 個部分拼接合并,使輸入、輸出通道數保持一致,合并后使用通道混洗技術實現信息交流(圖5(a))。空間下采樣單元如圖5(b)所示,由于沒有通道拆分(Channel split),Concat 之后輸出通道數為輸入的2 倍。
圖5 特征提取器單元Fig.5 Units of feature extracting module
采用常規(guī)方法構建深度學習分類模型時,通常需要大量用于訓練的已標注數據和較為復雜的調參、較長的訓練時間。受煤巖鏡質組顯微圖像樣本數限制,直接訓練所得識別模型泛化能力差。因此,筆者在大型數據集ImageNet 上完成Shuffle V2 模型的預訓練。在此基礎上,再在本文增強的鏡質組顯微圖像訓練樣本集上將預訓練模型中靠近輸入的若干層凍結,對靠近輸出的網絡層權值進行微調,實現遷移學習,構建主干網絡。
由于鏡質組中部分顯微亞組分間特征差異較小甚至存在一定的交錯,引入注意力機制以關注目標中更為關鍵的信息??臻g注意力機制一般用于關注淺層有效特征,如空間細節(jié)信息;通道注意力機制用于關注有效的深層特征[12,17],如全局上下文感知信息等。由于文中遷移學習微調的是靠近輸出端的權重,用于提取深層特征,所以采用通道注意力機制以關注更高層次的深層特征。
ECA 是一種輕量級架構的通道注意力機制模塊[14],可以較低的計算成本來提高準確率。但該模塊使用平均池化的方式對每個通道特征進行壓縮,因而圖像中細節(jié)特征的提取受到影響。而紋理是區(qū)分鏡質組不同顯微亞組分的重要特征。因此,在原ECA基礎上,結合煤巖顯微圖像的特點,采用全局平均池化和全局最大池化2 種輸出特征對應位相加的方法,對ECA 進行改進,以充分提取顯微圖像中不同亞組分的紋理特征和其他高層次特征,并使2 者有效聚合。改進后的結構如圖6 所示。
圖6 改進的通道注意力機制模塊Fig.6 Modified channel attention mechanism module
適當的跨通道信息交互對于實現深度CNN 通道注意是有效的[14]。本文設計的通道注意力機制模塊中,首先將輸入的特征圖采用全局平均池化和全局最大池化相加來聚合特征;然后通過大小為k的快速一維卷積實現跨通道信息交互,同時降低模型復雜度(式(1))。
其中,GMP 和GAP 分別為全局最大池化和全局平均池化;add 為將全局最大池化和全局平均池化輸出特征對應位相加;CID 為一維卷積;k為一維卷積內核的大?。沪覟镾igmoid 激活函數;w為每個通道生成的特征圖的權重,維度為1×1×C。最后將每個特征通道生成的權重作用于原始輸入特征圖(式(2))。
式中:xc為第c個通道的特征圖,二維矩陣;wc為第c個通道的權重;F為基于元素的乘積操作。
為實現適當的跨通道信息交互,需要確定交互的覆蓋范圍(即一維卷積的內核大小k)。不同通道數和不同CNN 架構其卷積塊k會有所不同,通過交叉驗證手動調參將消耗大量計算資源。筆者采用一種自適應的方法選擇一維卷積核大小,以確定局部跨通道交互的覆蓋范圍。一維卷積的內核大小k和C之間映射關系φ表示為
最簡單的映射是線性映射,即φ(k)=γk-b,γ和b為參數。但線性映射過于局限,又因通道維數C(即濾波器的數量)通常為2 的指數倍,因此,文中將線性函數φ(k)=γk-b擴展成一個非線性函數
在給定通道維度C的情況下,一維卷積的內核大小k自適應地確定
式中,|x|odd為最臨近x的奇數;γ和b設為2 和1。
圖7 給出網絡識別過程中樣本圖像從輸入到特征提取部分階段的特征(隨著網絡的加深,通道數急劇增加,特征圖數量也隨之增加)。由圖7 可以看出,不同階段、不同通道其提取特征的側重面有所不同。
圖7 不同階段特征Fig.7 Feature graphics of different feature extraction stages
實驗所用硬件系統(tǒng)配置為:Intel(R) Core(TM) i9-10 850 K 中央處理器,Nvidia GeForce RTX 3080 顯卡,32 Gb 內存。在python 編程環(huán)境下,使用pytorch 深度學習框架完成網絡架構的實現與學習訓練,并對鏡質組7 類顯微亞組分進行識別。樣本圖像尺寸統(tǒng)一規(guī)范為224×224,批大小batch_size 設為24。
遷移學習中凍結與訓練網絡中靠近輸入的若干層,僅微調靠近輸出的網絡層權重,權重參數的更新采用Adam 優(yōu)化算法,學習率設為0.000 1,共訓練100 個epoch。
選用混淆矩陣、平均準確率和計算復雜度作為評價指標對實驗結果及識別模型性能進行評估。計算復雜度包括模型參數量(Parameters)和浮點運算次數(FLOPs),其中模型參數量決定模型文件的大小。平均準確率為每個類別下識別準確率的平均值,反映模型在鏡質組顯微亞組分識別任務中的準確性?;煜仃嚳坍嬆P蛯︾R質組各顯微亞組分識別的詳細結果。
基礎網絡ShuffleNet V2 的預訓練在大型數據集ImageNet 上進行,然后在本文構建的鏡質組顯微亞組分數據集上進行遷移學習及實驗驗證。圖8 為本文算法學習過程的準確率與損失函數曲線,其判別基準由煤巖專家人工標注。由圖8 可以看出,當迭代次數在0~20 時,準確率上升與損失函數下降均較快;當迭代次數超過50 以后,準確率和損失函數曲線趨于穩(wěn)定,在測試集上所得曲線的波動性小,識別的平均準確率接近98%。表明本文算法有較快的收斂速度、較好的泛化能力以及較高的識別精度。
圖8 本文算法準確率和損失函數Fig.8 Accuracy and loss function of the proposed algorithm
為了驗證本文方法對鏡質組顯微亞組分識別的有效性和可重復性,采用本文構建的模型在測試集上分別對7 個顯微亞組分進行識別實驗,實驗共進行10 組,每組實驗從測試集中隨機選取140 個測試樣本(每個亞組分各20 個),10 組實驗所得平均準確率分別為:96.94%、97.03%、95.98%、98.72%、98.85%、96.74%、98.96%、98.76%、97.85%、98.67%,分布于95.98%~98.96%,滿足GB/T 8899—2013《煤的顯微組分組和礦物測定方法》關于重復性的要求。10 組實驗總平均準確率為97.85%,平均極差為2.15%,表現出較高的可重復性、再現性和識別精度。
圖9 為其中1 組實驗所得的混淆矩陣,列表示識別模型預測的亞組分類別,行表示其由專家辨識的真實組分。
圖9 本文模型所得的混淆矩陣Fig.9 Confusion matrix of the proposed algorithm
混淆矩陣中,結構鏡質體-1 有1 個測試樣本被錯誤地劃分為碎屑鏡質體(圖10(a)),團塊鏡質體、碎屑鏡質體各有1 個樣本被錯誤分類至膠質鏡質體中(圖10(b)、(c));其余類別均被正確分類。各顯微組分(亞顯微組分)分類的準確率均高于95%,表明本文所提出的模型對于鏡質組各顯微亞組分識別均具有較好的適應性。
圖10 被錯誤識別的樣本Fig.10 Misrecognized samples
3.4.1不同網絡模型結果對比
分別采用3 種經典卷積神經網絡(AlexNet[18]、VGG16[19]和ResNet50[20])以及3 種最具代表性的輕量級神經網絡(SqueezeNet1_0[9]、MobileNet V2[10]、ShuffleNet V2[11]模型)和相同的鏡質組顯微亞組分測試樣本以同樣的方案進行驗證實驗,結果見表1,不同模型測試結果混淆矩陣如圖11 所示。
表1 不同網絡模型性能對比Table 1 Performance comparison of different network models
圖11 不同網絡模型測試結果混淆矩陣Fig.11 Confusion matrixes of some different network models
由表1 和圖11 可以看出:與經典網絡AlexNet、VGG16 和ResNet50 模型相比,采用本文算法其平均準確率分別提高了3.56%、2.14%和2.85%,模型規(guī)模與計算量減少約2 個數量級;與輕量級網絡Squeeze-Net1_0 和MobileNet V2 模型相比,平均準確率分別提高了5.71%和4.99%,計算量減少約1 個數量級;與ShuffleNet V2 原模型相比,其計算量雖增加0.15%,而平均準確率提升了5.71%。相較于經典網絡和輕量級網絡,本文構建的模型有著較低的參數和計算量、較高的準確率。
3.4.2不同注意力機制對網絡模型整體性能的影響
為了驗證本文改進的注意力機制的有效性,在模型中將注意力機制模塊依次替換為4 種目前性能較好的SE[12]、SCSE[21]、CBAM[13]和ECA[14]注意力機制模塊,采用同樣的方法對模型進行遷移學習與訓練,并在本文測試集上進行驗證,結果見表2。
表2 不同注意力機制對網絡性能的影響Table 2 Effects of different attention mechanisms on network performance
由表2 可以看出,與SE、SCSE 和CBAM 相比,嵌入本文提出的通道注意力機制其模型參數量和計算量略有減少,且平均準確率有所提高。由于改進的通道注意力機制兼顧了圖像的細節(jié)特征,可使模型在解決類似本文蘊含豐富紋理信息的問題時其整體性能得以提升。
(1)本文構建的網絡模型,由于在遷移學習與注意力機制等環(huán)節(jié)都充分考慮了鏡質組顯微圖像的特點,對于煤巖鏡質組顯微亞組分識別準確率較高,可達97.85%,并具有較高的可重復性。
(2)與其他直接訓練的卷積神經網絡相比,本文算法網絡規(guī)模與計算量大規(guī)模下降,收斂速度較快,分類的平均準確率較之ShuffleNet V2 原模型可提升5.71%。
(3)改進的通道注意力機制由于兼顧了圖像的紋理特征,對模型的整體性能有明顯的改善,適合于紋理細節(jié)比較突出的圖像分類問題。