999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于改進生成對抗網絡的時序數據異常檢測

2024-03-21 01:58:46王德文潘曉飛趙紅博
計算機工程與設計 2024年3期
關鍵詞:檢測模型

王德文,潘曉飛,趙紅博

(1.華北電力大學 控制與計算機工程學院,河北 保定 071003;2.復雜能源系統智能計算教育部工程研究中心,河北 保定 071003)

0 引 言

近年來,隨著深度神經網絡迅速發展,基于深度學習的異常檢測算法變得越來越流行,它能夠較好地處理復雜的時間相關性并且具有較強的學習能力,因此被用于許多時序數據的異常檢測中[1-3]。

生成對抗網絡(generative adversarial network,GAN)在圖像的異常檢測和生成領域被廣泛應用[4],并且GAN和對抗訓練框架已經能夠成功地用于生成復雜和高維分布的真實數據中[5],足以說明它可以用于時序數據的異常檢測。使用GAN進行異常檢測的方法是使用對抗訓練學習正常數據的特征,檢測重構效果不佳的異常數據[6]。

然而,由于時序數據具有高度復雜的時間相關性并且通常缺少標簽,現有的異常檢測模型難以有效提取時序數據的時間信息,缺乏時間關系和特征關系的結合,模型檢測的準確性不高;模型在訓練過程中不穩定,容易發生訓練不穩定[7]等問題;進行異常檢測時,若使用人為統一設定的閾值會影響異常檢測效果。針對以上問題,本文提出結合BiLSTM與WGAN-GP的時序數據異常檢測模型。該模型的生成器和判別器采用BiLSTM來捕捉時序數據復雜的時間相關性。為保證訓練過程穩定性,使用Wasserstein距離代替JS散度的衡量方法,并且在判別器損失中增加梯度懲罰項。最后使用重構損失和判別損失的加權平均值來定義異常函數,通過局部自適應閾值判別異常,提高異常檢測的準確性。

1 相關工作

時序數據異常檢測方法主要包括基于相似度、基于預測、基于重構3大類方法。

基于相似度的方法有:基于距離度量的KNN(K-nearest-neighbors)算法、基于密度度量的LOF(local outlier factor)算法。然而,這些方法無法捕捉時序數據之間的時間相關性,不適用于時序數據中[8]。

基于預測的方法是通過預測未來值,將預測值與預定義的閾值或者觀測值相比較來檢測異常。基于長短期記憶網絡(LSTM)[9]和基于深度卷積神經網絡(CNN)[10]的模型被提出用于預測下一個時間戳來發現時序數據中的異常。

基于重構的方法是通過學習一個模型來捕捉時序數據的潛在結構,將重構值與觀測值的差異進行比較檢測異常。一種基于自動編碼器的無監督時序數據的實時異常檢測方法被提出[11],然而,該方法較容易發生過擬合問題,降低異常檢測的效果,因此本文采用對抗學習的方式進行時序數據的重構。

與傳統的方法不同,在缺少標簽的情況下,GAN經過訓練后的判別器可以判別數據的真假,這使得GAN成為一種有吸引力的無監督異常檢測模型。AnoGAN[12]模型是基于無監督GAN的圖像數據異常檢測方法,該模型使用CNN作為生成器和判別器,將圖像映射到潛在空間并重構圖像數據,使用重構圖像的損失來計算異常分數。Zenati等[13]提出了稱為EGBAD的異常檢測方法,該模型使用BiGAN[14]網絡結構,解決了AnoGAN每次接收新圖片需要調整參數的問題。但是,由于CNN不包含處理時序數據的機制,AnoGAN和EGBAD方法并不適用于序列數據。Li等[5]提出了MAD-GAN模型,該模型將LSTM作為生成器和判別器檢測異常,通過實驗發現LSTM能夠有效地捕捉時序數據的時間關系輸入到GAN中。BeatGAN[15]模型將自動編碼器(AE)和GAN結合檢測異常節拍。Bashar等[16]提出了一種TAnoGAN異常檢測方法,結合LSTM和AnoGAN來處理時序數據異常問題,可以用在只有少量實例的時候。馬標等[17]提出使用多級離散小波變換進行數據預處理,在GAN模型中加入注意力機制并使用多層LSTM提取數據特征。但是上述幾種方法忽略了原始GAN在訓練的過程中對超參數非常敏感,容易造成訓練不穩定的問題[18]。

