[Notes] 2018 ALAD:Adversarial Learned Anomaly Detection
[Paper][Code]
?
本文提出了一種基于雙指向性GAN異常檢測的方法ALAD,使用對抗學習到的特征的重建誤差決定樣本是否異常。ALAD建立在確認數據空間和潛在空間的循環一致性損失、穩定的GAN訓練上,達到了SOTA。
AnoGAN首先提出了在眼部圖像上使用一個標準GAN結構做異常檢測的方法,然而在測試階段,為了找到潛在向量z,該方法需要對每個測試樣本解決優化問題,之后通過z計算每個樣本的異常分數,因此在實時應用中或應用于大型數據集時實現起來非常不現實。
本文提出的ALAD算法不僅十分有效,而且測試簡便,利用一類GAN在訓練時同時學習一個編碼網絡,除此之外還結合了一些現有的技術提升編碼網絡、穩定GAN訓練,通過消融實驗顯示這些技術確實提高了異常檢測的效果。
創新點:
建立在雙指向性GAN的結構上,因此也包括一個將數據樣本映射到潛在變量的編碼網絡,避免了昂貴的計算過程,潛在變量在測試時只需要在編碼網絡中通過一個簡單的前向傳播就可以獲得;
評價指標與AnoGAN不同;
結合最新進展以穩定GAN訓練過程。
A. GAN結構
Dzz/ Dxz/ Dxx表示判別器,G為生成器,E為編碼器,這些網絡在訓練時同時學習。
B. 穩定的GAN訓練過程
C. 檢測異常
ALAD是以重建為基礎的異常檢測技術,主要評估測試樣本與GAN的生成圖像差異。正常樣本會通過GAN精準重建,而異常樣本重建的差異將非常大。首先需要使用GAN,對數據分布進行有效建模;同時我們需要學習數據的流形以便恢復精確的潛在表達。這兩個對稱的條件熵循環一致正則項能夠保證這兩點。
十字為異常樣本,圈為正常樣本。
另一個ALAD的重要組成部分是使用異常分數量化原始樣本和重建樣本之間的距離,本文提出在特征空間中計算循環一致性判別器Dxx的樣本距離。
f(·,·) 表示給定一對輸入樣本時Dxx網絡中在logits前一層的激勵函數,A(x) 值越大,樣本更可能為異常。這個損失靈感來源于GAN穩定訓練中的特征匹配損失,但不同的是本文使用的是Dxx判別器(兩個輸入)。
?
實驗
圖像數據 :SVHN & CIFAR-10
以一類為正常圖像,其余9類均為異常。對于每個數據集,使用80%數據用于訓練,剩余20%作為測試數據;在訓練集中額外分出25%作為驗證集,在訓練、驗證集中不使用任何異常樣本。
本文使用AUROC評價模型。
Baseline
- OC-SVM
- Isolation Forests
- DSEBM:基于能量的模型算法中的SOTA
- DAGMM:基于自動編碼器算法中的SOTA
- AnoGAN:唯一基于GAN的異常檢測算法
圖像數據集實驗結果
誤差分析
第一行為正常類別,第二行為正常類別的重建圖像;第三行為異常類別,第四行為異常類別的重建圖像。
消融實驗
SN:譜歸一化
DL:潛在空間中的判別器
不同的異常分數模型實驗
?
?
總結
以上是生活随笔為你收集整理的[Notes] 2018 ALAD:Adversarial Learned Anomaly Detection的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: step计算机语言,STEP7的三种基本
- 下一篇: 读书笔记第五讲:《卓有成效的工程师》