本文將從以下6個方面介紹:
異常分類
異常檢測的挑戰(zhàn)
異常檢測的模型分類
異常檢測的數(shù)據(jù)集
異常檢測的模型表現(xiàn)對比
結(jié)論和未來方向
一、異常分類
以前傳統(tǒng)關(guān)于異常檢測的分類如圖1(a)所示,分為:
●點異常值:相對于全局其他數(shù)據(jù)的異常實例。
●上下文異常值:上下文異常值通常在它們自己的上下文中具有相對較大/較小的值,但不是全局的。
●集體異常值:被定義為相對于整個數(shù)據(jù)集異常的相關(guān)異常數(shù)據(jù)實例的集合。
但這種分類方式常因為上下文定義邊界模糊,導(dǎo)致集體異常值和上下文異常值的定義邊界也模糊。上下文異常值的上下文在不同文獻中通常非常不同。它們可以是一個小窗口,包含相鄰點或在季節(jié)性方面具有相似相對位置的點。比如圖2中的集體異常值,如果以季節(jié)性方面的上下文考慮,其實也能看做是上下文異常。
圖1:新舊異常分類對比
綜述[5]提出了新的異常分類法,如圖1(b)所示。具體的樣例如下:
圖2:新異常分類下的數(shù)據(jù)樣例
關(guān)于3類Pattern異常,可以基于shapelet函數(shù)來定義:其中, ,X是由多個不同
+頻率的波的值相加得到的。為趨勢項,例如線性函數(shù) 。如果s為相似度度量函數(shù),那么以上3種異常類型可以分別定義為:
●shapelet outliers (異常的局部子序列): 。
●seasonal outliers (異常周期性的局部子序列): 。
●trend outliers (異常趨勢的局部子序列): 。
其中, 為異常判定的閾值。
二、異常檢測的挑戰(zhàn)
綜述[4]介紹了深度異常檢測解決的主要挑戰(zhàn):
●CH1:異常檢測召回率低。由于異常非常罕見且異質(zhì),因此很難識別所有異常。
●CH2:異常通常在低維空間中表現(xiàn)出明顯的異常特征,而在高維空間中變得隱藏且不明顯。
●CH3:正常/異常的數(shù)據(jù)高效學(xué)習(xí)。利用標記數(shù)據(jù)來學(xué)習(xí)正常/異常的表征,對于準確的異常檢測至關(guān)重要。
●CH4:抗噪異常檢測。許多弱/半監(jiān)督異常檢測方法假設(shè)標記的訓(xùn)練數(shù)據(jù)是干凈的,這可能容易受到被錯誤標記為相反類別標簽的噪聲實例的影響。
●CH5:復(fù)雜異常的檢測。現(xiàn)有的大多數(shù)方法都是針對點異常的,不能用于條件異常和組異常,因為它們表現(xiàn)出與點異常完全不同的行為。
●CH6:異常解釋。在許多安全關(guān)鍵領(lǐng)域中,如果將異常檢測模型直接用作黑盒模型,則可能存在一些重大風(fēng)險。
圖3展示了傳統(tǒng)方法和深度方法在不同能力上的區(qū)別,以及不同能力對解決哪些挑戰(zhàn)至關(guān)重要:
圖3:傳統(tǒng)方法和深度方法的能力對比
具體到模型上的挑戰(zhàn),會在下面進行詳細講解。
三、異常檢測的模型分類
不同綜述對時序異常檢測的模型分類方式也挺不同的,比如:
● 綜述[3]:分為統(tǒng)計方法,經(jīng)典機器學(xué)習(xí)方法和使用神經(jīng)網(wǎng)絡(luò)的異常檢測方法。
● 綜述[5]:分為基于預(yù)測偏差的方法,基于時序表征分類的方法,基于子序列不一致性分析的方法。
● 綜述[4]:針對神經(jīng)網(wǎng)絡(luò)算法,分為特征提取的方法,學(xué)習(xí)常態(tài)特征表征的方法,端對端學(xué)習(xí)異常分數(shù)的方法。
我總結(jié)如下:
圖4:時序異常檢測的模型分類
在之前的文章里,統(tǒng)計方法和經(jīng)典機器學(xué)習(xí)的方法基本都已經(jīng)介紹過了,這邊就不重復(fù)介紹了。
圖5:統(tǒng)計方法和經(jīng)典機器學(xué)習(xí)的方法總結(jié)
這里,主要基于綜述[4],介紹下神經(jīng)網(wǎng)絡(luò)下的模型分類,其實zero在知乎已經(jīng)整理了這篇綜述內(nèi)容,寫的很好,強烈建議閱讀文章[6]。
圖6:神經(jīng)網(wǎng)絡(luò)異常檢測方法分類
神經(jīng)網(wǎng)絡(luò)下的模型分類如下:
1. 特征提?。?/strong>deep learning和anomaly detection是分開的,deep learning只負責(zé)特征提取。
2. 常態(tài)特征表征學(xué)習(xí):deep learning和anomaly detection是相互依賴的,一起學(xué)習(xí)正常樣本的有效表征。
●通用常態(tài)特征表征學(xué)習(xí):這類方法最優(yōu)化一個特征學(xué)習(xí)目標函數(shù),該函數(shù)不是為異常檢測而設(shè)計的,但學(xué)習(xí)到的高級特征能夠用于異常檢測,因為這些高級特征包含了數(shù)據(jù)的隱藏規(guī)律。
●依賴異常度量的特征表征學(xué)習(xí):該類方法直接將現(xiàn)有的異常評價指標嵌入表征學(xué)習(xí)的優(yōu)化目標中。
3. 端對端異常分數(shù)學(xué)習(xí):deep learning和anomaly detection是完全一體的,通過端到端的學(xué)習(xí),直接輸出異常分數(shù)。
1. 特征提取
旨在利用深度學(xué)習(xí)從高維和/或非線性可分離數(shù)據(jù)中提取低維特征表征,用于下游異常檢測。特征提取和異常評分完全不相交且彼此獨立。因此,深度學(xué)習(xí)組件僅作為降維工作。
優(yōu)點:
● 很容易獲得大量先進的預(yù)訓(xùn)練深度模型和現(xiàn)成的異常檢測器做特征提取和異常檢測;
● 深度特征提取比傳統(tǒng)線性方法更有效。
缺點:
● 特征提取和異常評分是獨立分開的,通常會導(dǎo)致次優(yōu)的異常評分;
● 預(yù)訓(xùn)練的深度模型通常僅限于特定類型的數(shù)據(jù)。(感覺更適用于圖像,因為圖像可以做分類預(yù)訓(xùn)練,個人對時序預(yù)訓(xùn)練了解的不是很多)。
2. 通用常態(tài)特征表征學(xué)習(xí)
這類方法最優(yōu)化一個特征學(xué)習(xí)目標函數(shù),該函數(shù)不是為異常檢測而設(shè)計的。
但學(xué)習(xí)到的高級特征能夠用于異常檢測,因為這些高級特征包含了數(shù)據(jù)的隱藏規(guī)律。例如:AutoEncoder、GAN、預(yù)測模型。
優(yōu)點:
● AE:方法簡單,可用不同AE變種;
● GAN:產(chǎn)生正常樣本的能力很強,而產(chǎn)生異常樣本的能力就很弱,因此有利于進行異常檢測;
● 預(yù)測模型:存在大量序列預(yù)測模型,能學(xué)到時間和空間的依賴性。
缺點:
● AE:學(xué)習(xí)到的特征表征可能會因為“訓(xùn)練數(shù)據(jù)中不常見的規(guī)律、異常值或噪聲“而產(chǎn)生偏差;
● GAN:訓(xùn)練可能存在多種問題,比如難以收斂,模式坍塌。因此,基于異常檢測的 GANs 訓(xùn)練或難以進行;
● 預(yù)測模型:序列預(yù)測的計算成本高。
另外,以上方法都有兩個共性問題:
●都假設(shè)訓(xùn)練集是正常樣本,但若訓(xùn)練集中混入噪聲或異常值,會給模型表征學(xué)習(xí)能力帶來偏差;
●沒有將異常評價納入到模型優(yōu)化的目標當(dāng)中,最后檢測的結(jié)果可能是次優(yōu)的。
3. 依賴異常度量的特征表征學(xué)習(xí)
該類方法直接將現(xiàn)有的異常評價指標嵌入表征學(xué)習(xí)的優(yōu)化目標中,解決了通用常態(tài)特征表征學(xué)習(xí)中第二個共性問題。例如Deep one-class SVM,Deep one-class Support Vector Data Description (Deep one-class SVDD)等。
優(yōu)化:
● 基于距離的度量:比起傳統(tǒng)方法,能處理高維空間數(shù)據(jù),有豐富的理論支持;
● 基于one-class分類的度量:表征學(xué)習(xí)和one-class模型能一起學(xué)習(xí)更好的特征表示,同時免于手動選擇核函數(shù);
● 基于聚類的度量:對于復(fù)雜數(shù)據(jù),可以讓聚類方法在深度專門優(yōu)化后的表征空間內(nèi)檢測異常點。
缺點:
● 基于距離的度量:計算量大;
● 基于one-class分類的度量:在正常類內(nèi)分布復(fù)雜的數(shù)據(jù)集上,該模型可能會無效;
● 基于聚類的度量:模型的表現(xiàn)嚴重依賴于聚類結(jié)果。也受污染數(shù)據(jù)的影響。
以上缺點在于:沒辦法直接輸出異常分數(shù)。
3. 端對端異常分數(shù)學(xué)習(xí)
通過端到端的學(xué)習(xí),直接輸出異常分數(shù)。個人對這部分的了解是一片空白,只能初略轉(zhuǎn)述下綜述中的內(nèi)容,有興趣的朋友可以閱讀原文跟進相關(guān)工作。
優(yōu)點:
● 排名模型:利用了排序理論;
● 先驗驅(qū)動模型:將不同的先驗分布嵌入到模型中,并提供更多解釋性;
● Softmax似然模型:可以捕捉異常的特征交互信息;
● 端到端的one-class分類模型:端到端式的對抗式優(yōu)化,GAN有豐富的理論和實踐支持。
缺點:
● 排名模型:訓(xùn)練數(shù)據(jù)中必須要有異常樣本;
● 先驗驅(qū)動模型:沒法設(shè)計一個普遍有效的先驗,若先驗分布不能很好地擬合真實分布,模型的效果可能會變差;
● Softmax似然模型:特征交互的計算成本很大,而且模型依賴負樣本的質(zhì)量;
● 端到端的one-class分類模型:GAN具有不穩(wěn)定性,且僅限于半監(jiān)督異常檢測場景。
深度相關(guān)的30個代表性模型:
圖7:30個代表性的深度模型
四、異常檢測的數(shù)據(jù)集
SEQ:[5]中提出基于shapelet函數(shù),我們可以獲取35個合成數(shù)據(jù)集(可稱NeurlIPS-TS synthestic datasets or SEQ),其中20個單變量,15個多變量數(shù)據(jù)集。該數(shù)據(jù)集覆蓋各類異常數(shù)據(jù)。
21個開源真實數(shù)據(jù)集:
圖8:21個開源真實數(shù)據(jù)集[4]
五、異常檢測的模型表現(xiàn)對比
各類綜述論文下的模型表現(xiàn),因為所用數(shù)據(jù)集,參數(shù)或后處理不一致,導(dǎo)致表現(xiàn)對比可能存在差異,這里僅供參考。
圖9:在UD1-UD4數(shù)據(jù)集上個模型AUC和計算時間的對比[3] 圖10:在合成數(shù)據(jù)SEQ上的模型表現(xiàn)[5]
圖10很明顯打臉了一眾深度模型,我們不可否認實際業(yè)務(wù)場景中,深度模型性能的不穩(wěn)定,傳統(tǒng)模型確實更好用,但在學(xué)術(shù)圈里,深度模型還是有它研究價值在;
而有些深度異常檢測論文的F1分數(shù)比圖10高,除了參數(shù)和數(shù)據(jù)問題,也可能是像Anomaly Transformer代碼Issue中很多人提到的類似“detection adjustment”后處理優(yōu)化的結(jié)果。所以這塊仁者見仁智者見智吧。
六、結(jié)論和未來方向
綜述[4]給出了未來異常檢測的結(jié)論和發(fā)展方向:
●把異常度量目標加入到表征學(xué)習(xí)中:表征學(xué)習(xí)時,一個關(guān)鍵問題是它們的目標函數(shù)是通用的,但沒有專門針對異常檢測進行優(yōu)化。在前面有提到依賴于異常度量的特征學(xué)習(xí),它便是通過施加來自傳統(tǒng)異常度量的約束,來幫助解決這個問題;
●探索少標記樣本的利用:探索利用這些小標記數(shù)據(jù)來學(xué)習(xí)更強大的檢測模型和更深層次架構(gòu);
●大規(guī)模無監(jiān)督/自監(jiān)督表示學(xué)習(xí):首先在無監(jiān)督/自監(jiān)督模式下從大規(guī)模未標記數(shù)據(jù)中學(xué)習(xí)可遷移的預(yù)訓(xùn)練表示模型,然后在半監(jiān)督模式下微調(diào)異常檢測模型;
●復(fù)雜異常的深度檢測:對條件/組異常的深度模型的探索明顯較少。另外多模態(tài)異常檢測是一個很大程度上尚未探索的研究領(lǐng)域;
●可解釋和可操作的深度異常檢測:具有提供異常解釋的內(nèi)在能力的深度模型很重要,能減輕對人類用戶的任何潛在偏見/風(fēng)險以及實現(xiàn)決策行動;
●新穎的應(yīng)用和設(shè)置:例如分布外 (OOD) 檢測、curiosity learning等。
個人來看,在【三、異常檢測的模型分類】里談?wù)摰哪P椭校覀兛梢韵嗷ソ梃b,比如Anomaly Transformer便采取了依賴異常度量的特征表征學(xué)習(xí),同時還借鑒了端對端異常分數(shù)學(xué)習(xí)中的先驗驅(qū)動模型,引入了先驗關(guān)聯(lián)。
當(dāng)我們帶著各類模型優(yōu)缺點的基礎(chǔ)知識去閱讀新論文時,也能引發(fā)思考,比如Anomaly Transformer的先驗關(guān)聯(lián)采用高斯分布是否普遍有效?若窗口內(nèi)存在離散異常尖峰(即多峰異常),那單峰先驗關(guān)聯(lián)和多峰序列關(guān)聯(lián)是否便存在一定關(guān)聯(lián)差異,那么檢測效果是不是會有負面影響?多頭Anomaly Attention是否可以緩解這個問題?
這有些跑題了,但希望本篇文章大家能帶來些反思和啟發(fā),鼓勵閱讀綜述原文,深入了解其中的思想。
-
函數(shù)
+關(guān)注
關(guān)注
3文章
4277瀏覽量
62323 -
模型
+關(guān)注
關(guān)注
1文章
3112瀏覽量
48660 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1200瀏覽量
24619
原文標題:時序異常檢測綜述整理!
文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論