使用GAN進行異常檢測的研究已經有幾年的時間了,但它在時序數據異常檢測上的應用仍是一個新興的領域,針對現有的模型仍存在準確率不高、訓練不穩定等問題,本文使用能夠保留長期歷史信息的BiLSTM來捕獲時序數據特征,使用Wasserstein距離度量真實數據分布與模型擬合分布之間的距離。

2 時序數據異常檢測模型

2.1 問題描述

圖1 原始數據與滑動窗口的關系

2.2 模型結構

本文提出一種BiLSTM與WGAN-GP結合的時序數據異常檢測模型,結構如圖2所示。

圖2 BiLSTM-WGAN-GP模型結構

BiLSTM-WGAN-GP時序數據異常檢測模型主要分為模型訓練和異常檢測兩個部分。

網絡模型訓練部分的主要目的是通過對抗性訓練學習真實的數據分布,經過足夠多次迭代后訓練出能夠產生相似(假)時序數據的生成器(Generator,G)和能夠區分假時序數據與真時序數據的判別器(Critic,C)。將隨機噪聲Z輸入到G中,G需要學習如何生成相似(假)的樣本騙過C。然后將生成的時序數據和真實的時序數據輸入到C中,C需要區分出真實樣本和假樣本。為了處理時序數據,生成器和判別器均使用BiLSTM作為基礎網絡,BiLSTM的計算過程將在2.3.1節中詳細闡述。

異常檢測部分是使用訓練好的生成器G和判別器C來檢測序列中的異常數據。首先將測試樣本通過逆映射從潛在空間中找到最合適的隨機噪聲向量z,然后將最合適的隨機噪聲向量z輸入到G中,G生成的樣本與真實樣本的距離定義為重構損失;將測試樣本輸入到判別器C中,輸出得到判別損失。最后利用重構損失和判別損失的加權平均值計算出異常分數,采用局部自適應閾值方法找出異常的時序數據。基于BiLSTM-WGAN-GP的時序數據異常檢測算法如算法1所示。

算法1:基于BiLSTM-WGAN-GP的時序數據異常檢測算法

輸入:一個小序列X

輸出:異常分數Score

(1)Function Train(X):

for epochs do

從隨機噪聲Z中取隨機噪聲向量z

從真實樣本分布Pr中取真實數據向量x

Train C//訓練判別器C區分真實數據和生成數據,更新參數

Train G//在第二組隨機噪聲向量上訓練生成器G,更新參數

return G,C

(2)Function AD(X,G,C):

foriin 1 to m do

通過逆映射從隨機噪聲中找到最合適的噪聲向量zi

forλin 1 toτdo

生成器生成數據向量G(zi)

計算損失函數L并通過梯度下降更新zi

計算異常分數Score

returnScore

2.3 模型訓練

2.3.1 BiLSTM捕獲時序數據相關性

在本文所提出的模型中,生成器和判別器均將BiLSTM作為基礎網絡來捕獲時序數據的時間相關性。BiLSTM是以LSTM為基礎的優化網絡,包含正向層和反向層,其運算如圖3所示。

圖3 BiLSTM運算

BiLSTM網絡結構的優勢在于可以讓輸出單元同時包含過去和未來序列的數據特征,更好地捕捉時序數據的依賴性,能夠保留長期的歷史信息。其正向層計算過程可以表示為

(1)

(2)

基于以上計算,則隱藏層輸出為

(3)

2.3.2 生成器

生成器的目的是能夠生成與真實樣本相似的假數據分布來騙過判別器。對于小數據集上的訓練,淺層的生成器無法生成足夠相似的假數據,因此本文采用中等深度的生成器,使用具有64個隱藏單元的兩層BiLSTM、一層全連接層,采用LeakyRELU作為激活函數,生成器結構如圖4所示。

圖4 生成器結構

(4)

生成器的損失函數定義為

(5)

式中:pg表示生成樣本分布。

2.3.3 判別器

