ICLR Spotlight!清華提出時序異常檢測算法,連刷五個SOTA
現(xiàn)實世界的系統(tǒng)在運行過程中會產(chǎn)生大量的時序數(shù)據(jù)。
通過這些時序數(shù)據(jù)發(fā)現(xiàn)系統(tǒng)中可能存在的異?,F(xiàn)象對于保障系統(tǒng)安全、設備平穩(wěn)運行以及避免經(jīng)濟損失都有著非常重大的意義,例如大規(guī)模服務器、地空、水電設備的監(jiān)測等。
因此,來自清華大學軟件學院的團隊重點研究了無監(jiān)督時序異常檢測問題,并被ICLR 2022接收為Spotlight。
作者:徐介暉*、吳海旭*、王建民、龍明盛
論文鏈接:
?https://openreview.net/forum?id=LzQQ89U1qm_
在實際應用中,時序數(shù)據(jù)的異常檢測極其困難,它需要從占主導地位的正常數(shù)據(jù)中發(fā)掘出異常點或者異常時間模式,其中涉及兩個核心問題:
(1) 如何通過網(wǎng)絡獲取更具信息含量的表征,從而使得異常的表征不會被「淹沒」于正常數(shù)據(jù)中;
(2) 如何基于學習的表征定義更加具有區(qū)分性的判據(jù),用于篩選異常。
1. 動機
從時間序列的本質(zhì)屬性出發(fā),我們發(fā)現(xiàn)每一個時間點都可以由其與整個序列的關聯(lián)關系來表示,即表示為其在時間維度上的關聯(lián)權(quán)重分布。相比于點級別的特征,這種關聯(lián)關系暗含了序列的模式信息,比如周期、趨勢等,因此更具信息含量。
同時,與正常點相比較,異常點很難與正常模式主導的整個序列都建立強關聯(lián)關系,它們往往更加關注鄰近區(qū)域(由于連續(xù)性)。因此,這種與整體序列、鄰近先驗之間的關聯(lián)差異,為異常檢測提供了一個天然的、強區(qū)分度的判據(jù)。
基于以上觀察,我們提出了Anomaly Transformer模型,實現(xiàn)了基于關聯(lián)差異(Association Discrepancy)的時序異常檢測。其包含Anomaly-Attention機制用于分別建模兩種形式的關聯(lián),同時以極小極大(Minimax)關聯(lián)學習策略進一步增大正常點與異常點之間差別。
值得一提的是,在不同領域的5個數(shù)據(jù)集上,Anomaly Transformer都取得了SOTA的效果。
2. 方法
2.1 Anomaly Transformer
2.1.1 整體架構(gòu)
相比于標準的Transformer模型,Anomaly Transformer中在每層中都新設計了一個Anomaly-Attention單元,用于從多層次的深度特征中學習潛在的時序關聯(lián)。
整體架構(gòu)如上圖所示,Anomaly-Attention(左)同時建模了數(shù)據(jù)的先驗關聯(lián)(Prior-Association,即更關注鄰近區(qū)域的先驗)和序列關聯(lián)(Series-Association,即從數(shù)據(jù)中挖掘的依賴)。
除了序列重建任務之外,我們的模型還采用了極小極大策略(Minimax)用于進一步增大異常點和正常點所具有的關聯(lián)差異的差距,從而使得異常點能夠被更加容易的檢測出來。
2.1.2 Anomaly-Attention
為了計算關聯(lián)差異,我們提出的一種全新的注意力機制Anomaly-Attention,用于統(tǒng)一建模先驗關聯(lián)和序列關聯(lián)。
(1)先驗關聯(lián)用于表示由于時間序列連續(xù)性帶來的,每個時刻更多地關注其鄰近區(qū)域的先驗。我們采用了一個具有可學習尺度參數(shù)的高斯核函數(shù)來表示。高斯核函數(shù)的中心位于對應時間點的索引上,由于高斯分布本身所具有的單峰分布的特性,這樣的設計能夠幫助學習到的權(quán)重天然的集中于對應時間點的鄰域內(nèi)。同時,自適應的尺度參數(shù)可以幫助先驗關聯(lián)動態(tài)適應不同的時序模式。
(2)序列關聯(lián)用于表示直接從序列數(shù)據(jù)中挖掘出的依賴。其計算方式與標準Transformer的注意力矩陣計算方式類似,注意力矩陣中每一行的權(quán)重分布都對應了一個時間點的序列關聯(lián)。同時,為了更好的完成序列重建任務,模型會自動挖掘到合理的時序依賴。
通過上述設計,模型可以分別捕捉到先驗關聯(lián)和序列關聯(lián),相較于過往的模型這種基于關聯(lián)的表征蘊含著更加豐富的信息。
2.1.3 關聯(lián)差異(Association Discrepancy)
我們將關聯(lián)差異定義為這兩者之間的差異,作為后續(xù)異常檢測的判據(jù),它由各個層次的先驗關聯(lián)、序列關聯(lián)之間的對稱KL距離計算得到:
2.2 極小極大關聯(lián)學習
除了無監(jiān)督任務廣泛使用的重建誤差外,我們還引入了一個額外的關聯(lián)差異損失用于增大正常點和異常點之間的差距(如下所示)。
得益于先驗關聯(lián)的單峰特性,新增的關聯(lián)差異損失會驅(qū)使序列關聯(lián)更加關注非鄰近的區(qū)域,這會使得異常點的重建更加的艱難,進而正常點和異常點之間的辨別更加容易。
然而,在實驗中發(fā)現(xiàn),若直接最小化關聯(lián)差異將使得先驗分布中可學習的尺度參數(shù)急劇變小,造成模型退化。因此,我們使用了極小極大(Minimax)策略用于更好的控制關聯(lián)學習的過程。
(1) 在最小化階段,固定序列關聯(lián),讓先驗關聯(lián)近似,這樣可以使先驗關聯(lián)適應不同的時序模式。
(2) 在最大化階段,固定先驗關聯(lián),優(yōu)化序列關聯(lián)以最大化關聯(lián)之間的差異,該過程可以讓序列關聯(lián)更加關注于非臨接、全局的點,從而使得異常點的重建更加困難。
最終,我們將標準化后的關聯(lián)差異與重建誤差結(jié)合起來,定義了新的異常檢測判據(jù):
3. 實驗
我們在5個標準數(shù)據(jù)集上進行了模型驗證,涵蓋服務檢測、地空探索等多個應用。Anomaly Transformer在5個基準中均實現(xiàn)了SOTA的效果。更多基準模型及數(shù)據(jù)說明請見論文。
3.1 消融實驗
我們設計消融實驗驗證了提出的先驗關聯(lián)、訓練策略、新的異常判據(jù)的有效性。
3.2 判據(jù)分析
針對時序異常的5種類型,我們可視化了其在不同異常判據(jù)下的區(qū)分性??梢园l(fā)現(xiàn)基于關聯(lián)差異的異常評判曲線有著更加準確的可區(qū)分性。
3.3 先驗關聯(lián)分析
針對上述不同的異常類別,我們也提供了先驗關聯(lián)中學到參數(shù)的可視化。如圖所示,異常點處的相較于序列中別的點往往會比較小,這代表了它與非臨接部分的關聯(lián)較弱,這也印證了異常點很難與整個序列構(gòu)建強關聯(lián)的先驗。
4. 總結(jié)
本文關注無監(jiān)督時序異常檢測問題,提出了基于關聯(lián)差異的異常檢測模型Anomaly transformer,并通過一個極小極大(Minimax)關聯(lián)學習策略大幅提高了模型的異常檢測能力。
Anomaly transformer在服務器監(jiān)測、地空探索、水流觀測等應用中均展現(xiàn)出了優(yōu)秀的異常檢測結(jié)果,具有很強的應用落地價值。