羅月童,李 超,周 波,張延孔
(合肥工業(yè)大學(xué)計(jì)算機(jī)與信息學(xué)院,安徽 合肥 230601)
產(chǎn)品表面缺陷檢測(cè)是工業(yè)生產(chǎn)的重要環(huán)節(jié)。人工檢測(cè)具有工作量大、結(jié)果不穩(wěn)定等問題[1]。得益于深度學(xué)習(xí)的優(yōu)良性能,基于機(jī)器視覺的自動(dòng)工業(yè)缺陷檢測(cè)正在獲得越來越廣泛的應(yīng)用。雖然基于深度學(xué)習(xí)的分類算法的性能已經(jīng)非常高,但在實(shí)際應(yīng)用中,基于深度學(xué)習(xí)的產(chǎn)品缺陷檢測(cè)模型仍面臨以下2個(gè)挑戰(zhàn):(1)存在易混淆缺陷,即2種或多種缺陷非常相似,影響分類精度;(2)對(duì)缺陷分類精度要求非常高。所以,雖然易混淆缺陷通常比較少,但會(huì)導(dǎo)致分類精度不能滿足工業(yè)生產(chǎn)的要求,減少易混淆缺陷對(duì)分類精度的影響具有重要意義。
在工業(yè)產(chǎn)品上,雖然某些缺陷的成因不同使得處理方式也不同,但其視覺外觀非常類似,這樣基于機(jī)器視覺的分類方法難以區(qū)分這些缺陷。如圖1所示,CMOS(Complementary Metal Oxide Semiconductor)產(chǎn)品表面的殘膠和臟污2種缺陷,前者導(dǎo)致產(chǎn)品報(bào)廢,后者只需要用酒精擦拭處理即可,但它們視覺外觀非常相似,本文稱這類缺陷為易混淆缺陷。易混淆缺陷通常處于不同類型缺陷的交叉地帶,屬于一種重疊數(shù)據(jù)[2]。重疊數(shù)據(jù)會(huì)讓類別之間的特征邊界變得模糊,導(dǎo)致分類模型難以學(xué)習(xí)到正確的分類邊界,進(jìn)而影響分類的準(zhǔn)確性[3]。文獻(xiàn)[4]提出調(diào)整支持向量機(jī)SVM(Support Vector Machine)以處理重疊數(shù)據(jù);文獻(xiàn)[5]專注于通過修改樸素貝葉斯算法來優(yōu)化分類算法。目前缺少面向深度學(xué)習(xí)的重疊數(shù)據(jù)優(yōu)化方法研究。
Figure 1 Examples of confusable defects on the surface of industrial products圖1 工業(yè)產(chǎn)品表面易混淆缺陷實(shí)例
雖然應(yīng)用更復(fù)雜的模型、準(zhǔn)備更豐富的數(shù)據(jù)能在一定程度上減少易混淆數(shù)據(jù)的影響,但是,一方面代價(jià)較大,另一方面難以從根本上解決上述2個(gè)挑戰(zhàn)。本文提出一種新的思路,將易混淆缺陷作為一個(gè)或多個(gè)被稱為虛缺陷的新缺陷類型,讓深度學(xué)習(xí)網(wǎng)絡(luò)把易混淆缺陷分為虛缺陷,同時(shí)保證其他缺陷能夠被準(zhǔn)確分類。雖然易混淆缺陷沒有被分開,仍需要進(jìn)一步人工處理,但因?yàn)樗鼈兺ǔU急群苌?所以額外處理的代價(jià)不大。
當(dāng)前,生產(chǎn)實(shí)踐中通常用如下2種方法處理易混淆缺陷:(1)手動(dòng)挑選出易混淆缺陷,但工作量大且難度高;(2)通過算法輔助,將類別間分類錯(cuò)誤的數(shù)據(jù)直接作為新的虛缺陷進(jìn)行反復(fù)迭代,因?yàn)槠涮幚砹鞒坦潭?本文稱之為固定算法。雖然方法2相對(duì)效率更高,但因?yàn)楣潭ㄋ惴▋H將分類錯(cuò)誤數(shù)據(jù)當(dāng)作易混淆缺陷,往往會(huì)遺漏潛在的易混淆缺陷,導(dǎo)致效果不佳。
可視分析將機(jī)器智能和人類的直覺、頓悟等智能相結(jié)合,在解決模糊問題上有巨大優(yōu)勢(shì)。已經(jīng)有多位研究人員將可視分析用于優(yōu)化訓(xùn)練數(shù)據(jù),如文獻(xiàn)[6]中提出了交互式可視分析工具Label- Inspect,以識(shí)別數(shù)據(jù)集中不可靠的標(biāo)簽實(shí)例;文獻(xiàn)[7]提出了OoDAnalyzer,對(duì)數(shù)據(jù)集中的異常數(shù)據(jù)OoD(Out-of-Distribution)進(jìn)行分析識(shí)別。因?yàn)橐谆煜毕莶⒉淮嬖诿鞔_的定義和標(biāo)準(zhǔn),需要綜合判斷,所以本文設(shè)計(jì)并開發(fā)一套可視交互系統(tǒng),幫助用戶快速篩選易混淆缺陷、定義虛缺陷。雖然和文獻(xiàn)[5,6]類似,本文也是從可視分析的視角研究訓(xùn)練數(shù)據(jù)的優(yōu)化問題,但本文解決的是全新問題。
綜上所述,本文的主要工作如下所示:
(1)提出了一種基于虛缺陷的易混淆缺陷處理方法,將少量易混淆缺陷劃分為單獨(dú)的虛類別,從而避免對(duì)大量其他缺陷產(chǎn)生影響,提高了分類模型在生產(chǎn)實(shí)踐中的可用性。
(2)設(shè)計(jì)了一套交互式虛缺陷構(gòu)建系統(tǒng),即多視圖關(guān)聯(lián)可視分析系統(tǒng),幫助用戶快速挑選訓(xùn)練數(shù)據(jù)中的易混淆缺陷、設(shè)置虛缺陷的種類和觀察模型的優(yōu)化效果,進(jìn)而實(shí)現(xiàn)基于虛缺陷的易混淆缺陷處理。
本文采用可視分析方法處理訓(xùn)練數(shù)據(jù)中的易混淆缺陷,而且因?yàn)橐谆煜龜?shù)據(jù)是一種重疊數(shù)據(jù),所以將從重疊數(shù)據(jù)分類、面向深度學(xué)習(xí)的可視化2個(gè)方面介紹相關(guān)工作。
在分類問題中,常有不同類別樣本重疊的現(xiàn)象[8],這一現(xiàn)象意味著不同類別的樣本具有相似特征。這些有相似特征的樣本所覆蓋的區(qū)域被稱為重疊區(qū)域[9]。有研究指出許多發(fā)生在類邊界的分類錯(cuò)誤的根本原因就是重疊數(shù)據(jù)的存在[10]。關(guān)于重疊數(shù)據(jù)的研究眾多,比如文獻(xiàn)[11]建議調(diào)整分類算法;文獻(xiàn)[12]通過修改原始數(shù)據(jù)或者附加其他特征來減輕重疊數(shù)據(jù)的影響。
盡管這些方法在特定場(chǎng)景中有效果,但它們是針對(duì)特定的分類算法,所以應(yīng)用于其他算法時(shí)缺少普適性,如針對(duì)SVM的改進(jìn)不能應(yīng)用于深度學(xué)習(xí)網(wǎng)絡(luò)。與上述研究不同,本文從優(yōu)化訓(xùn)練數(shù)據(jù)的角度出發(fā)解決易混淆缺陷數(shù)據(jù)問題,本文方法可以和任何訓(xùn)練類方法相結(jié)合,所以有更好的通用性。
Figure 2 Process of confusable defects separation圖2 易混淆缺陷分離的過程
近年來,可視分析方法被大量用于改進(jìn)深度學(xué)習(xí)方法的性能[13],主要從異常數(shù)據(jù)、數(shù)據(jù)標(biāo)簽和數(shù)據(jù)隱私3個(gè)方面對(duì)數(shù)據(jù)質(zhì)量進(jìn)行改進(jìn)。研究人員采用可視化技術(shù)將各類數(shù)據(jù)映射為圖形元素,構(gòu)造交互式分析環(huán)境,以支持用戶識(shí)別、理解和處理異常。針對(duì)分類標(biāo)簽錯(cuò)誤問題,Xiang等[14]設(shè)計(jì)了層次化 TSNE(T-distributed Stochastic Neighbor Embedding)方法,以查看圖像數(shù)據(jù)集,結(jié)合自動(dòng)糾正算法,迭代地對(duì)標(biāo)簽進(jìn)行糾正。類似地,B?uerle等[15]設(shè)計(jì)了基于矩陣和散點(diǎn)圖的可視化方法,允許用戶迭代地糾正錯(cuò)誤標(biāo)簽和改進(jìn)分類器性能。在眾包模式中,錯(cuò)誤標(biāo)簽往往集中在部分參與人的標(biāo)注結(jié)果上。針對(duì)該問題,Park等[16]設(shè)計(jì)了一個(gè)可視分析系統(tǒng),用于改善臨床圖像數(shù)據(jù)眾包標(biāo)注參與人的工作質(zhì)量。
與上述面向深度學(xué)習(xí)的可視化方法類似,本文設(shè)計(jì)了一套虛缺陷劃分可視化系統(tǒng),幫助用戶挑選易混淆缺陷、定義虛缺陷,從而實(shí)現(xiàn)基于虛缺陷的易混淆缺陷處理。
本文把易混淆缺陷從大量缺陷中分離出來,使得不同缺陷的樣本之間有清晰邊界,從而減少易混淆缺陷對(duì)分類精度的影響,具體做法如圖2所示。因?yàn)楸疚耐ㄟ^優(yōu)化缺陷數(shù)據(jù)訓(xùn)練集來提升分類器的性能,所以本文方法是分離缺陷數(shù)據(jù)訓(xùn)練集中的易混淆缺陷。如圖2所示有2個(gè)缺陷類別A和B,首先使用當(dāng)前分類器對(duì)訓(xùn)練集進(jìn)行分類,提取分類錯(cuò)誤缺陷并將它們作為初步易混淆缺陷;然后將易混淆缺陷更改類別標(biāo)簽為虛缺陷C,剩下的A′類和B′類之間有清晰邊界;最后使用優(yōu)化后的訓(xùn)練集重新訓(xùn)練分類網(wǎng)絡(luò)。在新網(wǎng)絡(luò)中,原始數(shù)據(jù)類別A類和B類數(shù)據(jù)之間的錯(cuò)誤分類問題被成功弱化,從而提升了各自類別的精度。
交互式易混淆缺陷的分離流程如圖3 所示,整個(gè)過程分成以下3個(gè)步驟:
(1)分類網(wǎng)絡(luò)訓(xùn)練和易混淆缺陷自動(dòng)檢測(cè)。首先將給定的數(shù)據(jù)集以及對(duì)應(yīng)的類型標(biāo)簽作為訓(xùn)練集,通過卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練集中的缺陷特征并對(duì)訓(xùn)練集進(jìn)行分類預(yù)測(cè);然后將分類結(jié)果通過混淆矩陣進(jìn)行展示。通過混淆矩陣,用戶可以輕易地識(shí)別出分類錯(cuò)誤點(diǎn),而分類錯(cuò)誤點(diǎn)也正是易混淆數(shù)據(jù)的一部分。最后從分類錯(cuò)誤缺陷數(shù)據(jù)出發(fā),進(jìn)行易混淆缺陷探索,為分離易混淆缺陷做準(zhǔn)備。
(2)交互式易混淆缺陷數(shù)據(jù)優(yōu)化。首先用戶選擇需要待處理的混淆缺陷類別,通過錯(cuò)誤分類樣本來定位周圍易混淆缺陷的區(qū)域。根據(jù)深度學(xué)習(xí)知識(shí),雖然分布在錯(cuò)誤分類周圍的數(shù)據(jù)并沒有錯(cuò)分成其他類別,但會(huì)有潛在分錯(cuò)的可能性,即潛在的易混淆缺陷數(shù)據(jù)。潛在的缺陷數(shù)據(jù)也需要從訓(xùn)練集中分離出來,使得非虛缺陷的部分能夠滿足分類精度高的要求。本文需要通過虛缺陷劃分系統(tǒng)將該部分?jǐn)?shù)據(jù)劃分成虛缺陷,以達(dá)到從訓(xùn)練數(shù)據(jù)中分離出來的目的。
(3)虛缺陷類別設(shè)置。在完成以上2步后,用戶已經(jīng)對(duì)訓(xùn)練數(shù)據(jù)集中的易混淆缺陷數(shù)據(jù)完成檢索,下一步可以為易混淆數(shù)據(jù)賦予虛缺陷類別標(biāo)簽,以便重新訓(xùn)練深度學(xué)習(xí)分類模型。一般而言,易混淆數(shù)據(jù)在空間中成簇分布,因此可以為每一個(gè)簇賦予一個(gè)新的虛缺陷類別標(biāo)簽。如果虛缺陷種類過多且每個(gè)類別中數(shù)據(jù)量過少,會(huì)導(dǎo)致深度學(xué)習(xí)分類網(wǎng)絡(luò)很難學(xué)習(xí)虛缺陷類別的信息。為防止這一情況,本文充分考慮易混淆數(shù)據(jù)的總體特征相似性,設(shè)計(jì)了虛缺陷類別合并系統(tǒng)。用戶可以將不同簇的虛缺陷類別數(shù)據(jù)合并為一個(gè)虛缺陷類別,從而減少虛缺陷的標(biāo)簽個(gè)數(shù)。
第2步和第3步的內(nèi)容會(huì)在第4節(jié)進(jìn)行詳細(xì)描述。
Figure 3 Process of interactive confusable defects separation圖3 交互式易混淆缺陷分離過程
為支持3.2節(jié)所述的流程及與一線從業(yè)者的溝通,交互式易混淆缺陷分離系統(tǒng)需要完成的任務(wù)如下所示:
(1)分類結(jié)果的可視化呈現(xiàn)。本文需要消除指定缺陷之間的易混淆缺陷對(duì)分類結(jié)果的影響,故需要對(duì)每次處理后的數(shù)據(jù)集進(jìn)行分類并可視化呈現(xiàn)分類結(jié)果,以便用戶對(duì)當(dāng)前數(shù)據(jù)集分類效果進(jìn)行準(zhǔn)確評(píng)估,進(jìn)而判斷是否需要繼續(xù)在訓(xùn)練集上進(jìn)行迭代。
(2)探索易混淆缺陷。在各種研究和實(shí)踐項(xiàng)目中發(fā)現(xiàn),易混淆缺陷不僅包括分類錯(cuò)誤的數(shù)據(jù),還可能包含和分類錯(cuò)誤數(shù)據(jù)相似的數(shù)據(jù),所以還需要呈現(xiàn)數(shù)據(jù)之間的相似性;此外,需要將虛缺陷樣本與訓(xùn)練數(shù)據(jù)集中的正常樣本進(jìn)行比較,以了解虛缺陷樣本與正常樣本之間的相似性和差異性。為此,專家們需要將相似的圖像放在一起,并且以緊湊的方式直觀地顯示出數(shù)據(jù)集中的每個(gè)圖像,這樣他們就可以更輕松地識(shí)別出易混淆缺陷。這一要求也與當(dāng)前識(shí)別數(shù)據(jù)集偏差的常見做法一致。
(3)虛缺陷標(biāo)簽的分配。如果根據(jù)固定算法,將每2種缺陷之間產(chǎn)生的錯(cuò)誤分類數(shù)據(jù)都作為一種虛缺陷,就會(huì)產(chǎn)生過多的虛缺陷。故本文采取合并易混淆缺陷的方式,以減少虛缺陷的類別標(biāo)簽個(gè)數(shù)。合并虛缺陷的目的包括:①減少產(chǎn)生的虛缺陷種類;②保證每種虛缺陷有足夠的訓(xùn)練數(shù)據(jù),以避免模型出現(xiàn)過擬合。虛缺陷標(biāo)簽的分配應(yīng)當(dāng)遵循易混淆缺陷數(shù)據(jù)點(diǎn)距離相近、特征相似的原則。
基于以上需求,本文設(shè)計(jì)虛缺陷劃分系統(tǒng),整體界面如圖4所示。
Figure 4 Overview of the visualization system圖4 可視化系統(tǒng)概覽
4.2.1 混淆矩陣視圖
混淆矩陣刻畫當(dāng)前分類網(wǎng)絡(luò)的分類能力,每一列代表了預(yù)測(cè)分類,每一行代表正確類別。
混淆矩陣視圖包含2個(gè)部分(如圖5所示):左側(cè)虛線框部分刻畫被預(yù)測(cè)為真實(shí)缺陷類別數(shù)據(jù)的情況;右側(cè)表示被預(yù)測(cè)為虛缺陷類別的數(shù)據(jù)分布情況。在左側(cè)部分,左下到右上對(duì)角線上的方格(下文簡(jiǎn)稱對(duì)角方格)表示正確分類的數(shù)據(jù)情況,非對(duì)角線上的方格(下文簡(jiǎn)稱非對(duì)角方格)表示錯(cuò)誤分類的數(shù)據(jù)情況。所有方格中,用灰度的深淺表示落入其中的樣本多少,同時(shí)標(biāo)注了樣本數(shù)量。
Figure 5 Confusion matrix圖5 混淆矩陣
在混淆矩陣中,非對(duì)角方格表示有易混淆缺陷且沒分離出來,需要進(jìn)一步迭代;右側(cè)方格表示被預(yù)測(cè)為虛缺陷的樣本情況。如果非對(duì)角方格中的數(shù)較小,則可認(rèn)為當(dāng)前深度學(xué)習(xí)分類算法有較高的準(zhǔn)確度,能達(dá)到實(shí)際場(chǎng)景需求;反之,則需要進(jìn)一步劃分虛缺陷類別標(biāo)簽,繼續(xù)訓(xùn)練深度學(xué)習(xí)分類模型。
4.2.2 降維投影視圖
為了便于探索易混淆缺陷樣本,需要結(jié)合其他樣本進(jìn)行分析。本文采用TSNE降維技術(shù)將高維圖像數(shù)據(jù)投影為二維平面的散點(diǎn)。TSNE是一種嵌入模型,能夠?qū)⒏呔S空間中的數(shù)據(jù)映射到低維空間,并保留數(shù)據(jù)集的局部特性,使得高維空間的數(shù)據(jù)分布特征可以在低維空間中呈現(xiàn)出來。
為了使系統(tǒng)更加高效地批量處理易混淆缺陷,本文采用如圖6所示的基于密度的采樣以DBS(Density-Based Sampling)構(gòu)建層次結(jié)構(gòu),即在稀疏區(qū)域密集采樣,在密集區(qū)域輕微采樣。該采樣方式在保持?jǐn)?shù)據(jù)分布特征不變的情況下可以檢索到更多的易混淆數(shù)據(jù)。之后,采取2D網(wǎng)格布局對(duì)投影采樣后的數(shù)據(jù)進(jìn)行進(jìn)一步處理。每個(gè)網(wǎng)格含有多個(gè)數(shù)據(jù),并且處于一個(gè)網(wǎng)格內(nèi)的數(shù)據(jù)在位置關(guān)系上是最相近的,因此數(shù)據(jù)特征也最相近的。基于密度的采樣與網(wǎng)格布局相結(jié)合的方法有助于用戶批量選擇易混淆缺陷,提高處理效率。
Figure 6 Dimensionality reduction projection、 DBS &multi-scale meshing圖6 降維投影、DBS和多尺度網(wǎng)格劃分
其中網(wǎng)格布局采用多尺度劃分,用戶通過動(dòng)態(tài)調(diào)整網(wǎng)格尺度來控制網(wǎng)格的布局。用戶通過詳細(xì)視圖觀察,根據(jù)網(wǎng)格內(nèi)數(shù)據(jù)的相似程度,來放大或者縮小網(wǎng)格尺度。選擇適宜的網(wǎng)格大小,從而使得鄰近的含有錯(cuò)誤分類數(shù)據(jù)點(diǎn)的能夠彼此相連,形成區(qū)域。
單個(gè)網(wǎng)格中可能包含零個(gè)、一個(gè)或多個(gè)數(shù)據(jù),本文按下列原則對(duì)其進(jìn)行顏色編碼:
(1)綠色:網(wǎng)格內(nèi)數(shù)據(jù)全部正確分類;
(2)紅色:網(wǎng)格內(nèi)含有錯(cuò)誤分類的數(shù)據(jù);
(3)黃色:網(wǎng)格內(nèi)數(shù)據(jù)已經(jīng)被劃分為虛缺陷。
通過調(diào)整網(wǎng)格尺度交互地確定網(wǎng)格大小。當(dāng)網(wǎng)格呈現(xiàn)為紅色時(shí),表示該網(wǎng)格內(nèi)含有錯(cuò)誤分類的點(diǎn),網(wǎng)格內(nèi)的數(shù)據(jù)包括錯(cuò)誤分類數(shù)據(jù)以及距離相近的數(shù)據(jù),其一起作為虛缺陷數(shù)據(jù)。對(duì)于指定類別之間的紅色網(wǎng)格全部轉(zhuǎn)換成黃色網(wǎng)格,即將該網(wǎng)格內(nèi)數(shù)據(jù)類別標(biāo)簽修改成虛缺陷,達(dá)到將批量易混淆缺陷劃分為虛缺陷的目的。
觀察網(wǎng)格內(nèi)的顏色,如果所產(chǎn)生的黃色網(wǎng)格呈現(xiàn)近似連通狀態(tài),表明該區(qū)域的虛缺陷數(shù)據(jù)在特征上也是相近的,此時(shí)可以將它們合并為一個(gè)虛缺陷類別,從而減少虛缺陷種類。
在識(shí)別易混淆數(shù)據(jù)并劃分成虛缺陷的過程中,需要進(jìn)行添加新標(biāo)簽、過濾數(shù)據(jù)等一系列自定義操作。交互操作臺(tái)在整體流程中起著連接作用,其優(yōu)勢(shì)是能夠自定義用戶的操作交互,過濾出待選的虛缺陷數(shù)據(jù),并完成整體虛缺陷劃分流程。交互操作臺(tái)視圖提供了一組過濾器(如圖7所示):
(1)選擇已有虛缺陷標(biāo)簽:為即將劃分成虛缺陷的數(shù)據(jù)選擇一個(gè)類別標(biāo)簽。
(2)增加已有虛缺陷標(biāo)簽:增加一個(gè)新的虛缺陷,并賦予一個(gè)新的類別標(biāo)簽。
(3)網(wǎng)格選擇尺度:用于劃分網(wǎng)格大小,動(dòng)態(tài)規(guī)劃網(wǎng)格內(nèi)的數(shù)據(jù)樣本的數(shù)量,便于選擇合適數(shù)量的數(shù)據(jù)樣本進(jìn)行虛缺陷劃分處理。
(4)置信度網(wǎng)格劃分:用于將所有數(shù)據(jù)按照置信度的不同區(qū)分開來,來探索潛在易混淆缺陷。
(5)確認(rèn)與訓(xùn)練:對(duì)于找到的虛缺陷進(jìn)行確定,并標(biāo)注為新的類別標(biāo)簽,但也會(huì)保存原有的類別標(biāo)簽,便于后期進(jìn)行迭代回溯。
Figure 7 View of interactive console圖7 交互操作臺(tái)視圖
虛缺陷劃分系統(tǒng)通過如圖8所示標(biāo)準(zhǔn)化交互流程,完成易混淆數(shù)據(jù)到虛缺陷的劃分過程,具體步驟如下所示:
步驟1通過混淆矩陣找到感興趣的類別中錯(cuò)誤分類的數(shù)據(jù)點(diǎn)并在投影視圖中進(jìn)行展示。
步驟2通過交互操作臺(tái)調(diào)整網(wǎng)格尺度,然后在投影圖中選擇紅色網(wǎng)格內(nèi)的數(shù)據(jù)作為虛缺陷的候選數(shù)據(jù)。
步驟3將候選數(shù)據(jù)點(diǎn)圖像與展示錯(cuò)誤分類區(qū)域內(nèi)的數(shù)據(jù)圖像進(jìn)行對(duì)比,專家用戶通過置信度和人為主觀判斷復(fù)查一遍,最終確定虛缺陷數(shù)據(jù)。
Figure 8 Interactive process圖8 交互流程
本文使用生產(chǎn)實(shí)踐中的常用方法——固定算法進(jìn)行實(shí)驗(yàn)比較,以驗(yàn)證本文方法的有效性。
所有實(shí)驗(yàn)均在配備Intel?CoreTMi7-10700K CPU(3.80 GHz)和32 GB內(nèi)存的臺(tái)式計(jì)算機(jī)上進(jìn)行。
5.1.1 數(shù)據(jù)集介紹
本文與領(lǐng)域?qū)<液献?在產(chǎn)品表面缺陷分類任務(wù)中有效識(shí)別易混淆缺陷。訓(xùn)練數(shù)據(jù)集包含4個(gè)類別(如圖9所示):臟污、殘膠、劃痕和崩邊,分別包括200,214,331和200幅圖像,所有數(shù)據(jù)均來自實(shí)際項(xiàng)目。
Figure 9 Four categories: Dirt,glue, scratches and edge breaking(from left to right)圖9 4個(gè)類別:臟污、殘膠、劃痕和崩邊(從左到右)
5.1.2 專家分析流程
將初始數(shù)據(jù)加載到虛缺陷劃分系統(tǒng)后,領(lǐng)域?qū)<彝ㄟ^觀察混淆矩陣,根據(jù)混淆矩陣的顏色深淺以及矩陣上顯示的數(shù)字,選擇指定類別來消除易混淆數(shù)據(jù)對(duì)分類的影響。為了進(jìn)行下一步分析,首先通過調(diào)整交互操作平臺(tái)的網(wǎng)格尺度,來找到合適的網(wǎng)格大小,保證紅色網(wǎng)格內(nèi)有足夠多的數(shù)據(jù)且同一框內(nèi)的數(shù)據(jù)相似度接近,如圖10所示。領(lǐng)域?qū)<野l(fā)現(xiàn)指定類別對(duì)應(yīng)的錯(cuò)誤分類數(shù)據(jù)集中在區(qū)域A中,如圖11所示。劃分好網(wǎng)格尺度后,領(lǐng)域?qū)<野l(fā)現(xiàn)區(qū)域A的紅色數(shù)據(jù)位置相近且呈現(xiàn)連通狀態(tài)。故本文合并虛缺陷標(biāo)簽為一個(gè)標(biāo)簽。然后領(lǐng)域?qū)<覍?duì)紅色框內(nèi)的數(shù)據(jù)通過詳細(xì)視圖進(jìn)行最后一步對(duì)比確認(rèn),將錯(cuò)誤分類的數(shù)據(jù)作為參照,修改標(biāo)簽為虛缺陷同時(shí)修改網(wǎng)格顏色為黃色。然后,領(lǐng)域?qū)<依^續(xù)處理區(qū)域B和區(qū)域C的數(shù)據(jù),通過觀察發(fā)現(xiàn),紅色網(wǎng)格位置較遠(yuǎn),且區(qū)域B和區(qū)域C的數(shù)據(jù)是來自不同類別的錯(cuò)誤分類數(shù)據(jù)。故本文將這2個(gè)區(qū)域的數(shù)據(jù)分別作為1個(gè)虛缺陷進(jìn)行處理,操作步驟同上。
Figure 10 Adjusting grid scale圖10 調(diào)整網(wǎng)格尺度
Figure 11 Data under dimension reduction projection圖11 降維投影下的數(shù)據(jù)
基于新的訓(xùn)練集訓(xùn)練得到新的分類模型,該模型對(duì)數(shù)據(jù)的預(yù)測(cè)精度有一定的提升,如圖12中的混淆矩陣非對(duì)角線數(shù)據(jù)的錯(cuò)誤分類大幅度減少。這表明,原始類別的錯(cuò)誤分類數(shù)量減少了,易混淆數(shù)據(jù)很大程度被隔離開來,驗(yàn)證了本文方法的可用性。
Figure 12 Iterative results display圖12 迭代結(jié)果展示
目前,工業(yè)界普遍采用固定算法對(duì)易混淆缺陷進(jìn)行處理。該方法通過將不同類別的錯(cuò)誤分類數(shù)據(jù)作為易混淆缺陷,將其直接劃分為虛缺陷,從而重新訓(xùn)練深度學(xué)習(xí)模型,實(shí)現(xiàn)從訓(xùn)練集中分離出易混淆缺陷的目標(biāo)。本節(jié)將虛缺陷劃分方法與固定算法進(jìn)行對(duì)比實(shí)驗(yàn)。特別關(guān)注本文方法是否能夠識(shí)別出更多的易混淆數(shù)據(jù),以及是否能夠通過合并標(biāo)簽達(dá)到減少虛缺陷種類的目的。為此,本文設(shè)計(jì)了以下評(píng)估指標(biāo):
(1)迭代次數(shù):迭代的次數(shù)越少,表明所耗費(fèi)的時(shí)間、人力、物力就越少。
(2)虛缺陷種類:新增加的類別標(biāo)簽個(gè)數(shù)。
(3)虛缺陷比例:識(shí)別出的易混淆數(shù)據(jù)轉(zhuǎn)換成虛缺陷的總數(shù)占數(shù)據(jù)集的比例。
(4)識(shí)別精度:指被識(shí)別為真實(shí)類別的數(shù)據(jù)樣本中有多少是識(shí)別準(zhǔn)確的。
(5)平均精度:各個(gè)類別精度的平均值。
本文方法與固定算法的結(jié)果如表1所示。其中,初始分類為直接采用原始數(shù)據(jù)集訓(xùn)練得到的分類結(jié)果,本文結(jié)果經(jīng)過了如圖12所示的2輪迭代。
由表1可知,在初始分類結(jié)果當(dāng)中,平均精度不高,存在類別之間錯(cuò)誤分類的情況;劃分虛缺陷后,分類精度得到大幅度提升,相比于初始類別和固定算法,精度分別提升了4.6%和1.9%。另外,虛缺陷劃分方法相比于固定算法能夠以更少的迭代次數(shù)識(shí)別出更多的易混淆缺陷,使用的虛缺陷種類更少。
Table 1 Performance comparison of fixed algorithm and virtual defect division method表1 固定算法和虛缺陷劃分方法性能對(duì)比
數(shù)據(jù)集中的不同類別的缺陷識(shí)別精度提升效果如表2所示。由表 2可知,本文方法使臟污和殘膠的錯(cuò)誤分類大大減少,分類識(shí)別精度相比于初始分類的分別提升了13.1%和7.4%。這表明虛缺陷劃分方法對(duì)提升指定類別的識(shí)別精度效果顯著,大幅度減少了人工復(fù)檢工作量,表明了本文方法的有效性。
Table 2 Comparison of recognition precision for single category表2 單個(gè)類別識(shí)別精度對(duì)比 %
產(chǎn)品表面缺陷分類是深度學(xué)習(xí)在工業(yè)缺陷檢測(cè)中的常見應(yīng)用,但極少量的易混淆缺陷卻影響了深度學(xué)習(xí)算法在缺陷分類任務(wù)中的可用性。本文通過分離易混淆缺陷的方法來降低其影響,并設(shè)計(jì)了一套分離虛缺陷的可視化解決方法,最后基于實(shí)際工業(yè)數(shù)據(jù)驗(yàn)證了本文方法的有效性。
但是,本文方法依然有較大的改進(jìn)空間,如本文方法依賴混淆矩陣,如果缺陷類別較多,混淆矩陣會(huì)因過于龐大而難以處理。如何提高本文方法的可擴(kuò)展性,以處理包含更多缺陷類別和更大規(guī)模的訓(xùn)練數(shù)據(jù)是后續(xù)需要進(jìn)一步研究的問題。