孫強,李一全,于占江,李成超,許金凱
長春理工大學(xué)跨尺度微納制造教育部重點實驗室
微型銑刀的直徑一般在0.1mm~1mm之間,加工過程中無法準(zhǔn)確掌握銑刀磨損狀態(tài)。如果保守估計刀具壽命,銑刀無法被充分利用,會降低生產(chǎn)制造效率。而過度估計會使銑刀嚴重磨損甚至破損,造成巨大的經(jīng)濟損失和安全事故。因此掌握銑刀磨損狀態(tài)、及時換刀或停機顯得尤為重要[1]。
近年來隨著深度學(xué)習(xí)理論的出現(xiàn),刀具磨損狀態(tài)預(yù)測取得了突破性進展。刀具磨損狀態(tài)預(yù)測方法主要是利用聲發(fā)射、切削力、電流和振動信號來間接反映刀具磨損狀態(tài),黃鶴翔等[2]提出基于3-KMBS的刀具磨損檢測方法,利用銑削加工中不同軸向的振動和聲發(fā)射信號,結(jié)合多隱層神經(jīng)網(wǎng)絡(luò)建立刀具磨損檢測模型。Shi C.等[3]提出多堆疊稀疏自動編碼網(wǎng)絡(luò)用于提取不同特征域的振動信號,利用非線性回歸函數(shù)對刀具磨損狀態(tài)進行預(yù)測。何彥等[4]提出基于長短時記憶卷積神經(jīng)網(wǎng)絡(luò)的刀具磨損在線監(jiān)測模型,通過提取振動、力和聲發(fā)射信號,并利用線性回歸實現(xiàn)特征到磨損量化值的映射。陳啟鵬等[5]提出基于深度門控循環(huán)單元神經(jīng)網(wǎng)絡(luò)的刀具磨損檢測方法,引入自注意力機制準(zhǔn)確地預(yù)測刀具磨損狀態(tài)?;谛盘柕牡毒吣p狀態(tài)預(yù)測方法可以實時動態(tài)監(jiān)測磨損狀態(tài),但是在提取信號特征過程中容易受環(huán)境因素的影響,從而導(dǎo)致信號失真影響預(yù)測結(jié)果。針對該問題,學(xué)者們提出利用機器視覺獲取銑刀磨損圖像,再利用深度學(xué)習(xí)理論對刀具磨損圖像分類來預(yù)測刀具磨損狀態(tài)。Pagani L.等[6]利用相機拍攝車削加工過程中產(chǎn)生的切屑,再利用深度學(xué)習(xí)理論對切屑顏色進行分析,間接反映刀具磨損狀態(tài)。Bergs T.等[7]利用卷積神經(jīng)網(wǎng)絡(luò)對銑刀磨損圖像分類預(yù)測,在測試集上經(jīng)過測試,模型的準(zhǔn)確度達到95.6%。
ViT模型由Dosovitskiy A.等[8]在ICLR2021上提出,模型在大型數(shù)據(jù)集的分類準(zhǔn)確率高于CNN中的EfficientNet網(wǎng)絡(luò)。本文參考GoogleNet中的Inception結(jié)構(gòu)[9],提出Inception-ViT模型用于銑刀后刀面磨損狀態(tài)預(yù)測分類,通過與ViT模型對比分析,驗證本文提出的預(yù)測模型在小規(guī)模自建數(shù)據(jù)集上預(yù)測分類的可行性。
ViT模型中最重要的部分為Transformer編碼器,主要由多頭注意力機制層和多層感知機層兩個子層組成,為了防止網(wǎng)絡(luò)退化,每個子層都有殘差連接[10]。ViT模型的結(jié)構(gòu)見圖1。
圖1 ViT模型結(jié)構(gòu)
ViT模型對于圖像分類任務(wù)的具體原理如下:
步驟①:首先將大小為(C,H,W)的圖像分割為N個大小為(C,P,P)的不重疊圖像塊。其中,C為圖像通道數(shù);H和W為圖像的高和寬;P為圖像塊的高和寬,參數(shù)關(guān)系式為N=HW/P2。
步驟②:將劃分的圖像塊折疊為詞嵌入向量,并根據(jù)具體位置分配位置嵌入向量。由于Transformer沒有解碼結(jié)構(gòu),需要添加一組隨機向量用于分類。將所有的詞嵌入向量和位置嵌入向量沿著特征方向拼接,得到N+1個大小為T的向量,T=CP2。
步驟③:多頭注意力機制層由多個并行的自注意力機制組成,自注意力機制需要輸入查詢張量Q、鍵張量K和值張量V。三個張量的輸入大小為(B,N+1,T),分別對應(yīng)批次維度、特征數(shù)量和特征長度。如果自注意力機制的輸出為Z,那么轉(zhuǎn)換過程可表示為
(1)
將經(jīng)過多頭注意力機制后的輸出和輸入求和(殘差連接),并按照式(2)~式(4)對輸出結(jié)果進行層歸一化處理,有
(2)
(3)
(4)
式中,x和y分別為輸入張量和輸出張量;ε是一個小的浮點數(shù)常量(為了保證分母不為零);γ和β為縮放向量和平移向量,其元素的數(shù)目和輸入張量通道數(shù)相等。
步驟④:將多頭注意力機制層的輸出作為多層感知器層的輸入,經(jīng)過層歸一化和MLP后與輸入相加(殘差連接),輸出大小為(B,N+1,T)的特征張量。對特征張量第二維度求均值,折疊后的輸出張量大小為(B,T)。
步驟⑤:經(jīng)過L個Transformer編碼器后通過多個全連接層后輸出目標(biāo)分類個數(shù)M,最后通過Softmax輸出每個類別的概率。
Inception-ViT模型主要參考了GoogleNet的Inception結(jié)構(gòu),Inception結(jié)構(gòu)見圖2。整個Inception模塊從Feature1出發(fā)分成了4個分支,每個分支輸出不同大小的特征張量。將4個分支的輸出特征沿通道方向拼接在一起,輸出Feature2。由于ViT模型的主體部分均由全連接層組成,數(shù)據(jù)的第一維為批次大小,第二維為圖像塊的數(shù)量,圖像塊的通道、高度和寬度的維度折疊在一起形成第三維度。
圖2 Inception結(jié)構(gòu)
對于ViT模型,圖像塊的大小會直接影響模型的預(yù)測準(zhǔn)確率。如果圖像塊劃分太小會遺失原始圖像的大量特征信息,導(dǎo)致模型預(yù)測結(jié)果準(zhǔn)確率較低。如果圖像塊劃分太大會導(dǎo)致模型寬度變大,使得模型復(fù)雜度增加,進而導(dǎo)致模型訓(xùn)練速度較慢且容易發(fā)生過擬合。因此本文提出一種Inception-ViT模型,通過融合多個ViT模型分支來提高模型的泛化能力,使用P1,P2和P3三種大小的圖像塊作為分支的Inception-ViT模型的原理見圖3。
圖3 Inception-ViT模型原理
對于輸入大小為(C,H,W)的單張圖像,按照P1,P2和P3劃分不同圖像塊,圖像塊的個數(shù)分別為N1,N2和N3,分別將其折疊成詞嵌入向量和位置嵌入向量。通過Transformer編碼器輸出大小為Q1,Q2和Q3的特征向量,其中Qi=Pi×Pi,i=1,2,3。將3個分支的特征向量經(jīng)過線性層輸出大小相同為Q的特征向量,并通過變換轉(zhuǎn)化為大小為(C,P,P)的特征張量。然后按照通道維度將3個分支進行拼接,得到輸出特征張量,經(jīng)過F1、F2、F3和F4后輸出預(yù)測類型。為了防止預(yù)測模型過擬合,在線性層F1~F4之間加入丟棄層和ReLU激活函數(shù)。
預(yù)測模型的訓(xùn)練需要構(gòu)建特征數(shù)據(jù)集,特征數(shù)據(jù)集主要由訓(xùn)練集和測試集組成。采用1mm的TiN涂層兩刃硬質(zhì)合金立銑刀銑削鈦合金,并利用機器視覺檢測裝置拍攝微型銑刀后刀面圖像,將后刀面圖像作為特征數(shù)據(jù)集。特征數(shù)據(jù)集的數(shù)量為6400,并按照7:3的比例劃分為4480個訓(xùn)練集和1920個測試集。依據(jù)銑刀后刀面底刃直徑減少量作為評價標(biāo)準(zhǔn)將特征數(shù)據(jù)集劃分為無磨損、初期磨損、正常磨損和急劇磨損四種類型,分別用數(shù)字0,1,2,3作為磨損狀態(tài)類型標(biāo)簽。刀具磨損特征數(shù)據(jù)集見圖4。
圖4 特征數(shù)據(jù)集類別
為了提高預(yù)測模型的泛化能力,盡量考慮實際加工過程中微型銑刀后刀面圖像的所有可能性,需要利用數(shù)據(jù)增強方法擴充特征數(shù)據(jù)集,常見的特征數(shù)據(jù)集增強方法有旋轉(zhuǎn)變換、平移變換、加入噪聲和比例變換等[11]。圖像獲取過程中刀具的旋轉(zhuǎn)角度、位置是不確定因數(shù),且受環(huán)境和設(shè)備因素的影響,獲取到的圖像可能會存在噪聲。由于機器視覺檢測裝置的相機與光源參數(shù)已經(jīng)固定,所以亮度、對比度對數(shù)據(jù)集影響較小,但是考慮到環(huán)境的復(fù)雜性,將對比度、亮度也納入增強方法中。此外,通過比例變換可以模擬不同直徑的微型銑刀的磨損圖像,用于后續(xù)實驗驗證預(yù)測模型的泛化能力。本文采用的數(shù)據(jù)增強方法見圖5。
(a)原始圖像 (b)旋轉(zhuǎn)變換 (c)平移變換
本文提出的預(yù)測模型和對比實驗均在Windows操作系統(tǒng)上進行,使用Pytorch框架編寫多融合ViT模型,具體實驗環(huán)境參數(shù)見表1。
表1 實驗環(huán)境配置
Inception-ViT模型經(jīng)多次實驗后確定了最優(yōu)參數(shù),對模型的超參數(shù)設(shè)置如下:模型選擇交叉熵損失函數(shù)、Adam自適應(yīng)優(yōu)化器和固定步長衰減策略。訓(xùn)練迭代次數(shù)為2240次,迷你批次大小為40,學(xué)習(xí)率為1×10-4,固定步長衰減策略的步長為10,衰減率為0.1。
對于本文中的Inception-ViT模型,模型增加了3個分支結(jié)構(gòu),進一步擴充了模型寬度。但是模型太寬會增加模型復(fù)雜度,所以參照ViT-base-16將多融合ViT模型中每個分支的Transformer編碼器層數(shù)設(shè)置為4。對于輸入為3×224×224的圖像,可以劃分出不同大小的圖像塊。本文依據(jù)8×8,14×14,16×16,28×28和32×32圖像塊共設(shè)計了6種模型,各模型參數(shù)見表2。
表2 不同分支結(jié)構(gòu)模型參數(shù)表
在機器學(xué)習(xí)領(lǐng)域,混淆矩陣常常用來評價監(jiān)督學(xué)習(xí)中的模型性能?;煜仃嚨拿恳涣写眍A(yù)測類別,每一行代表數(shù)據(jù)的真實歸屬類別[12]。以二元分類問題為例,數(shù)據(jù)集存在肯定和否定兩類記錄,而分類模型對記錄分類可能作出陽性或陰性判斷。對于分類結(jié)果可作以下判別:作出正確判斷的肯定記錄TP、作出錯誤判斷的肯定記錄FN、作出正確判斷的否定記錄TN和作出錯誤判斷的否定記錄FP。混淆矩陣結(jié)構(gòu)見圖6。
圖6 二元分類任務(wù)混淆矩陣
根據(jù)混淆矩陣可以計算準(zhǔn)確率(ACC)、精準(zhǔn)度(PPV)、召回率(TPR)和F1值(F1-score)等模型評價指標(biāo)。針對本文自建特征數(shù)據(jù)集,ACC用于衡量模型對4種類型刀具磨損的總體精度;PPV和TPR用于衡量模型對于各磨損類型的預(yù)測精度;當(dāng)PPV和TPR結(jié)果出現(xiàn)矛盾時,可以使用F1值來綜合評價模型預(yù)測精度,F(xiàn)1值越大說明模型預(yù)測精度越高[13]。各個評價指標(biāo)的計算過程如下
(5)
(6)
(7)
(8)
(1)不同分支結(jié)構(gòu)對比分析
對迭代次數(shù)間隔5采樣并繪圖,各分支結(jié)構(gòu)模型訓(xùn)練過程中損失數(shù)和準(zhǔn)確率隨迭代次數(shù)變化曲線見圖7和圖8。由圖可見,針對本文自建數(shù)據(jù)集,模型B和E的收斂效果較好。
(a)原始圖像
(a)原始圖像
通過測試集數(shù)據(jù)對各個模型進行測試,測試各模型的準(zhǔn)確率并預(yù)測單張圖像的時間。每個模型分別進行10組實驗,最后求出預(yù)測時間和準(zhǔn)確率的平均值,其結(jié)果見表3。從表中可以看出,模型B的測試準(zhǔn)確率最高為99.6875%,模型A的預(yù)測時間最少為0.0173s。模型E的綜合性能最好,在0.0179s的預(yù)測時間內(nèi)可以達到99.3229%的預(yù)測準(zhǔn)確率。
表3 各模型測試結(jié)果
(2)Inception-ViT與常見模型對比分析
為驗證本文提出的Inception-ViT模型的優(yōu)越性,在測試數(shù)據(jù)集上與ViT、DeiT、TNT和ResNet-50等模型[14-17]進行對比分析,繪制混淆矩陣對比分析圖(見圖9)??梢?,在自建特征數(shù)據(jù)集上,本文提出的Inception-ViT模型測試準(zhǔn)確率最高為99.6875%,較其他模型提高0.05%~2.71%。且Inception-ViT模型對無磨損、初期磨損和正常磨損的預(yù)測較為理想,對于嚴重磨損狀態(tài)僅有6組保守估計。
(a)Inception-ViT
(3)模型泛化能力測試結(jié)果
測試集上的測試結(jié)果因為數(shù)據(jù)集特征相似,無法準(zhǔn)確評估模型的泛化能力。為了測試模型泛化能力,采用直徑為0.8mm的微型銑刀(特征數(shù)據(jù)集所用銑刀直徑為1mm)進行模型泛化能力測試,總計40組數(shù)據(jù)。0.8mm的銑刀磨損狀態(tài)見圖10。
圖10 0.8mm微型銑刀磨損狀態(tài)
模型測試結(jié)果與人工顯微鏡檢測對比結(jié)果見圖11。可見,模型的預(yù)測準(zhǔn)確率為92.5%,與在測試集上的誤差小于8%,具有一定泛化能力。
圖11 模型預(yù)測與人工檢測結(jié)果對比
為了進一步驗證預(yù)測模型的性能,根據(jù)圖11所示混淆矩陣結(jié)果計算出微型銑刀各磨損狀態(tài)下的精準(zhǔn)度、召回率和F1值等性能評價指標(biāo),其結(jié)果見表4??梢姡A(yù)測模型對于正常磨損和嚴重磨損的預(yù)測精準(zhǔn)度較高,且模型對于初期、正常和嚴重磨損狀態(tài)的F1值大于0.9,對于無磨損狀態(tài)的預(yù)測效果較差。由于本文預(yù)測模型主要用于預(yù)測微型銑刀正常磨損和嚴重磨損狀態(tài),所以預(yù)測模型的性能較為理想。
表4 預(yù)測模型性能評價表
針對微型銑刀磨損狀態(tài)預(yù)測問題,依據(jù)Inception結(jié)構(gòu)提出Inception-ViT模型。通過自建微型銑刀后刀面磨損圖像特征數(shù)據(jù)集訓(xùn)練預(yù)測模型進行對比實驗和泛化能力實驗,驗證模型的優(yōu)越性和可行性,可以得出以下結(jié)論。
(1)設(shè)計了6種分支結(jié)構(gòu),通過對比實驗可以得出模型B的準(zhǔn)確率最高,模型A的預(yù)測時間最少,模型E的綜合表現(xiàn)最好。
(2)通過與其他分類模型的對比實驗驗證了本文提出的Inception-ViT模型,測試準(zhǔn)確率最高為99.6875%,較其他模型預(yù)測準(zhǔn)確率最高提高2.71%。
(3)使用直徑為0.8mm微型銑刀測試模型的泛化能力,預(yù)測準(zhǔn)確率為92.5%,與測試集上的測試偏差小于8%,預(yù)測模型具有一定泛化能力。