針對數據集較小的情況,若使用較大的判別器容易發生過擬合,因此本文模型的判別器使用一層包含100個隱藏單元的BiLSTM網絡。原始的GAN容易發生訓練不穩定的問題,它的生成器傾向于生成那些被發現擅長于愚弄判別器的樣本,不愿意生成有助于獲取時序數據中的其它模式的新樣本。為了克服這個限制,保證訓練過程的穩定性,本文使用Wasserstein距離代替JS散度,并且在判別器的損失中加入梯度懲罰項限制梯度變化范圍。直接計算真實樣本分布Pr和生成樣本分布Pg的Wasserstein距離比較困難,因此采用以下方式計算

(6)

(7)

由于需要擬合Wasserstein距離,去掉了最后一層的Sigmoid函數,采用全連接層來輸出各類分布的值。判別器的損失函數定義為

(8)

(9)

δ為0到1之間的一個隨機數。

2.4 異常檢測過程

(1)重構損失

(10)

(2)判別損失

原始GAN是完成真假二分類任務,但本文模型采用了WGAN-GP的思想,判別器輸出的是Wasserstein距離,因此本文使用判別器的輸出來計算判別損失,定義為

Lc(xn)=f(xn)

(11)

f(·) 表示判別器的輸出。

損失函數L被定義為重構損失LR和判別損失LC的加權平均值

L(xn)=(1-η)LR(xn)+ηLC(xn)

(12)

η是由經驗決定的平衡因子。

在每次迭代中,損失函數L會估計生成的假序列和真實序列的差異,異常評分函數Score(x)以表示給定時間序列X與正常小序列模型的差異,公式如下

Score(xn)=(1-η)R(xn)+ηC(xn)

(13)

為了減少誤報,本文采用Hundman等[9]提出的修剪方法。對于每個異常序列,先獲得該異常序列的最大異常分數 {Score1,Score2,…,Scorem},然后按照降序排序,計算下降百分比pi=(Scorei-1-Scorei)/Scorei-1,當第一個Scorei不超過某個閾值θ(默認θ=0.1)時,后續的序列則被重新分類為正常序列。

3 實 驗

3.1 實驗環境及數據集

本文所有實驗均在同一環境及配置下進行,見表1。

表1 實驗環境

實驗使用numenta anomaly benchmark(NAB)數據集[19],NAB數據集旨在為時間序列異常檢測提供數據。該數據集分為7類,除去一類不含任何異常的人工數據集和一類已知異常原因不含手工標簽的數據集,本文選取剩下的5類包括多個領域的時序數據集共45個數據文件(除去一個不含任何異常的數據文件),每個文件有1000~22 000個數據實例,每一行包含一個時間戳和一個標量值。這5類數據集分別是AWS、AdEx、Art、Traffic、Tweets。AWS是AmazonCloudwatch服務收集的AWS服務器指標數據集;AdEx是在線廣告點擊率數據集;Art是包含不同類型異常的人工生成的數據集;Traffic是由明尼蘇達州交通部收集的實時交通數據集;Tweets是Twitter上關于大型上市公司報道的數據集。

本文提出的方法是基于無監督的方式來訓練模型,也就是說沒有標簽,NAB提供的標簽僅僅用于比較檢測的異常來評估模型的性能。

3.2 評估指標

本文采用精確率(Precision)、召回率(Recall)、F1分數3項指標作為評估指標。

精確率Precision值是針對識別為正確的樣本,反映的是模型能正確識別出樣本類別的程度

(14)

召回率Recall值是針對實際樣本,反映的是模型能夠正確識別出所有樣本類別的程度

(15)

F1分數是調和平均值,能夠兼顧精確率和召回率的影響,作為評估模型的主要指標

(16)

3.3 實驗結果與分析

3.3.1 模型訓練過程分析

本文通過可視化訓練過程中生成器和判別器的損失函數的絕對值來反映本文提出模型的性能,原始GAN和BiLSTM-WGAN-GP模型訓練過程中的生成器和判別器的損失函數變化對比如圖5所示。

圖5 訓練損失對比

