現(xiàn)實(shí)世界的系統(tǒng)在運(yùn)行過程中會(huì)產(chǎn)生大量的時(shí)序數(shù)據(jù)。
通過這些時(shí)序數(shù)據(jù)發(fā)現(xiàn)系統(tǒng)中可能存在的異常現(xiàn)象對(duì)于保障系統(tǒng)安全、設(shè)備平穩(wěn)運(yùn)行以及避免經(jīng)濟(jì)損失都有著非常重大的意義,例如大規(guī)模服務(wù)器、地空、水電設(shè)備的監(jiān)測等。

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