冷思雨,喬嘉慧,王連慶,王 軍*,鄒 亮
1.中國礦業(yè)大學(xué)地下空間智能控制教育部工程研究中心,江蘇 徐州 221116 2.中國礦業(yè)大學(xué)信息與控制工程學(xué)院,江蘇 徐州 221116 3.徐州兆恒工控科技有限公司,江蘇 徐州 221008
羊毛是一種重要的紡織原料,具有手感飽滿、保暖性好等優(yōu)點,根據(jù)產(chǎn)品用途和成本需求的不同,可將羊毛和其他紡織原料進行混紡,在羊毛紡織制品領(lǐng)域里,羊毛成分含量是衡量相關(guān)產(chǎn)品質(zhì)量的一項重要指標(biāo)。然而目前市面上存在一些商家虛假標(biāo)注羊毛含量或者使用化纖材料以次充好的情況,這些劣質(zhì)產(chǎn)品嚴(yán)重?fù)p害了消費者的經(jīng)濟利益和身體健康。為了保障消費者的權(quán)益,加強羊毛制品的質(zhì)量檢測尤為重要。目前檢測部門常用的羊毛制品檢測方法有感官鑒別法、顯微鏡鑒別法、化學(xué)溶解法以及物理方法等[1],這些傳統(tǒng)的檢測方法通常存在一些弊端,如感官鑒別法過分依賴檢驗人員的經(jīng)驗和主觀感受;化學(xué)檢測法檢測周期長,而且具有破壞性,不利于市場的快速檢查,因此開發(fā)一種快速、準(zhǔn)確檢測羊毛制品質(zhì)量的方法十分有必要。
近紅外光譜技術(shù)是一種新興的分析檢測技術(shù)。隨著計算機科學(xué)和化學(xué)計量學(xué)的發(fā)展,近紅外光譜分析技術(shù)憑借其分析速度快、無試劑損耗、非破壞性等技術(shù)優(yōu)勢[2-3]成熟地應(yīng)用于農(nóng)業(yè)[4]、醫(yī)療[5]、食品[6]、石油化工與煤炭[7]等領(lǐng)域。一些研究人員嘗試將近紅外光譜分析技術(shù)用于紡織領(lǐng)域。Sun通過比較偏最小二乘法、極限學(xué)習(xí)機以及最小平方支持向量機的算法性能,證明了近紅外光譜技術(shù)與最小平方支持向量機的結(jié)合,在混紡面料中棉花含量的檢測方面具有很大潛力[8]。Liu等在采用逐次投影算法選擇出有效近紅外光波長的基礎(chǔ)上,建立最小二乘支持向量機模型,實驗表明該模型預(yù)測值的均方根誤差為1.17%,提供了一種簡單、快速且非破壞性測定棉-滌綸紡織品成分的方法[9]。Chen等利用近紅外光譜分別與幾種偏最小二乘法以及彈性成分回歸算法相結(jié)合,模型的預(yù)測均方根誤差為0.35%,證明了彈性成份回歸算法與近紅外光譜結(jié)合應(yīng)用于羊毛含量檢測的可行性[10]。Zhou等使用多元線性回歸的方法實現(xiàn)了羊毛-羊絨混紡產(chǎn)品中的羊絨含量鑒定[11]。Sun等使用自適應(yīng)表示學(xué)習(xí)方法對羊毛和羊絨混合物的近紅外光譜數(shù)據(jù)進行鑒別分類,準(zhǔn)確率可達(dá)96.60%[12]?,F(xiàn)有方法用于羊毛制品質(zhì)量檢測方面性能仍有待提升,仍存在建模時間過長,檢測精度不高以及需要對數(shù)據(jù)波段進行波段篩選等問題。
深度學(xué)習(xí)可以自動從數(shù)據(jù)中學(xué)習(xí)特征且魯棒性極強,在智能語音[13]、圖像處理[14]和生理信號分析[15]中得到了廣泛的應(yīng)用。然而在近紅外光譜分析領(lǐng)域,使用的深度學(xué)習(xí)網(wǎng)絡(luò)結(jié)構(gòu)往往較為簡單[16-17],相關(guān)性能指標(biāo)仍有較大的提升空間。U-Net模型是近年來應(yīng)用于生物醫(yī)學(xué)圖像分割領(lǐng)域的一個重要模型,該模型在下采樣編碼環(huán)節(jié)和上采樣解碼環(huán)節(jié)使用對稱的網(wǎng)絡(luò)結(jié)構(gòu),并通過下采樣和上采樣逐層跳躍連接的方式獲得像素間的關(guān)系。U-Net++模型是在U-Net模型基礎(chǔ)上提出的,這一模型將原網(wǎng)絡(luò)結(jié)構(gòu)中的逐層跳躍連接變?yōu)槊芗奶S短連接,實現(xiàn)了不同層次的特征疊加,充分使用了淺層和深層特征,減少了下采樣編碼器和上采樣解碼器之間的語義鴻溝,充分提取細(xì)節(jié)特征,從而產(chǎn)生更好的預(yù)測效果,本工作將U-Net++模型應(yīng)用于羊毛制品的近紅外光譜分析以實現(xiàn)羊毛含量的定性分析。為了進一步提高模型性能,在網(wǎng)絡(luò)中加入注意力門控機制,提升了網(wǎng)絡(luò)的特征學(xué)習(xí)能力。實驗共利用5 125組羊毛制品的近紅外光譜數(shù)據(jù),經(jīng)十折交叉驗證后模型預(yù)測精度可達(dá)93.59%,與傳統(tǒng)分類模型相比,分類性能得到明顯提升。
將所收集的羊毛樣本分為兩部分,一部分依托專業(yè)檢測機構(gòu),使用次氯酸鹽檢測法來檢測樣本真實羊毛含量;另一部分在實驗室使用波長范圍908.1~1 676.2 nm的MicroNIR Pro手持式光譜儀進行光譜數(shù)據(jù)采集。研究中收集的羊毛制品樣本中所含羊毛量經(jīng)過專業(yè)機構(gòu)測量可分為5%,10%,20%,30%,40%,50%,60%,80%和100%九類。在實驗室使用手持光譜儀采集樣本近紅外光譜數(shù)據(jù)的過程中,使用漫反射模式并每隔10分鐘對背景進行校正,選擇光譜探頭距離羊毛樣本5,6,8,9和19 mm這五個位置對每個樣本進行光譜數(shù)據(jù)采集。同時,為了避免因人為操作失誤等原因引起數(shù)據(jù)誤差,對每一個樣本在相同距離位置均采集五次數(shù)據(jù),即每一個樣本有25組光譜數(shù)據(jù),光譜數(shù)據(jù)波段范圍為908.1~1 676.2 nm,共125個波長點。不同羊毛含量的樣本光譜數(shù)據(jù)如圖1所示,圖中的橫坐標(biāo)為光譜波長,縱坐標(biāo)為羊毛樣本對不同波段的光譜吸收率。近紅外光譜信息來源于分子內(nèi)部含氫基團(如C—H,N—H,O—H等)振動的倍頻吸收與合頻吸收。羊毛的主要成分為蛋白質(zhì),包含了大量含氫基團,在檢測過程中近紅外光的吸收率與羊毛制品中羊毛含量有密切聯(lián)系。從圖1中可以看出,不同羊毛含量的羊毛制品樣本對于近紅外光的吸收存在較大的差異。
圖1 羊毛樣本原始光譜數(shù)據(jù)
由于樣本數(shù)量的限制,所采集的光譜數(shù)據(jù)數(shù)量有限,若在此基礎(chǔ)上進行定量回歸分析易造成模型過擬合,因此選擇定性分類分析展開相關(guān)研究。將所采集的217個羊毛樣本根據(jù)羊毛含量的不同分為高、中、低三個類別,其中標(biāo)簽為“羊毛含量低”的樣本有73個,標(biāo)簽為“羊毛含量中等”的樣本有93個,標(biāo)簽為“羊毛含量高”的樣本有51個,并對所有標(biāo)簽進行獨熱編碼(one-hot coding)處理。獨熱編碼是常應(yīng)用于數(shù)據(jù)標(biāo)簽處理中的一種方法,它可以將每一個樣本標(biāo)簽都映射成唯一矢量。
在采集數(shù)據(jù)的過程中由于儀器、環(huán)境等原因,不可避免地會產(chǎn)生異常樣本,因此針對每一類樣本,分別采用光譜分析中常用的馬氏距離法對異常值進行檢測并剔除,具體過程如下:
(1)根據(jù)式(1)計算所有樣本光譜的平均值,得到平均光譜,其中m代表樣本數(shù)量。
(1)
(2)
(3)
(3)設(shè)置合適的閾值dthreshold并與馬氏距離d比較大小,如果被測樣本的馬氏距離小于閾值,則將該樣本判斷為正常樣本,反之則為異常樣本,從而實現(xiàn)對樣本數(shù)據(jù)集的篩選。其中閾值dthreshold的計算公式如式(4)所示,式中e表示調(diào)整閾值范圍參數(shù),σd表示馬氏距離的標(biāo)準(zhǔn)差見式(5)。
dthreshold=d+eσd
(4)
(5)
在實際應(yīng)用中將式(4)中參數(shù)e設(shè)置為3,經(jīng)過該方法共檢測出12組異常樣本,其中包含4組“羊毛含量低”的樣本,3組“羊毛含量中等”樣本以及5組“羊毛含量高”樣本,因此最終用于建模分析的數(shù)據(jù)集中包含205個羊毛樣本,共5 125組光譜數(shù)據(jù)。具體的分類標(biāo)準(zhǔn)以及標(biāo)簽的獨熱編碼結(jié)果如表1所示。
表1 羊毛樣本質(zhì)量等級劃分
將所有樣本數(shù)據(jù)劃分為訓(xùn)練集、驗證集與測試集,劃分比例為8∶1∶1;同時,在模型訓(xùn)練中采用了十折交叉驗證法,讓每一個樣本輪流成為訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù),保證了模型的準(zhǔn)確性和魯棒性。為了防止過擬合,將同一樣本對應(yīng)的所有光譜數(shù)據(jù)劃入同一數(shù)據(jù)集,如訓(xùn)練數(shù)據(jù)或測試數(shù)據(jù)等。
U-Net++網(wǎng)絡(luò)是2020年由Zhou等[18]基于U-Net網(wǎng)絡(luò)[19]提出的一種變體結(jié)構(gòu),這一網(wǎng)絡(luò)結(jié)構(gòu)整體形似字母U,如圖2所示,由一系列卷積塊組成編碼器和解碼器。
圖2 U-Net++網(wǎng)絡(luò)結(jié)構(gòu)圖
U-Net++網(wǎng)絡(luò)結(jié)構(gòu)整體可以看成由兩部分組成,第一部分為編碼器(即下采樣部分),由多層卷積層和池化層搭建而成;第二部分為解碼器(即上采樣部分),將每次上采樣得到的特征信息與對應(yīng)的特征提取層進行拼接融合,并在最后一層輸出分類結(jié)果。U-Net++模型與U-Net相比,最大的區(qū)別是在下采樣和上采樣的過程中加入了密集的跳躍短連接,以X(1, 3)節(jié)點為例,該節(jié)點是由X(1, 0),X(1, 1)以及X(1, 2)拼接而成,這種跳躍連接能夠更加靈活地融合不同深度的特征,有效減小編碼器與解碼器之間的差距,從而更好地挖掘樣本數(shù)據(jù)與標(biāo)簽之間的關(guān)系。
如果x(i,j)代表節(jié)點X(i, j)的節(jié)點輸出特征,那么的x(i,j)如式(6)所示,其中,i表示第i個下采樣層,j表示跳躍連接中第j個卷積層,H[·]表示帶有激活函數(shù)的卷積運算,u(·)表示上采樣,[·]表示疊加操作。即j>0時,該節(jié)點由j+1個輸入構(gòu)成;j=0時,該節(jié)點為下采樣環(huán)節(jié)上的節(jié)點,只接受上一層的輸出。
(6)
圖3 注意力門控模塊結(jié)構(gòu)圖
融合U-Net++和注意力機制使用已劃分好的訓(xùn)練集對模型進行訓(xùn)練,并使用訓(xùn)練好的模型對測試集中的羊毛樣本的羊毛含量等級進行預(yù)測。所建立的U-Net++模型主要由輸入層、卷積層、標(biāo)準(zhǔn)正則化層、最大池化層、全局平均池化層、上采樣層以及注意力門控模塊組成。傳統(tǒng)的U-Net++網(wǎng)絡(luò)主要用于醫(yī)學(xué)圖像分割,對應(yīng)的數(shù)據(jù)一般是二維數(shù)據(jù),而本研究對不同頻段的近紅外光的吸收率為一維數(shù)據(jù)。為此針對原網(wǎng)絡(luò)結(jié)構(gòu)進行了一定改進:(1)不同于二維的圖像數(shù)據(jù),由于近紅外光譜數(shù)據(jù)為一維向量,因此在本文的網(wǎng)絡(luò)中將原網(wǎng)絡(luò)結(jié)構(gòu)中的二維卷積層、池化層以及上采樣層均使用一維的替代。(2)為了產(chǎn)生更具有分辨性的特征信息,將網(wǎng)絡(luò)結(jié)構(gòu)在原網(wǎng)絡(luò)的基礎(chǔ)上增加上了注意力門控模塊。所建立的U-Net++模型參數(shù)設(shè)置如表2所示,網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示。
圖4 Attention U-Net++結(jié)構(gòu)圖
建立的Attention U-Net++模型中,編碼器部分通過對輸入的光譜數(shù)據(jù)進行多次下采樣提取數(shù)據(jù)特征,同時在解碼器部分中加入了注意力門控模塊。在設(shè)計網(wǎng)絡(luò)模型時,合理設(shè)計網(wǎng)絡(luò)結(jié)構(gòu),對模型性能的提高十分重要。本模型參考U-Net++的結(jié)構(gòu),在特征提取部分設(shè)置五層,每一層由一維卷積層、批量正則化層、最大池化層、全連接層組成,每層的具體網(wǎng)絡(luò)參數(shù)結(jié)構(gòu)如表2所示。在上采樣部分同樣設(shè)置為五層,每層經(jīng)過上采樣層之后再與前一層輸出的特征向量通過注意力門控模塊進行融合,以X(1, 3)為例,該節(jié)點的是由X(1, 0),X(1, 1),X(1, 2)先經(jīng)過拼接生成新的特征信息,再將拼接生成的新的特征信息與X(2, 2)共同經(jīng)過注意力門控模塊所得;最后將融合的特征經(jīng)過一維全局平均池化層、Dense層以及輸出層,最終使用softmax函數(shù)得到預(yù)測分類結(jié)果。
表2 下采樣部分每層網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)
研究的模型運行環(huán)境為:Intel(R)Core(TM)i5-10300H CPU;16 GB計算機內(nèi)存;NVDIA GeForce GTX 1650顯卡;使用軟件為PyCharm,并配有NumPy,Pandas,Keras等Python運算庫。
常用的多分類模型評價指標(biāo)有準(zhǔn)確率(Accuracy)、平均準(zhǔn)確率、混淆矩陣等,本文選擇準(zhǔn)確率、召回率(Recall)、精確率(Precision)、F1分?jǐn)?shù)(F1-Score)以及混淆矩陣作為評價指標(biāo)來評價所提出的分類模型預(yù)測精度。以上所提到的評價指標(biāo)計算公式如式(7)—式(10)所示。
(7)
(8)
(9)
(10)
在一般的二分類問題中,真陽性(TP)表示被模型預(yù)測為正的正樣本,真陰性(TN)表示被模型預(yù)測為負(fù)的負(fù)樣本,假陽性(FP)表示被模型預(yù)測為正的負(fù)樣本,假陰性(FN)表示被模型預(yù)測為負(fù)的正樣本。所涉及的分類問題為三分類問題,即如果將“羊毛含量低”這一類別看作正類的話,那么其他兩類都屬于負(fù)類,對于其他兩類以此類推。一般來說,Accuracy的值越接近1,表示模型的分類預(yù)測精度越高。在計算以上幾個評價指標(biāo)時,將三分類問題看作三個二分類問題,分別計算每一類的各項指標(biāo),再根據(jù)每類樣本占所有樣本的比例分配不同的權(quán)重,最后進行加權(quán)平均計算整體樣本的各項指標(biāo)?;煜仃囀窃u價精度的一種標(biāo)準(zhǔn)格式,用n行n列的矩陣形式來表示;每一列代表樣本預(yù)測類別,每一列的總數(shù)表示預(yù)測為該類別的數(shù)據(jù)的數(shù)目;每一行代表樣本實際類別,每一行的總數(shù)表示該類別樣本的個數(shù)。
本工作研究的是分類問題,采用了分類問題中常用的交叉熵?fù)p失(categorical cross entropy)作為損失(loss)函數(shù)來計算預(yù)測結(jié)果與實際值之間的差值,交叉熵?fù)p失函數(shù)公式如式(11)所示,其中M代表類別的數(shù)量;yic代表指示變量,即如果樣本i的真實類別相同等于c就是1,否則為0;pic代表對于觀測樣本i屬于類別c的預(yù)測概率;同時在網(wǎng)絡(luò)訓(xùn)練的過程中所選擇的優(yōu)化器為Adam優(yōu)化器。
(11)
將訓(xùn)練模型中的學(xué)習(xí)率(learning rate)設(shè)置為0.001,批大小(Batchsize)設(shè)置為10,迭代次數(shù)設(shè)置為100次。圖5(a—d)分別為模型在訓(xùn)練過程中訓(xùn)練集和驗證集上的loss值和準(zhǔn)確率的變化趨勢,從訓(xùn)練集的損失函數(shù)變化趨勢可以看出,loss值隨著迭代次數(shù)的增加逐漸減小,其中前20次迭代過程中l(wèi)oss值快速下降,20次之后下降趨勢逐漸平穩(wěn);驗證集在前50次的迭代中還存在明顯的波動,50次迭代后在驗證集上的性能趨于平穩(wěn),模型達(dá)到收斂。在模型訓(xùn)練100次之后保存所訓(xùn)練的模型,對測試集中的光譜數(shù)據(jù)進行測試,并評估模型的性能。
圖5 訓(xùn)練集和驗證集的損失和準(zhǔn)確率變化趨勢
在評估模型性能時采用十折交叉驗證的方式,其中訓(xùn)練集、驗證集以及測試集的比例為8∶1∶1。為避免因同一樣本光譜之間的相似性造成過于樂觀的評估結(jié)果,在劃分?jǐn)?shù)據(jù)集時將屬于同一樣本的光譜數(shù)據(jù)劃分至同一數(shù)據(jù)子集中(如訓(xùn)練集、驗證集或測試集)。表3為所提出的模型經(jīng)過十折交叉驗證之后在訓(xùn)練集、驗證集以及測試集的平均準(zhǔn)確率,該模型在測試集上的預(yù)測精度為93.59%,略低于在訓(xùn)練集上的準(zhǔn)確率。圖6為其中一次交叉驗證結(jié)果繪制的混淆矩陣??梢钥闯觯诸愵A(yù)測效果達(dá)到預(yù)期,尤其是對檢測標(biāo)簽為“羊毛含量低”的樣本,基本可以檢測出羊毛含量低的樣本;同時從表3的訓(xùn)練集和測試集的預(yù)測結(jié)果來看,模型未出現(xiàn)過擬合、欠擬合的現(xiàn)象,模型的性能達(dá)到理想效果。
表3 十折交叉驗證平均結(jié)果
圖6 Attention U-Net++模型一次預(yù)測結(jié)果混淆矩陣
為了評價所采用Attention U-Net++模型的性能,選擇了目前較為常用的分類模型進行對比。所選擇用于對比的模型包括隨機森林模型、支持向量機算法(support vector machine, SVM)模型,卷積神經(jīng)網(wǎng)絡(luò)模型(convolutional neural networks, CNN)以及卷積自編碼(convolutional autoencoder,CAE)模型。進行對比實驗時,隨機森林決策樹數(shù)目設(shè)為200,SVM模型的懲罰系數(shù)設(shè)為2,CNN網(wǎng)絡(luò)模型使用4層卷積,輸出層分類函數(shù)使用Softmax分類函數(shù),優(yōu)化器使用Adam,loss值使用交叉熵?fù)p失函數(shù),CAE模型的編碼器和解碼器都使用3層卷積。幾種模型的分類預(yù)測結(jié)果如表4所示,可以看出,在使用相同的羊毛制品近紅外光譜數(shù)據(jù)對模型進行訓(xùn)練的情況下,本文提出的Attention U-Net++模型預(yù)測準(zhǔn)確率可達(dá)到93.59%,明顯優(yōu)于傳統(tǒng)的機器學(xué)習(xí)方法和神經(jīng)網(wǎng)絡(luò)模型;這是因為本文模型通過不同層次特征之間的融合,縮小了編碼器和解碼器之間的差距,同時注意力門控模塊也可以對重要特征信息進行聚焦,從而提高模型的預(yù)測分類精度。
表4 不同分類模型預(yù)測結(jié)果對比
為了驗證本模型所使用的密集跳躍連接和注意力門控模塊的效果,將提出的Attention U-Net++網(wǎng)絡(luò)與其他U-Net系列網(wǎng)絡(luò)模型(包括U-Net,Attention U-Net以及U-Net++)進行對比實驗,用于進行對比實驗的幾個模型的數(shù)據(jù)集與參數(shù)設(shè)置均與本文模型一致,預(yù)測分類結(jié)果如表5所示。
表5 不同U-Net系列模型預(yù)測結(jié)果對比
從表5可以看出,本文提出的Attention U-Net++模型預(yù)測準(zhǔn)確率為93.59%,召回率為93.53%,精確率為94.24%,F(xiàn)1分?jǐn)?shù)為93.42%,均高于其他三個模型。與U-Net和Attention U-Net網(wǎng)絡(luò)模型相比,本文所使用的模型使用了密集的跳躍短連接代替了原始的簡單逐層連接,實現(xiàn)了不同層次的U-Net網(wǎng)絡(luò)的融合,減小了低層特征和高層特征信息之間的語義鴻溝,充分挖掘數(shù)據(jù)特征信息,因此對模型的預(yù)測精度有所提升,準(zhǔn)確率分別從77.86%和91.86%提高到93.59%。與U-Net和U-Net++網(wǎng)絡(luò)模型相比,本文模型加入了注意力門控模塊,這一模塊通過計算注意力參數(shù)對無關(guān)的特征信息在一定程度上進行抑制,對相關(guān)的特征信息進行重點關(guān)注,從而更有效地提取特征信息,實現(xiàn)更精確的預(yù)測分類。綜上所述,所建立的算法模型通過密集的跳躍短連接以及注意力門控模塊,能夠?qū)崿F(xiàn)對特征信息的有效挖掘和利用,與其他算法相比,各項評價指標(biāo)均有顯著提升。
鑒于近紅外光譜技術(shù)具有效率高、樣本無需預(yù)處理且可實現(xiàn)無損檢測等優(yōu)點,使用手持便攜式近紅外光譜儀獲取羊毛制品的光譜數(shù)據(jù)并結(jié)合深度學(xué)習(xí)技術(shù)提出了一種基于融合注意力機制的改進U-Net++模型,從而實現(xiàn)對羊毛制品中羊毛含量的快速分析。實驗結(jié)果表明所提出的Attention U-Net++模型通過下采樣、跳躍連接以及上采樣等過程可以有效挖掘一維光譜中蘊藏的信息,并用于準(zhǔn)確分類。使用樣本數(shù)據(jù)中10%的數(shù)據(jù)作為測試集對模型進行性能評估發(fā)現(xiàn),本模型能夠?qū)ρ蛎珮颖具M行分類預(yù)測,分類預(yù)測準(zhǔn)確率可達(dá)93.59%,召回率為93.53%,精確率為94.24%,相比傳統(tǒng)的分類模型如RF,SVM,CNN等有著更高的預(yù)測精度。研究結(jié)果也表明了深度學(xué)習(xí)與光譜數(shù)據(jù)的結(jié)合能夠更有效地挖掘數(shù)據(jù)所含的深層特征信息,將設(shè)計更加精巧的深度學(xué)習(xí)網(wǎng)絡(luò)引入近紅外光譜分析領(lǐng)域,為檢測技術(shù)提供了一種新的思路。