圖5顯示了迭代500次模型損失函數變化對比,圖中虛線為未使用WGAN-GP的GAN模型損失值變化,實線為本文提出模型的損失值變化,左圖為生成器損失函數變化,右圖為判別器損失函數變化,縱坐標為損失值。可以看出,未使用WGAN-GP的模型在訓練過程中損失值變化浮動較大,損失值未收斂。本文所提出模型在訓練的剛開始階段,判別器能夠比較容易地判別出輸入數據的真假,生成器和判別器的損失變化較大;當訓練次數在50次之后,生成器逐漸學習到部分特征,生成器和判別器的損失函數的絕對值呈現下降的趨勢;在訓練次數達到75次之后,生成器和判別器的損失函數值變化趨勢趨于平緩;在訓練次數達到100次之后,生成器和判別器的損失沒有較大的波動達到相對穩定且接近0,表示該模型具有了較好的收斂能力,判別器的判別能力在訓練過程中不斷增強,生成器能夠生成相似于真實數據的樣本。

3.3.2 滑動窗口大小設置

在BiLSTM-WGAN-GP模型中,使用了滑動窗口將長時間序列劃分為較短的時間序列,滑動窗口太短則會無法很好地捕捉時序數據的特征,同時也不宜太長。因此確定出最佳的窗口長度是該研究中一項重要的問題。本文嘗試了不同長度的窗口大小來進行實驗,經過分析,窗口長度window_length控制在70范圍以內即可,以10為間隔進行對比實驗,如圖6所示。

圖6 滑動窗口大小對比實驗

由圖6中所顯示的實驗結果可以看出,當窗口長度window_length為60時,BiLSTM-WGAN-GP模型的各項評估指標均為最好。

3.3.3 實驗結果

為了分析BiLSTM-WGAN-GP模型的時序數據異常檢測效果,本文采用LSTM[9]、DeepANT[10]、LSTM-AE[11]、MAD-GAN[3]、TAnoGAN[16]、CNNGAN[12]模型與其進行比較,通過對比幾種模型在5類數據集上的綜合性指標F1分數來驗證本文提出模型的性能。對比結果見表2。

表2 不同時序數據異常檢測模型實驗結果對比

表2中使用加粗字體顯示了各個數據集中最高的結果,BiLSTM-WGAN-GP模型同其它幾個模型相比,F1分數的平均值最高。

LSTM、DeepANT是基于預測的方法學習時間序列的歷史變化,對接下來的幾個時間步長進行預測,使用逐點預測損失定義異常分數。這兩種模型在每個數據集上的F1分數均不如本文提出的模型。LSTM對上下文異常并不敏感,檢測準確性并不高。DeepANT模型在各個數據集上的檢測結果均不佳,使用CNN作為預測器檢測異常的效果并不好。

LSTM-AE、MAD-GAN、TAnoGAN、CNNGAN均是基于重構的異常檢測方法。LSTM-AE使用LSTM單元捕捉傳感器之間的時間依賴性,自動編碼器結構用于學習數據集的正常行為。LSTM-AE在AWS數據集上表現最好,但在其它4類數據集上異常檢測效果并不如本文提出的模型,且本文所提出模型的F1分數平均值提升了6.9%。MAD-GAN、TAnoGAN具有與BiLSTM-WGAN-GP相似的架構。MAD-GAN是使用LSTM-RNN作為GAN基本架構的多元時序數據異常檢測模型,本文模型的異常檢測結果明顯優于MAD-GAN模型,所使用的BiLSTM能夠實現捕捉上一單元和下一單元的時序特征。MAD-GAN在面對數據集較小時,異常檢測效果并不好,適用于數據集較大的情況。TAnoGAN同樣是適用于較小數據集的異常檢測模型,使用LSTM作為生成器和判別器的基礎網絡,通過表中對比結果來看本文所提出模型的F1分數平均值提升了6.2%,且在5類數據集上的F1分數均比TAnoGAN模型高。TAnoGAN中使用原始GAN,忽略了可能會發生訓練不穩定的問題。CNNGAN模型將CNN作為生成器和判別器的基礎網絡捕獲時間依賴性,其結構與AnoGAN[14]相似,該模型在Art數據集上檢測效果最好,但在其它數據集上的檢測效果均不如本文提出的模型,本文模型的F1分數平均值相比較該模型提升了4.2%,這是由于使用CNN作為生成器并不適用于時序數據中。

為了進一步驗證本文所提出模型的性能,本文模型與使用LSTM作為生成器和判別器的GAN(LSTM-GAN)、使用BiLSTM作為生成器和判別器的GAN(BiLSTM-GAN)、使用LSTM作為生成器和判別器的WGAN-GP(LSTM-WGAN-GP)分別進行了實驗,實驗對比結果如圖7所示。

