這項(xiàng)由騰訊優(yōu)圖實(shí)驗(yàn)室的郭冠、高斌斌等研究人員與上海交通大學(xué)合作完成的研究發(fā)表于2025年5月14日的計(jì)算機(jī)視覺頂級(jí)會(huì)議,論文題目為《Few-Shot Anomaly-Driven Generation for Anomaly Classification and Segmentation》。有興趣深入了解的讀者可以通過arXiv:2505.09263v1訪問完整論文,相關(guān)代碼和數(shù)據(jù)也已在GitHub開源(https://github.com/gaobb/AnoGen)。
在現(xiàn)代工業(yè)生產(chǎn)線上,質(zhì)量檢測就像醫(yī)生給病人做體檢一樣重要。當(dāng)一個(gè)產(chǎn)品從生產(chǎn)線下來時(shí),我們需要快速判斷它是否合格,是否存在劃痕、裂紋、變形等各種"毛病"。但這里有個(gè)令人頭疼的問題:正常產(chǎn)品有成千上萬個(gè),而有問題的產(chǎn)品樣本卻少得可憐。這就好比醫(yī)生想學(xué)會(huì)診斷一種罕見疾病,但只見過三個(gè)病例一樣困難。
傳統(tǒng)的解決方案就像用橡皮泥隨便捏幾個(gè)"假病人"給醫(yī)生練手。比如DRAEM方法會(huì)把外部紋理隨機(jī)貼到正常產(chǎn)品上制造"異常",CutPaste方法則是把產(chǎn)品的某個(gè)部分剪下來隨機(jī)粘貼到別處。這些方法雖然能提供訓(xùn)練樣本,但就像用塑料模型訓(xùn)練外科醫(yī)生一樣,與真實(shí)情況相去甚遠(yuǎn)。
騰訊優(yōu)圖實(shí)驗(yàn)室的研究團(tuán)隊(duì)提出了一個(gè)突破性的解決方案:AnoGen(Anomaly-driven Generation)。這套方法就像一個(gè)神奇的"復(fù)印機(jī)",只需要看過三張真實(shí)的異常圖片,就能學(xué)會(huì)生成大量逼真多樣的異常樣本。這些生成的樣本不僅在外觀上接近真實(shí)異常,在語義層面也保持高度一致性。
研究團(tuán)隊(duì)的創(chuàng)新在于將復(fù)雜的異常檢測問題轉(zhuǎn)化為一個(gè)三階段的解決方案。第一階段像是讓AI"記住"真實(shí)異常的特征,第二階段則是指導(dǎo)AI在指定位置生成新的異常,第三階段是用這些生成的異常樣本訓(xùn)練更強(qiáng)大的檢測模型。整個(gè)過程就像培養(yǎng)一個(gè)既懂得"造假"又能識(shí)破真假的專家。
一、當(dāng)"稀有"成為最大障礙
工業(yè)異常檢測面臨的最大挑戰(zhàn)就像收集珍稀動(dòng)物標(biāo)本一樣困難。在實(shí)際生產(chǎn)環(huán)境中,正常產(chǎn)品占據(jù)了絕大多數(shù),而真正的異常樣本卻少之又少。以MVTec工業(yè)異常檢測數(shù)據(jù)集為例,它包含15個(gè)不同類別的工業(yè)產(chǎn)品,總共只有73種異常類型和1258張異常圖片。這個(gè)數(shù)量聽起來不少,但平均到每種異常類型,可能只有十幾張甚至幾張樣本。
這種數(shù)據(jù)稀缺性給AI模型訓(xùn)練帶來了巨大困難。傳統(tǒng)的深度學(xué)習(xí)模型就像饑餓的巨獸,需要吞噬大量數(shù)據(jù)才能學(xué)會(huì)識(shí)別模式。當(dāng)異常樣本稀少時(shí),模型很容易出現(xiàn)"營養(yǎng)不良",要么過度擬合少數(shù)幾個(gè)樣本,要么完全學(xué)不會(huì)識(shí)別異常。
更糟糕的是,不同類型的異常在視覺表現(xiàn)上差異巨大。金屬表面的劃痕、織物上的破洞、電路板上的焊接缺陷,每一種異常都有自己獨(dú)特的"指紋"。這就像要求一個(gè)醫(yī)生同時(shí)精通皮膚科、骨科、心內(nèi)科的診斷,而每個(gè)科室只給他看過三個(gè)病例。
現(xiàn)有的方法試圖通過人工合成異常樣本來解決這個(gè)問題,但效果就像用PS修圖來制造"疾病"一樣不真實(shí)。DRAEM方法會(huì)從外部紋理數(shù)據(jù)庫中隨機(jī)選擇紋理,然后將其混合到正常圖像上。這種做法雖然能產(chǎn)生視覺上看起來"異常"的圖像,但這些人工異常與真實(shí)工業(yè)缺陷之間存在明顯的語義鴻溝。CutPaste方法則更加簡單粗暴,直接剪切圖像的某個(gè)區(qū)域并粘貼到其他位置,這種方法產(chǎn)生的異常更像是圖像編輯的產(chǎn)物,而非真實(shí)的工業(yè)缺陷。
這些傳統(tǒng)合成方法的問題不僅在于視覺效果不夠逼真,更重要的是它們無法捕捉真實(shí)異常的本質(zhì)特征。真實(shí)的工業(yè)缺陷往往遵循特定的物理規(guī)律和形成機(jī)制,比如金屬疲勞導(dǎo)致的裂紋通常呈現(xiàn)特定的分布模式,而焊接缺陷則可能表現(xiàn)為特定的顏色和紋理變化。人工合成的異常樣本無法體現(xiàn)這些深層次的規(guī)律,導(dǎo)致訓(xùn)練出的模型在面對(duì)真實(shí)異常時(shí)表現(xiàn)不佳。
研究團(tuán)隊(duì)意識(shí)到,要解決這個(gè)問題,需要一種能夠理解和模擬真實(shí)異常本質(zhì)特征的方法。這就引出了他們的核心洞察:與其用隨機(jī)的方式制造假異常,不如讓AI從少數(shù)真實(shí)異常中學(xué)習(xí)其本質(zhì)特征,然后生成更多符合這些特征的樣本。這種思路就像讓一個(gè)有天賦的畫家看幾幅梵高的作品后,就能畫出具有梵高風(fēng)格的新作品一樣。
二、擴(kuò)散模型:從噪音中"雕刻"出異常
要理解AnoGen的工作原理,我們首先需要了解擴(kuò)散模型這個(gè)強(qiáng)大的圖像生成工具。擴(kuò)散模型的工作方式就像一個(gè)逆向的"做舊"過程。通常我們看到的做舊是讓新東西變舊,而擴(kuò)散模型則是從完全的"噪音"(可以理解為極度破損的狀態(tài))逐步"修復(fù)"出清晰的圖像。
具體來說,擴(kuò)散模型的訓(xùn)練過程包含兩個(gè)相反的階段。在前向過程中,模型會(huì)給一張清晰的圖片逐步添加噪音,就像把一幅名畫一點(diǎn)點(diǎn)弄臟弄花,直到完全看不出原來的樣子。在反向過程中,模型學(xué)習(xí)如何從這些噪音中逐步"擦拭"出清晰的圖像,就像文物修復(fù)師從滿是污漬的畫作中恢復(fù)出原本的藝術(shù)品。
這個(gè)過程的數(shù)學(xué)描述雖然復(fù)雜,但核心思想很簡單:讓AI學(xué)會(huì)預(yù)測每一步需要去除什么樣的"噪音"。訓(xùn)練完成后,給模型一個(gè)隨機(jī)噪音,它就能通過多步"去噪"過程生成全新的圖像。這就像給一個(gè)雕塑家一塊粗糙的石頭,他能從中雕刻出精美的雕像。
為了讓生成過程可控,研究人員發(fā)展出了條件擴(kuò)散模型。這種模型在生成過程中會(huì)參考額外的"條件信息",比如文字描述、類別標(biāo)簽或者參考圖像。就像給雕塑家不僅提供石頭,還告訴他要雕刻什么樣的形象。潛在擴(kuò)散模型(LDM)進(jìn)一步改進(jìn)了這個(gè)過程,它不直接在像素空間工作,而是在一個(gè)壓縮的"潛在空間"中進(jìn)行,這樣既提高了效率,又保持了生成質(zhì)量。
然而,傳統(tǒng)的條件擴(kuò)散模型面臨一個(gè)關(guān)鍵問題:它們需要大量的訓(xùn)練數(shù)據(jù)來學(xué)習(xí)特定的概念。比如要讓模型學(xué)會(huì)生成"貓"的圖像,需要成千上萬張貓的照片。但在工業(yè)異常檢測場景中,我們可能只有三張真實(shí)的異常圖片,這顯然不足以訓(xùn)練一個(gè)完整的擴(kuò)散模型。
這就是AnoGen方法的巧妙之處。研究團(tuán)隊(duì)意識(shí)到,與其訓(xùn)練整個(gè)擴(kuò)散模型(這需要優(yōu)化數(shù)百萬個(gè)參數(shù)),不如使用一個(gè)預(yù)訓(xùn)練好的擴(kuò)散模型,然后只學(xué)習(xí)一個(gè)小小的"嵌入向量"(embedding vector)。這個(gè)嵌入向量只包含768個(gè)參數(shù),就像一個(gè)濃縮的"基因密碼",記錄了特定異常類型的關(guān)鍵特征。
這種做法的靈感來自于人類學(xué)習(xí)新概念的方式。當(dāng)我們看到一種從未見過的水果時(shí),我們不需要重新學(xué)習(xí)什么是"水果"這個(gè)概念,而是在已有的水果概念基礎(chǔ)上,記住這種新水果的獨(dú)特特征。AnoGen方法也是如此,它在預(yù)訓(xùn)練擴(kuò)散模型已經(jīng)掌握的豐富視覺知識(shí)基礎(chǔ)上,只需要學(xué)習(xí)特定異常類型的獨(dú)特"指紋"。
三、三階段訓(xùn)練:從理解到生成再到應(yīng)用
AnoGen方法的核心創(chuàng)新在于將復(fù)雜的異常檢測問題分解為三個(gè)相互關(guān)聯(lián)的階段,每個(gè)階段都有明確的目標(biāo)和作用。這種分階段的設(shè)計(jì)就像建造房屋一樣,需要先打地基,再建主體結(jié)構(gòu),最后進(jìn)行裝修。
### 第一階段:學(xué)習(xí)異常的"基因密碼"
第一階段的任務(wù)是讓AI理解什么是特定類型的異常。這個(gè)過程就像讓一個(gè)從未見過某種疾病的醫(yī)生仔細(xì)研究幾個(gè)典型病例,記住這種疾病的關(guān)鍵特征。
具體來說,研究團(tuán)隊(duì)會(huì)從真實(shí)異常樣本中隨機(jī)選擇3張圖片作為"支持樣本"(support samples)。然后,他們初始化一個(gè)768維的嵌入向量,這個(gè)向量起初包含的是通用的"缺陷"概念(通過文本編碼器處理"defect"這個(gè)詞得到)。接下來,系統(tǒng)會(huì)凍結(jié)預(yù)訓(xùn)練擴(kuò)散模型的所有參數(shù),只優(yōu)化這個(gè)小小的嵌入向量。
優(yōu)化過程使用的是擴(kuò)散模型的標(biāo)準(zhǔn)損失函數(shù),但加入了一個(gè)重要的改進(jìn):掩碼引導(dǎo)損失。傳統(tǒng)方法會(huì)使用整張圖片來計(jì)算損失,但這樣容易讓模型把注意力放在背景物體上,而不是真正的異常區(qū)域。比如學(xué)習(xí)"破損的蘋果"時(shí),模型可能更多地學(xué)習(xí)了"蘋果"的特征,而不是"破損"的特征。
為了解決這個(gè)問題,研究團(tuán)隊(duì)使用異常區(qū)域的分割掩碼來引導(dǎo)學(xué)習(xí)過程。這就像給醫(yī)生看病例時(shí),用紅筆圈出病變區(qū)域一樣,確保學(xué)習(xí)的重點(diǎn)放在正確的地方。修改后的損失函數(shù)只關(guān)注掩碼區(qū)域內(nèi)的像素,這樣嵌入向量就能更好地捕捉異常本身的特征,而不是被背景信息干擾。
經(jīng)過6000次迭代的訓(xùn)練,這個(gè)嵌入向量就學(xué)會(huì)了特定異常類型的"基因密碼"。這個(gè)過程的計(jì)算量很小,因?yàn)橹恍枰獌?yōu)化768個(gè)參數(shù),而不是整個(gè)擴(kuò)散模型的數(shù)百萬參數(shù)。訓(xùn)練完成后,這個(gè)嵌入向量就像一個(gè)專門識(shí)別某種異常的"探測器",能夠指導(dǎo)擴(kuò)散模型生成相應(yīng)類型的異常。
### 第二階段:精確控制的異常生成
第二階段的目標(biāo)是使用學(xué)到的嵌入向量來生成大量逼真的異常樣本。這個(gè)過程不僅要求生成的異常在視覺上逼真,還要能精確控制異常出現(xiàn)的位置和大小。
生成過程采用了圖像修復(fù)(inpainting)的技術(shù)。具體做法是:首先從訓(xùn)練集中隨機(jī)選擇一張正常圖片作為"畫布",然后在這張圖片上隨機(jī)生成一個(gè)邊界框(bounding box)作為"異常區(qū)域"。接下來,系統(tǒng)會(huì)使用學(xué)到的嵌入向量作為條件,指導(dǎo)擴(kuò)散模型只在邊界框內(nèi)生成異常,而保持框外區(qū)域不變。
這個(gè)過程就像一個(gè)精確的"異常植入手術(shù)"。擴(kuò)散模型在每個(gè)去噪步驟中,都會(huì)將邊界框外的區(qū)域替換為原始正常圖片的對(duì)應(yīng)區(qū)域,而只對(duì)邊界框內(nèi)的區(qū)域進(jìn)行異常生成。這樣既保證了異常的逼真性,又實(shí)現(xiàn)了精確的空間控制。
為了增加生成樣本的多樣性,系統(tǒng)會(huì)為每個(gè)正常圖片生成多個(gè)不同位置和大小的邊界框。邊界框的生成遵循一定的約束條件:位置必須與物體的前景區(qū)域有至少50%的重疊(使用GrabCut算法確定前景),大小則根據(jù)不同異常類型設(shè)置合理的范圍。比如對(duì)于"榛子上的洞"這種異常,邊界框的大小會(huì)限制在圖像寬度或高度的10%到50%之間。
這種生成方式的另一個(gè)優(yōu)勢是自動(dòng)提供了訓(xùn)練標(biāo)簽。生成的每張異常圖片都有對(duì)應(yīng)的邊界框標(biāo)注,這為后續(xù)的監(jiān)督學(xué)習(xí)提供了便利。雖然這些標(biāo)簽是邊界框形式而不是精確的像素級(jí)掩碼,但已經(jīng)足夠用于訓(xùn)練實(shí)用的異常檢測模型。
### 第三階段:弱監(jiān)督學(xué)習(xí)適應(yīng)邊界框標(biāo)簽
第三階段的挑戰(zhàn)在于如何有效利用邊界框形式的標(biāo)簽來訓(xùn)練像素級(jí)的異常分割模型。傳統(tǒng)的異常檢測模型,如DRAEM和DeSTSeg,都假設(shè)有精確的像素級(jí)標(biāo)注,但AnoGen生成的樣本只能提供邊界框級(jí)別的標(biāo)注。
這個(gè)問題的核心在于:邊界框內(nèi)的像素并不都是異常的。就像用方框圈出一個(gè)腫瘤時(shí),框內(nèi)可能還包含正常組織一樣。如果直接把整個(gè)邊界框當(dāng)作異常區(qū)域來訓(xùn)練,會(huì)誤導(dǎo)模型學(xué)習(xí)錯(cuò)誤的模式。
研究團(tuán)隊(duì)提出了一種巧妙的弱監(jiān)督學(xué)習(xí)策略來解決這個(gè)問題。他們的核心思想是:利用模型自身的預(yù)測置信度來過濾掉邊界框內(nèi)的正常像素。具體做法是設(shè)置一個(gè)置信度閾值(通常是0.9),對(duì)于邊界框內(nèi)那些被模型高置信度判斷為正常的像素,將它們的損失設(shè)為零,相當(dāng)于在訓(xùn)練時(shí)忽略這些像素。
這種做法就像訓(xùn)練一個(gè)醫(yī)生時(shí),對(duì)于那些明顯是健康組織的部分,即使它們?cè)?疑似病變"區(qū)域內(nèi),也不強(qiáng)迫醫(yī)生將其診斷為疾病。通過這種方式,模型能夠逐漸學(xué)會(huì)區(qū)分邊界框內(nèi)的真正異常像素和誤包含的正常像素。
修改后的損失函數(shù)包含兩部分:對(duì)于邊界框外的像素,使用標(biāo)準(zhǔn)的分割損失;對(duì)于邊界框內(nèi)的像素,只對(duì)低置信度的正常預(yù)測計(jì)算損失。這種設(shè)計(jì)既保持了對(duì)真正異常像素的學(xué)習(xí),又避免了被錯(cuò)誤標(biāo)簽誤導(dǎo)。
實(shí)驗(yàn)結(jié)果表明,這種弱監(jiān)督學(xué)習(xí)策略效果顯著。在MVTec數(shù)據(jù)集上,使用AnoGen方法訓(xùn)練的DRAEM模型在像素級(jí)異常分割任務(wù)上的AU-PR指標(biāo)從67.4%提升到了73.2%,提升了5.8個(gè)百分點(diǎn)。DeSTSeg模型也從76.6%提升到了78.1%,提升了1.5個(gè)百分點(diǎn)。
四、實(shí)驗(yàn)驗(yàn)證:數(shù)字說話的性能提升
為了驗(yàn)證AnoGen方法的有效性,研究團(tuán)隊(duì)在工業(yè)異常檢測的標(biāo)準(zhǔn)數(shù)據(jù)集MVTec上進(jìn)行了全面的實(shí)驗(yàn)評(píng)估。MVTec數(shù)據(jù)集包含15個(gè)不同類別的工業(yè)產(chǎn)品,涵蓋10種物體(如螺絲、藥丸、電纜等)和5種紋理(如地毯、皮革、瓷磚等),總共包含73種不同的異常類型。
實(shí)驗(yàn)設(shè)計(jì)非常嚴(yán)格,研究團(tuán)隊(duì)為每種異常類型生成了4張異常圖片,應(yīng)用到訓(xùn)練集中的每個(gè)正常樣本上,最終得到了70,760張生成的異常圖片。這個(gè)規(guī)模相當(dāng)可觀,相比原始數(shù)據(jù)集中僅有的1258張真實(shí)異常圖片,生成樣本數(shù)量增加了50多倍。
在定性分析方面,生成的異常圖片展現(xiàn)出了令人印象深刻的真實(shí)性和多樣性。以"破裂的榛子"為例,即使只用3張真實(shí)的破裂榛子圖片作為支持樣本,生成的圖片也能呈現(xiàn)出不同位置、不同大小、不同形狀的裂縫,而且這些裂縫的紋理和顏色都與真實(shí)情況高度相似。對(duì)比傳統(tǒng)的DRAEM和CutPaste方法,AnoGen生成的異常更加自然,沒有明顯的人工痕跡。
在定量評(píng)估方面,結(jié)果同樣令人鼓舞。研究團(tuán)隊(duì)比較了多種不同的異常檢測方法,包括無監(jiān)督方法(如PaDim、PatchCore、CS-Flow、RD4AD)和有監(jiān)督方法(DRAEM、DeSTSeg)。結(jié)果顯示,使用AnoGen增強(qiáng)后的有監(jiān)督方法在所有指標(biāo)上都取得了顯著提升。
具體數(shù)據(jù)方面,在圖像級(jí)異常分類任務(wù)上,DRAEM的AU-ROC從97.1%提升到98.7%,AU-PR從98.5%提升到99.5%。DeSTSeg的AU-ROC從98.3%提升到98.8%,AU-PR從99.4%提升到99.6%。雖然這些提升看起來不大,但要知道基線性能已經(jīng)很高,在這種情況下任何改進(jìn)都是有意義的。
更重要的是像素級(jí)異常分割任務(wù)的結(jié)果。這個(gè)任務(wù)的難度更大,因?yàn)樾枰_定位異常區(qū)域,而且正常像素和異常像素的數(shù)量極不平衡。在這個(gè)任務(wù)上,DRAEM的AU-ROC從96.8%提升到98.1%,AU-PR從67.4%提升到73.2%,提升了5.8個(gè)百分點(diǎn)。DeSTSeg的AU-ROC從98.2%提升到98.8%,AU-PR從76.6%提升到78.1%,提升了1.5個(gè)百分點(diǎn)。
這些數(shù)字背后反映的是實(shí)際應(yīng)用價(jià)值的顯著提升。在工業(yè)質(zhì)量檢測中,幾個(gè)百分點(diǎn)的性能提升往往意味著數(shù)以千計(jì)的缺陷產(chǎn)品被正確識(shí)別,或者數(shù)以萬計(jì)的正常產(chǎn)品免于誤檢??紤]到工業(yè)生產(chǎn)的規(guī)模,這種改進(jìn)的經(jīng)濟(jì)價(jià)值是巨大的。
五、深入細(xì)節(jié):關(guān)鍵技術(shù)的巧妙設(shè)計(jì)
AnoGen方法的成功不僅在于整體架構(gòu)的創(chuàng)新,更在于眾多技術(shù)細(xì)節(jié)的精心設(shè)計(jì)。這些看似微小的改進(jìn),實(shí)際上對(duì)最終性能起到了關(guān)鍵作用。
在嵌入向量學(xué)習(xí)方面,初始化策略證明非常重要。研究團(tuán)隊(duì)沒有使用隨機(jī)初始化,而是選擇用"defect"(缺陷)這個(gè)詞通過CLIP文本編碼器得到的嵌入作為起點(diǎn)。這種做法就像給學(xué)生一個(gè)好的學(xué)習(xí)起點(diǎn),讓他們?cè)谝延兄R(shí)基礎(chǔ)上學(xué)習(xí)新概念,而不是從零開始。實(shí)驗(yàn)表明,這種初始化方式比隨機(jī)初始化能更快收斂,并且最終效果更好。
掩碼引導(dǎo)學(xué)習(xí)的設(shè)計(jì)同樣精妙。傳統(tǒng)的文本驅(qū)動(dòng)圖像生成方法通常使用整張圖片計(jì)算損失,但在異常檢測場景中,這會(huì)導(dǎo)致模型過多關(guān)注背景對(duì)象。通過引入分割掩碼,損失函數(shù)只關(guān)注真正的異常區(qū)域,這讓學(xué)習(xí)過程更加精確。實(shí)驗(yàn)中對(duì)比了有掩碼和無掩碼兩種方式,結(jié)果顯示掩碼引導(dǎo)的版本在AU-PR指標(biāo)上高出2.8個(gè)百分點(diǎn)。
邊界框生成策略也經(jīng)過了仔細(xì)考慮。為了確保生成的異常位置合理,系統(tǒng)會(huì)確保邊界框與前景區(qū)域至少有50%的重疊。同時(shí),不同異常類型有不同的尺寸約束,這些約束基于對(duì)真實(shí)異常的觀察而設(shè)定。比如金屬表面的小劃痕通常只占很小區(qū)域,而織物上的大破洞可能覆蓋相當(dāng)大的面積。
在弱監(jiān)督學(xué)習(xí)中,置信度閾值的選擇經(jīng)過了仔細(xì)的消融實(shí)驗(yàn)。研究團(tuán)隊(duì)測試了從0.8到1.0的不同閾值,發(fā)現(xiàn)0.9是最佳選擇。閾值太低會(huì)保留太多噪聲樣本,閾值太高則會(huì)丟失有用的訓(xùn)練信號(hào)。這個(gè)參數(shù)的調(diào)優(yōu)體現(xiàn)了理論分析與實(shí)驗(yàn)驗(yàn)證的完美結(jié)合。
數(shù)據(jù)增強(qiáng)策略也值得關(guān)注。為了增加生成樣本的多樣性,系統(tǒng)會(huì)為每個(gè)正常圖片生成多個(gè)不同的邊界框,每個(gè)邊界框?qū)?yīng)一個(gè)生成的異常樣本。同時(shí),擴(kuò)散模型本身的隨機(jī)性也為生成過程帶來了自然的多樣性。這種多層次的多樣性確保了訓(xùn)練數(shù)據(jù)的豐富性。
訓(xùn)練策略方面,研究團(tuán)隊(duì)采用了混合訓(xùn)練的方式。在訓(xùn)練異常檢測模型時(shí),每個(gè)批次中50%的樣本來自傳統(tǒng)的合成異常(如DRAEM生成的),50%來自AnoGen生成的異常。這種混合策略比單獨(dú)使用任何一種樣本都要好,因?yàn)樗Y(jié)合了兩種方法的優(yōu)勢:傳統(tǒng)方法提供了豐富的變化性,AnoGen方法提供了語義一致性。
六、全方位對(duì)比:揭示方法的真正價(jià)值
為了全面評(píng)估AnoGen方法的性能,研究團(tuán)隊(duì)進(jìn)行了詳盡的對(duì)比實(shí)驗(yàn),不僅與傳統(tǒng)的異常檢測方法比較,還與最新的生成式方法進(jìn)行了對(duì)比。
與無監(jiān)督方法的對(duì)比顯示了有監(jiān)督學(xué)習(xí)在異常檢測中的巨大優(yōu)勢。PaDim、PatchCore等無監(jiān)督方法雖然不需要異常樣本,但在像素級(jí)分割任務(wù)上的性能明顯不如有監(jiān)督方法。這個(gè)結(jié)果驗(yàn)證了一個(gè)重要觀點(diǎn):即使是少量的異常樣本信息,也能顯著提升檢測性能。
與傳統(tǒng)合成方法的對(duì)比更加直觀地展示了AnoGen的優(yōu)勢。CutPaste方法雖然簡單易用,但生成的異常往往不符合真實(shí)缺陷的分布規(guī)律。DRAEM方法使用外部紋理數(shù)據(jù)庫,雖然能產(chǎn)生視覺上多樣的異常,但這些異常與真實(shí)工業(yè)缺陷在語義上差距較大。相比之下,AnoGen生成的異常不僅視覺逼真,更重要的是在語義上與真實(shí)異常高度一致。
特別值得注意的是與同期工作AnomalyDiffusion的對(duì)比。雖然兩種方法都使用擴(kuò)散模型生成異常,但AnoGen在多個(gè)方面更具優(yōu)勢。首先是計(jì)算效率:AnomalyDiffusion需要訓(xùn)練一個(gè)額外的掩碼生成網(wǎng)絡(luò),顯著增加了計(jì)算成本,而AnoGen只需要優(yōu)化768個(gè)參數(shù)的嵌入向量。其次是生成多樣性:AnomalyDiffusion使用先驗(yàn)知識(shí)約束生成的形狀,這可能限制了異常的多樣性,而AnoGen沒有這種約束,能生成更豐富的異常變體。
消融實(shí)驗(yàn)進(jìn)一步證實(shí)了各個(gè)組件的重要性。研究團(tuán)隊(duì)測試了不同數(shù)量支持樣本的影響,發(fā)現(xiàn)1張圖片太少會(huì)導(dǎo)致生成質(zhì)量不佳,而5張圖片相比3張圖片只有微小改進(jìn)??紤]到實(shí)際應(yīng)用中異常樣本的稀缺性,3張支持圖片是一個(gè)很好的平衡點(diǎn)。
不同支持樣本集合的實(shí)驗(yàn)也很有啟發(fā)性。即使同一類異常,不同的支持圖片集合會(huì)產(chǎn)生略有不同的生成結(jié)果。這反映了方法的一個(gè)特點(diǎn):它能夠?qū)W習(xí)并放大支持集合中的特定特征。雖然這可能帶來一定的偏差,但總體上生成的異常仍然保持語義正確性。
掩碼引導(dǎo)學(xué)習(xí)的消融實(shí)驗(yàn)清楚地顯示了其重要性。沒有掩碼引導(dǎo)時(shí),生成的圖片往往更像是在生成整個(gè)對(duì)象(比如"瓶子"),而不是特定的異常(比如"破損的瓶子")。這個(gè)結(jié)果強(qiáng)調(diào)了精確學(xué)習(xí)目標(biāo)的重要性。
置信度閾值的敏感性分析表明,該方法對(duì)這個(gè)超參數(shù)并不過分敏感。在0.85到0.95的范圍內(nèi),性能都保持在較高水平,這說明方法具有良好的魯棒性。
七、實(shí)際應(yīng)用:從實(shí)驗(yàn)室到生產(chǎn)線
AnoGen方法的設(shè)計(jì)充分考慮了實(shí)際工業(yè)應(yīng)用的需求和約束。在真實(shí)的工業(yè)環(huán)境中,異常檢測系統(tǒng)需要滿足多個(gè)嚴(yán)格要求:高準(zhǔn)確率、低誤報(bào)率、快速響應(yīng)、易于部署等。
從部署角度看,AnoGen的三階段設(shè)計(jì)非常適合工業(yè)場景。第一階段的嵌入學(xué)習(xí)只需要進(jìn)行一次,學(xué)到的嵌入向量可以保存下來重復(fù)使用。第二階段的樣本生成可以離線進(jìn)行,不影響在線檢測的速度。第三階段訓(xùn)練得到的檢測模型就是最終部署的系統(tǒng),其推理速度與傳統(tǒng)方法相當(dāng)。
從數(shù)據(jù)需求角度看,AnoGen大大降低了異常樣本收集的門檻。傳統(tǒng)的有監(jiān)督學(xué)習(xí)方法需要大量標(biāo)注樣本,這在工業(yè)環(huán)境中往往難以滿足。而AnoGen只需要3張異常圖片就能啟動(dòng),這個(gè)要求在大多數(shù)工業(yè)場景中都是可以滿足的。即使是剛投產(chǎn)的新產(chǎn)品,通常也能在短期內(nèi)收集到幾個(gè)異常樣本。
從成本效益角度看,AnoGen提供了很好的投入產(chǎn)出比。收集3張異常圖片的成本微乎其微,而獲得的性能提升卻是顯著的。在工業(yè)質(zhì)量檢測中,即使1%的性能提升也可能對(duì)應(yīng)數(shù)十萬元的經(jīng)濟(jì)價(jià)值,更不用說5%以上的大幅提升。
方法的通用性也值得稱道。AnoGen不依賴于特定的產(chǎn)品類型或異常種類,可以輕松擴(kuò)展到新的應(yīng)用場景。當(dāng)工廠引入新產(chǎn)品線時(shí),只需要收集幾個(gè)異常樣本,就能快速建立針對(duì)性的檢測系統(tǒng)。
然而,方法也存在一些限制需要注意。首先是對(duì)支持樣本質(zhì)量的依賴。如果提供的3張異常圖片不能很好地代表該類異常的特征,生成的樣本質(zhì)量會(huì)受到影響。其次是邊界框標(biāo)注的粗糙性。雖然弱監(jiān)督學(xué)習(xí)能夠緩解這個(gè)問題,但精確的像素級(jí)標(biāo)注仍然能帶來更好的效果。
另一個(gè)考慮是計(jì)算資源需求。雖然AnoGen的訓(xùn)練成本相對(duì)較低,但仍然需要GPU支持。對(duì)于小規(guī)模工廠或資源受限的環(huán)境,這可能是一個(gè)障礙。不過,考慮到現(xiàn)在GPU的普及程度和云計(jì)算服務(wù)的便利性,這個(gè)問題正在逐步緩解。
從長期發(fā)展角度看,AnoGen代表了一個(gè)重要的研究方向:如何在數(shù)據(jù)稀缺的條件下實(shí)現(xiàn)高質(zhì)量的AI應(yīng)用。這個(gè)問題不僅存在于工業(yè)異常檢測中,在醫(yī)療診斷、安全監(jiān)控、環(huán)境監(jiān)測等眾多領(lǐng)域都有類似挑戰(zhàn)。AnoGen提供的解決思路——利用生成模型擴(kuò)充稀缺樣本——具有廣闊的應(yīng)用前景。
八、技術(shù)細(xì)節(jié):算法實(shí)現(xiàn)與工程考量
深入了解AnoGen的技術(shù)實(shí)現(xiàn)細(xì)節(jié),我們發(fā)現(xiàn)研究團(tuán)隊(duì)在算法設(shè)計(jì)和工程實(shí)現(xiàn)方面都做了大量精細(xì)的工作。這些細(xì)節(jié)雖然看似微小,但對(duì)方法的成功起到了關(guān)鍵作用。
在擴(kuò)散模型的選擇上,研究團(tuán)隊(duì)使用了Stable Diffusion這個(gè)經(jīng)過大規(guī)模預(yù)訓(xùn)練的模型。這個(gè)選擇很有戰(zhàn)略眼光,因?yàn)镾table Diffusion已經(jīng)在數(shù)以億計(jì)的圖像上訓(xùn)練過,具備了豐富的視覺知識(shí)和強(qiáng)大的生成能力。相比從頭訓(xùn)練一個(gè)擴(kuò)散模型,這種做法不僅節(jié)省了計(jì)算資源,還確保了生成質(zhì)量。
嵌入向量的維度設(shè)置(768維)也是經(jīng)過考慮的。這個(gè)維度既足夠表達(dá)復(fù)雜的異常特征,又不會(huì)導(dǎo)致過擬合。實(shí)驗(yàn)表明,更高的維度并不能帶來明顯的性能提升,反而可能增加過擬合的風(fēng)險(xiǎn)。
在訓(xùn)練過程中,學(xué)習(xí)率的設(shè)置(0.005)和訓(xùn)練輪數(shù)(6000次)都經(jīng)過了精心調(diào)優(yōu)。學(xué)習(xí)率太高會(huì)導(dǎo)致訓(xùn)練不穩(wěn)定,太低則會(huì)影響收斂速度。6000次迭代在大多數(shù)情況下都能實(shí)現(xiàn)很好的收斂,既保證了效果又控制了訓(xùn)練時(shí)間。
邊界框的生成策略融合了多種考慮。除了與前景區(qū)域的重疊約束外,系統(tǒng)還會(huì)確保邊界框的縱橫比在合理范圍內(nèi),避免生成過于細(xì)長或過于扁平的區(qū)域。同時(shí),邊界框的大小會(huì)根據(jù)異常類型進(jìn)行調(diào)整,比如表面劃痕通常比較細(xì)小,而結(jié)構(gòu)性損傷可能覆蓋較大區(qū)域。
在圖像預(yù)處理方面,所有圖像都被統(tǒng)一調(diào)整到256×256像素,這是Stable Diffusion的標(biāo)準(zhǔn)輸入尺寸。對(duì)于原本分辨率較高的工業(yè)圖像,這種調(diào)整可能會(huì)丟失一些細(xì)節(jié)信息,但考慮到方法的整體效果,這個(gè)權(quán)衡是值得的。
弱監(jiān)督學(xué)習(xí)中的置信度計(jì)算使用了Sigmoid函數(shù)的輸出,這確保了置信度值在0到1之間。閾值的設(shè)置(0.9)意味著只有那些被模型非常確信為正常的像素才會(huì)被過濾掉,這種保守的策略有助于保留更多有用的訓(xùn)練信號(hào)。
在數(shù)據(jù)增強(qiáng)方面,除了邊界框位置和大小的隨機(jī)變化外,系統(tǒng)還可以引入其他形式的增強(qiáng),比如輕微的旋轉(zhuǎn)、亮度調(diào)整等。不過研究團(tuán)隊(duì)發(fā)現(xiàn),擴(kuò)散模型本身的隨機(jī)性已經(jīng)提供了足夠的多樣性,額外的增強(qiáng)帶來的收益有限。
模型評(píng)估使用了工業(yè)異常檢測的標(biāo)準(zhǔn)指標(biāo):AU-ROC和AU-PR。特別是AU-PR指標(biāo),由于正常樣本和異常樣本的極度不平衡,這個(gè)指標(biāo)能更好地反映模型在實(shí)際應(yīng)用中的性能。研究團(tuán)隊(duì)還計(jì)算了像素級(jí)和圖像級(jí)兩個(gè)層面的指標(biāo),全面評(píng)估了方法的效果。
在代碼實(shí)現(xiàn)方面,研究團(tuán)隊(duì)基于PyTorch框架開發(fā),充分利用了現(xiàn)有的擴(kuò)散模型庫。這種做法不僅加速了開發(fā)過程,還確保了代碼的可靠性和可維護(hù)性。所有代碼都已開源,便于其他研究者復(fù)現(xiàn)和改進(jìn)。
九、局限性與改進(jìn)方向
雖然AnoGen方法取得了顯著的成功,但研究團(tuán)隊(duì)也誠實(shí)地指出了方法的局限性,并提出了未來的改進(jìn)方向。這種客觀的態(tài)度體現(xiàn)了嚴(yán)謹(jǐn)?shù)目蒲芯瘛?/p>
首先是對(duì)支持樣本質(zhì)量的依賴性。如果提供的3張異常圖片不夠典型或者存在較大差異,學(xué)到的嵌入向量可能無法很好地代表該類異常的本質(zhì)特征。比如同樣是"金屬劃痕",直線形劃痕和弧形劃痕可能需要不同的表示。目前的方法還缺乏自動(dòng)評(píng)估支持樣本質(zhì)量的機(jī)制。
其次是邊界框標(biāo)注的粗糙性問題。雖然弱監(jiān)督學(xué)習(xí)在一定程度上緩解了這個(gè)問題,但精確的像素級(jí)標(biāo)注仍然能帶來更好的效果。研究團(tuán)隊(duì)正在探索如何在生成過程中獲得更精確的異常掩碼,比如利用注意力機(jī)制或者梯度信息來定位異常區(qū)域。
第三個(gè)限制是方法對(duì)計(jì)算資源的需求。雖然相比訓(xùn)練完整的擴(kuò)散模型,AnoGen的計(jì)算需求已經(jīng)大大降低,但仍然需要GPU支持。對(duì)于一些資源受限的應(yīng)用場景,這可能是一個(gè)障礙。未來可以考慮開發(fā)更輕量級(jí)的版本,或者利用模型壓縮技術(shù)降低部署成本。
在生成多樣性方面,雖然AnoGen比傳統(tǒng)方法有了顯著改進(jìn),但仍然受到支持樣本多樣性的限制。如果支持樣本都來自同一種具體的異常模式,生成的樣本可能缺乏足夠的變化。研究團(tuán)隊(duì)正在研究如何在少量樣本的基礎(chǔ)上實(shí)現(xiàn)更大的生成多樣性。
另一個(gè)有趣的方向是跨域適應(yīng)。目前的方法需要為每種異常類型單獨(dú)學(xué)習(xí)嵌入向量,但在實(shí)際應(yīng)用中,不同異常類型之間可能存在共性。未來可以探索如何利用這種共性來減少對(duì)標(biāo)注樣本的需求,或者實(shí)現(xiàn)從一種異常類型到另一種異常類型的快速適應(yīng)。
在評(píng)估方法方面,目前主要使用的是定量指標(biāo),但異常檢測的效果往往需要結(jié)合具體應(yīng)用場景來評(píng)判。比如在某些關(guān)鍵安全應(yīng)用中,寧可誤報(bào)也不能漏檢;而在另一些成本敏感的應(yīng)用中,降低誤報(bào)率可能更重要。未來需要開發(fā)更細(xì)化的評(píng)估框架,能夠針對(duì)不同應(yīng)用需求進(jìn)行評(píng)估。
在技術(shù)實(shí)現(xiàn)方面,還有很多優(yōu)化空間。比如如何更好地初始化嵌入向量,如何動(dòng)態(tài)調(diào)整訓(xùn)練過程中的各種超參數(shù),如何更有效地融合多種不同的異常信息等。這些看似微小的改進(jìn)累積起來可能帶來顯著的性能提升。
最后是方法的泛化能力問題。雖然在MVTec數(shù)據(jù)集上取得了很好的效果,但這個(gè)數(shù)據(jù)集主要包含的是傳統(tǒng)制造業(yè)的產(chǎn)品。對(duì)于一些新興領(lǐng)域,比如3D打印產(chǎn)品、生物材料、納米器件等,方法的適用性還需要進(jìn)一步驗(yàn)證。
十、未來展望:從研究到產(chǎn)業(yè)化的道路
AnoGen方法的成功不僅是一個(gè)技術(shù)突破,更是連接學(xué)術(shù)研究與工業(yè)應(yīng)用的重要橋梁。從更廣闊的視角來看,這項(xiàng)工作指向了人工智能在工業(yè)4.0時(shí)代的重要作用。
在短期內(nèi),我們可以預(yù)期AnoGen技術(shù)會(huì)在更多工業(yè)場景中得到應(yīng)用。除了傳統(tǒng)的制造業(yè)質(zhì)量檢測,這種技術(shù)還可以擴(kuò)展到食品安全檢測、藥品質(zhì)量控制、基礎(chǔ)設(shè)施維護(hù)等領(lǐng)域。每個(gè)領(lǐng)域都面臨著類似的挑戰(zhàn):正常樣本容易獲得,異常樣本稀少但關(guān)鍵。
從技術(shù)發(fā)展趨勢看,生成式AI與傳統(tǒng)計(jì)算機(jī)視覺的融合正在加速。AnoGen代表了這種融合的一個(gè)典型案例:利用生成模型的強(qiáng)大能力來解決傳統(tǒng)視覺任務(wù)的數(shù)據(jù)稀缺問題。這種思路很可能會(huì)在更多AI應(yīng)用中得到借鑒和發(fā)展。
在產(chǎn)業(yè)化方面,AnoGen的優(yōu)勢在于其實(shí)用性和可部署性。與那些需要大量計(jì)算資源或復(fù)雜基礎(chǔ)設(shè)施的AI方法不同,AnoGen可以相對(duì)容易地集成到現(xiàn)有的工業(yè)系統(tǒng)中。這種特性使得它具備了快速產(chǎn)業(yè)化的潛力。
教育和人才培養(yǎng)也是一個(gè)重要考慮。隨著這類技術(shù)的普及,工業(yè)界需要更多既懂AI技術(shù)又理解工業(yè)需求的復(fù)合型人才。大學(xué)和企業(yè)需要加強(qiáng)合作,培養(yǎng)能夠?qū)⑾冗M(jìn)AI技術(shù)應(yīng)用到實(shí)際工業(yè)問題的人才。
從標(biāo)準(zhǔn)化角度看,異常檢測領(lǐng)域還缺乏統(tǒng)一的評(píng)估標(biāo)準(zhǔn)和部署規(guī)范。AnoGen這樣的方法推動(dòng)了技術(shù)進(jìn)步,但也需要相應(yīng)的標(biāo)準(zhǔn)化工作來確保技術(shù)的可靠應(yīng)用。行業(yè)組織和標(biāo)準(zhǔn)化機(jī)構(gòu)需要及時(shí)跟進(jìn),制定相關(guān)標(biāo)準(zhǔn)。
國際合作也很重要。工業(yè)異常檢測是一個(gè)全球性的需求,不同國家和地區(qū)的工業(yè)特點(diǎn)和挑戰(zhàn)各有不同。通過國際合作,可以讓像AnoGen這樣的技術(shù)在更廣泛的場景中得到驗(yàn)證和改進(jìn)。
從倫理和社會(huì)責(zé)任角度看,AI在工業(yè)檢測中的應(yīng)用需要考慮透明性和可解釋性。雖然AnoGen的檢測準(zhǔn)確率很高,但在一些關(guān)鍵應(yīng)用中,人們?nèi)匀恍枰斫釧I的決策過程。未來的發(fā)展需要在性能和可解釋性之間找到平衡。
環(huán)境影響也是一個(gè)考慮因素。AI模型的訓(xùn)練和部署都會(huì)消耗能源,產(chǎn)生碳排放。像AnoGen這樣相對(duì)輕量級(jí)的方法在這方面有一定優(yōu)勢,但仍然需要持續(xù)關(guān)注和改進(jìn)。
最后,從創(chuàng)新生態(tài)的角度看,AnoGen的開源策略值得贊賞。通過開放代碼和數(shù)據(jù),研究團(tuán)隊(duì)為整個(gè)社區(qū)的發(fā)展做出了貢獻(xiàn)。這種開放的態(tài)度有助于技術(shù)的快速迭代和改進(jìn),也體現(xiàn)了負(fù)責(zé)任的科研態(tài)度。
說到底,AnoGen方法代表了AI技術(shù)發(fā)展的一個(gè)重要方向:從追求通用性轉(zhuǎn)向解決具體問題,從依賴大數(shù)據(jù)轉(zhuǎn)向高效利用小數(shù)據(jù),從純技術(shù)創(chuàng)新轉(zhuǎn)向產(chǎn)業(yè)應(yīng)用導(dǎo)向。這種轉(zhuǎn)變不僅推動(dòng)了技術(shù)進(jìn)步,也為AI在更多領(lǐng)域的應(yīng)用開辟了道路。隨著類似技術(shù)的不斷涌現(xiàn)和完善,我們有理由相信,AI將在工業(yè)智能化的進(jìn)程中發(fā)揮越來越重要的作用,為人類社會(huì)的發(fā)展貢獻(xiàn)更大價(jià)值。
Q&A
Q1:AnoGen方法是什么?它能解決什么問題? A:AnoGen是騰訊優(yōu)圖實(shí)驗(yàn)室開發(fā)的一種AI異常檢測方法,能夠僅用3張真實(shí)異常圖片就生成大量逼真的異常樣本來訓(xùn)練檢測模型。它主要解決工業(yè)質(zhì)量檢測中異常樣本稀少但檢測需求巨大的矛盾,讓AI模型能夠更好地識(shí)別產(chǎn)品缺陷。
Q2:這種方法會(huì)不會(huì)比傳統(tǒng)的異常檢測方法更復(fù)雜難用? A:實(shí)際上相反,AnoGen降低了使用門檻。傳統(tǒng)方法需要大量異常樣本才能訓(xùn)練好模型,而AnoGen只需要3張異常圖片就能開始工作。整個(gè)過程分為三個(gè)階段:學(xué)習(xí)異常特征、生成新樣本、訓(xùn)練檢測模型,每個(gè)階段都相對(duì)簡單易懂。
Q3:AnoGen生成的異常圖片質(zhì)量如何?能達(dá)到什么樣的檢測精度? A:實(shí)驗(yàn)顯示AnoGen生成的異常圖片非常逼真,在MVTec工業(yè)數(shù)據(jù)集上,使用AnoGen訓(xùn)練的DRAEM模型檢測精度從67.4%提升到73.2%,DeSTSeg模型從76.6%提升到78.1%。這種提升在工業(yè)應(yīng)用中意義重大,可以顯著減少漏檢和誤檢。
好文章,需要你的鼓勵(lì)
新加坡國立大學(xué)研究團(tuán)隊(duì)開發(fā)了SPIRAL框架,通過讓AI與自己對(duì)弈零和游戲來提升推理能力。實(shí)驗(yàn)顯示,僅訓(xùn)練AI玩簡單撲克游戲就能讓其數(shù)學(xué)推理能力提升8.6%,通用推理提升8.4%,且無需任何數(shù)學(xué)題目作為訓(xùn)練材料。研究發(fā)現(xiàn)游戲中的三種推理模式能成功轉(zhuǎn)移到數(shù)學(xué)解題中,為AI訓(xùn)練提供了新思路。
同濟(jì)大學(xué)團(tuán)隊(duì)開發(fā)的GIGA-ToF技術(shù)通過融合多幀圖像的"圖結(jié)構(gòu)"信息,創(chuàng)新性地解決了3D相機(jī)噪聲問題。該技術(shù)利用圖像間的不變幾何關(guān)系,結(jié)合深度學(xué)習(xí)和數(shù)學(xué)優(yōu)化方法,在合成數(shù)據(jù)集上實(shí)現(xiàn)37.9%的精度提升,并在真實(shí)設(shè)備上展現(xiàn)出色泛化能力,為機(jī)器人、AR和自動(dòng)駕駛等領(lǐng)域提供更可靠的3D視覺解決方案。
伊利諾伊大學(xué)研究團(tuán)隊(duì)通過對(duì)比實(shí)驗(yàn)發(fā)現(xiàn),經(jīng)過強(qiáng)化學(xué)習(xí)訓(xùn)練的視覺語言模型雖然表現(xiàn)出"頓悟時(shí)刻"現(xiàn)象,但這些自我糾錯(cuò)行為并不能實(shí)際提升推理準(zhǔn)確率。研究揭示了AI模型存在"生成-驗(yàn)證差距",即生成答案的能力強(qiáng)于驗(yàn)證答案質(zhì)量的能力,且模型在自我驗(yàn)證時(shí)無法有效利用視覺信息,為AI多模態(tài)推理發(fā)展提供了重要啟示。
MIT等頂尖機(jī)構(gòu)聯(lián)合提出SparseLoRA技術(shù),通過動(dòng)態(tài)稀疏性實(shí)現(xiàn)大語言模型訓(xùn)練加速1.6倍,計(jì)算成本降低2.2倍。該方法使用SVD稀疏性估計(jì)器智能選擇重要計(jì)算部分,在保持模型性能的同時(shí)顯著提升訓(xùn)練效率,已在多個(gè)任務(wù)上驗(yàn)證有效性。