天天看點

論文閱讀筆記《Surface defect classification of steels with a new semi-supervised learning method》

核心思想

  本文提出一種基于半監督學習的鋼鐵表面缺陷檢測算法(CAE-SGAN),核心思想是将卷積自編碼器(CAE)和對抗生成網絡(GAN)結合起來,先用無标簽樣本對CAE進行無監督訓練,使CAE具備初步特征提取能力,然後引入一個GAN網絡,并把CAE的編碼器部分改造成GAN的區分器,使用帶有标簽的樣本對其訓練。CAE的結構如下圖所示

論文閱讀筆記《Surface defect classification of steels with a new semi-supervised learning method》

  CAE結構還是比較正常,包含編碼器和解碼器兩個部分,主要的改進在于增加了一個直通層(passthrough layer),該結構是來源于YOLOV2的一個設計,将淺層網絡的特征圖,按照各行各列提取的方式,拆分成4個1/2尺寸的小特征圖,然後再與深層網絡的特征圖級聯起來.直通層的結構如下圖所示

論文閱讀筆記《Surface defect classification of steels with a new semi-supervised learning method》

  利用無标簽的圖像和L2重構損失對CAE進行訓練,然後将訓練完成的編碼器取代GAN網絡中的區分器(Discriminator)的部分,GAN網絡如下圖所示

論文閱讀筆記《Surface defect classification of steels with a new semi-supervised learning method》

  不僅如此,還通過增加一個多分類的softmax層,将編碼器改造成一個多分類分類器,輸出的類别包含N+1個,N表示缺陷分類的類别,1表示該圖屬于GAN合成的僞造圖像還是真實的訓練樣本圖像.也就是說,這個分類器即具備分類的功能,也具備區分器的功能.另一個改進的點就是,在對GAN進行訓練的時候,依舊保持重構損失對于CAE的編碼解碼器訓練.整個網絡的結構包含:GAN的生成器(輸入為随機噪聲,輸出為僞造的圖像)+GAN的區分器(同時也是分類器,參數和結構是來自于CAE的編碼器)+CAE的解碼器.

實作過程

網絡結構

  CAE的編碼器結構

論文閱讀筆記《Surface defect classification of steels with a new semi-supervised learning method》

CAE的解碼器結構

論文閱讀筆記《Surface defect classification of steels with a new semi-supervised learning method》

GAN的生成器結構

論文閱讀筆記《Surface defect classification of steels with a new semi-supervised learning method》

損失函數

  損失函數也包含了三個部分:分類損失,GAN損失和重構損失

論文閱讀筆記《Surface defect classification of steels with a new semi-supervised learning method》

  上式的前兩項表示分類損失,第三項表示GAN辨識器損失,下式表示重構損失

論文閱讀筆記《Surface defect classification of steels with a new semi-supervised learning method》

訓練政策

  先用無标簽樣本對CAE進行訓練,再用帶有類别标簽的樣本對GAN和CAE進行聯合訓練.

創新點

  • 将CAE和GAN兩種網絡結合起來,形成一種半監督的缺陷檢測算法
  • 将訓練好的CAE的解碼器改造成集分類器與辨識器于一身的多任務子產品

算法評價

  該算法充分利用了CAE能夠進行無監督訓練的特征提取能力,将訓練好的編碼器改造為分類網絡的特征提取部分,再增加一個softmax層就變成一個分類器了.僅僅這樣還不夠,作者又引入了GAN,利用對抗訓練的方式提高算法的泛化能力.

如果大家對于深度學習與計算機視覺領域感興趣,希望獲得更多的知識分享與最新的論文解讀,歡迎關注我的個人公衆号“深視”。

論文閱讀筆記《Surface defect classification of steels with a new semi-supervised learning method》

繼續閱讀