圖7 不同模型實驗結果對比

從圖中可以看出,僅僅加入BiLSTM之后3項指標均有所上升,這是因為BiLSTM能夠捕捉過去和未來的數據特征。單獨使用WGAN-GP作為基本模型時,可以發現雖然精確率有所下降但是有更高的召回率,綜合指標F1分數也比基礎模型GAN高,驗證了本文使用WGAN-GP模型的有效性。本文所提出的BiLSTM-WGAN-GP模型在3個評估指標上表現均為最好,表明了該模型將BiLSTM與WGAN-GP結合可以提升異常檢測效果。

4 結束語

本文提出BiLSTM-WGAN-GP模型用于時序數據異常檢測。該模型使用BiLSTM作為生成器和判別器的基本模型,用來捕捉時間依賴性。使用Wasserstein距離代替JS散度的計算方法并且在判別器損失中增加梯度懲罰項,避免訓練不穩定等問題;將重構損失與判別損失相結合定義異常函數,使用局部自適應閾值方法找出異常數據。為了驗證BiLSTM-WGAN-GP模型有良好的性能,該模型在涉及多個領域的5類數據集上進行了實驗,并且與其它方法進行了對比,本文提出的模型有較好的異常檢測效果。在接下來的工作中,我們將在模型訓練時間方面繼續探索,做到在提升模型異常檢測效果的同時壓縮模型訓練的時間。

猜你喜歡
檢測模型
一半模型
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: a在线亚洲男人的天堂试看| 国内精品一区二区在线观看| 国产精品大尺度尺度视频| 日本高清免费不卡视频| 国产亚洲精品97AA片在线播放| 日本一本正道综合久久dvd | 日韩欧美成人高清在线观看| 在线观看国产精美视频| 国产欧美成人不卡视频| 在线日韩日本国产亚洲| 国产性精品| 亚洲第一天堂无码专区| 中文字幕在线不卡视频| 亚洲欧洲日产国码无码av喷潮| 国产第一页屁屁影院| 久草视频中文| 国产偷倩视频| 精品国产电影久久九九| 有专无码视频| 97av视频在线观看| 国产精品lululu在线观看| 91成人在线免费视频| 国产一区二区免费播放| 99精品免费欧美成人小视频| 日韩精品一区二区三区免费| 香蕉99国内自产自拍视频| 欧美一级99在线观看国产| 免费欧美一级| 午夜高清国产拍精品| 99久久国产自偷自偷免费一区| 男人天堂亚洲天堂| 国产高清免费午夜在线视频| 国产超碰在线观看| 欧美乱妇高清无乱码免费| 国产成人综合久久精品尤物| 欧美伊人色综合久久天天| 免费观看精品视频999| 波多野结衣国产精品| 88国产经典欧美一区二区三区| 国产精品亚洲欧美日韩久久| 91在线高清视频| 精品一区二区久久久久网站| 国产成人资源| 日韩一级二级三级| 国产精品亚洲五月天高清| 国产黄色爱视频| 日本午夜网站| 日本免费精品| 免费观看无遮挡www的小视频| 精品成人一区二区| 香蕉蕉亚亚洲aav综合| 天天视频在线91频| 丁香婷婷激情网| 精品国产中文一级毛片在线看| 国产成人精品无码一区二| 国产午夜看片| 国产鲁鲁视频在线观看| 孕妇高潮太爽了在线观看免费| 亚洲伦理一区二区| 国产精品免费久久久久影院无码| 亚洲第一成年免费网站| 91热爆在线| 美女被狂躁www在线观看| 午夜a级毛片| 精品国产成人三级在线观看| 色综合日本| 国产免费看久久久| 国产一区二区免费播放| 国产精品污视频| 亚洲男人天堂2020| 亚洲午夜福利精品无码不卡| 伊人激情综合| 国产精品入口麻豆| 青青青视频91在线 | 怡春院欧美一区二区三区免费| 亚洲中文字幕在线精品一区| 久久精品人人做人人爽电影蜜月| 国产免费久久精品99re不卡| 亚洲Aⅴ无码专区在线观看q| 国产第四页| 99久久精品免费看国产免费软件 | 国产成人盗摄精品|