System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實現(xiàn)步驟摘要】
:本專利技術(shù)屬于深度學(xué)習(xí)和物聯(lián)網(wǎng)領(lǐng)域,具體涉及一種基于去噪自動編碼器和標(biāo)準(zhǔn)化流的無監(jiān)督多變量時間序列異常檢測方法。
技術(shù)介紹
0、
技術(shù)介紹
:
1、隨著物聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,許多現(xiàn)實世界的系統(tǒng),如大型工業(yè)設(shè)備、智能機器人和信息技術(shù)(it)服務(wù)器,可以通過布置大量的傳感器進行監(jiān)測,以獲得可用的多變量時間序列數(shù)據(jù)。這些時間序列數(shù)據(jù)有利于預(yù)測未來的趨勢或模式,以及分析過去的運行狀況和識別異常情況。在時間序列分析的眾多應(yīng)用中,異常檢測近年來受到了越來越多的關(guān)注和研究。異常檢測即通過一定的技術(shù)和手段檢測出數(shù)據(jù)中違背了正常模式或規(guī)律的數(shù)據(jù),即離群點,它在時間序列分析中相當(dāng)重要,高效和準(zhǔn)確地檢測出異常數(shù)據(jù)可以降低設(shè)備的損耗率,對外部的攻擊進行預(yù)警,因此在很多應(yīng)用中都迫切地需要這種技術(shù),例如機械的故障診斷,網(wǎng)絡(luò)攻擊檢測,以及金融欺詐檢測等。異常檢測是多變量時間序列中的主要活躍領(lǐng)域之一,關(guān)于它的研究已經(jīng)持續(xù)了很長時間。而由于時間序列往往非常龐大,其中的異常又非常稀少,這使得時間序列異常檢測成為一個極度不平衡的問題。同時,對這些時間序列進行標(biāo)注需要付出極大代價,是不切實際的。因此,對于時間序列異常檢測的研究大都在無監(jiān)督的條件下進行。在過去數(shù)十年里,已經(jīng)有很多經(jīng)典的無監(jiān)督方法被提出來解決這個問題。傳統(tǒng)的機器學(xué)習(xí)方法,例如基于密度的局部異常因子算法,基于距離的k近鄰算法以及基于聚類的one-class?svm,這些方法一般來說足夠快捷,然而,在面對高維數(shù)據(jù)時,它們往往會陷入維度詛咒的困境,計算復(fù)雜度也會變得很高,而這樣的高維數(shù)據(jù)在如今科技高度
2、近年來,得益于神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)的快速發(fā)展,深度學(xué)習(xí)方法處理高維數(shù)據(jù)的能力已經(jīng)遠(yuǎn)超傳統(tǒng)方法,深度異常檢測方法在時間序列中的應(yīng)用也越來越普遍,例如自動編碼器和深度生成式模型。這些方法都基于一個共同的假設(shè):正常數(shù)據(jù)能夠比異常數(shù)據(jù)更好地從隱空間重構(gòu)或生成。然而,也有研究表明自動編碼器比較容易過擬合,從而它的強泛化能力會對異常數(shù)據(jù)產(chǎn)生和正常數(shù)據(jù)同樣小的重建誤差。另一方面,如果不加以限制的話,當(dāng)網(wǎng)絡(luò)足夠大的時候,自動編碼器會傾向于記住大部分輸入而不是真的學(xué)習(xí)到了如何重構(gòu)輸入,這些缺點都會導(dǎo)致模型無法準(zhǔn)確地檢測異常。而基于生成對抗網(wǎng)絡(luò)的方法由于其對抗式的訓(xùn)練方式往往不容易穩(wěn)定,并且有可能會陷入模式崩潰的困境,因此研究人員通常需要花費較多的時間來精心調(diào)整生成對抗網(wǎng)絡(luò)模型。除此之外,多變量時間序列有別于單變量時間序列的一個重要特征是它有多個變量或者通道,這些變量之間也存在著錯綜復(fù)雜的關(guān)系,而異常現(xiàn)象的一種表現(xiàn)就是違背了這種關(guān)系。然而,大部分現(xiàn)有的方法并沒有顯式地考慮變量間或通道之間的依賴關(guān)系。
技術(shù)實現(xiàn)思路
0、
技術(shù)實現(xiàn)思路
:
1、針對上述這些存在的問題,我們提出了一個基于去噪自動編碼器和標(biāo)準(zhǔn)化流的無監(jiān)督多變量時間序列異常檢測方法,目的是為解決在多變量和無監(jiān)督場景中的時間序列異常檢測問題,提供一種基于自動編碼器和標(biāo)準(zhǔn)化流的準(zhǔn)確異常檢測方法。該方法將標(biāo)準(zhǔn)化流(一種深度生成模型),做為自動編碼器的瓶頸層,這可以將時間序列數(shù)據(jù)特征的隱空間限制為一個預(yù)定義的空間,從而確保無法準(zhǔn)確地重構(gòu)異常,防止了自編碼器直接復(fù)制輸入。同時也利用了標(biāo)準(zhǔn)化流能夠在感知層面根據(jù)特征計算異??赡苄缘膬?yōu)勢和基于重建的方法在語義層面的可解釋性。除此之外,本專利技術(shù)還引入了一個通道打亂和順序信息嵌入模塊,用來顯式地使模型意識到不同通道或變量之間的差異和依賴性。此外,和大部分無監(jiān)督方法一樣,模型的訓(xùn)練只使用正常數(shù)據(jù),這樣的模式符合現(xiàn)實世界的情況。
2、本專利技術(shù)提供一種基于流的無監(jiān)督多變量時間序列異常檢測方法,包括以下步驟:
3、(1)使用m個傳感器以預(yù)設(shè)的頻率并行地采集數(shù)據(jù),在每個進行數(shù)據(jù)采集的時刻,m個所述傳感器采集到的數(shù)據(jù)構(gòu)成一個觀測,一個時間段內(nèi)的多個觀測構(gòu)成時間序列集合,即每個觀測有m個特征或通道。一般來說,一個時間序列需要按照數(shù)據(jù)的觀測時間來組成集合,所有觀測之間都擁有相等的間隔,對于多變量時間序列來說m一定是大于1的,否則為一個單變量時間序列。在本專利技術(shù)中,主要側(cè)重的問題是多變量時間序列,因此為了簡化描述,下文中如果無特殊說明的話m均表示一個大于1的值。由于現(xiàn)實世界中的時間序列集合通常非常龐大,建立完整的時間關(guān)聯(lián)是極其困難的,大部分現(xiàn)有的時間序列異常檢測算法中都用滑動窗口以一定步長分割時間序列集合,從而得到時間序列窗口集合,本專利技術(shù)也延用了這種設(shè)置;
4、(2)構(gòu)建無監(jiān)督多變量時間序列異常檢測模型,所述無監(jiān)督多變量時間序列異常檢測模型由如下部分組成:通道打亂模塊、嵌入層網(wǎng)絡(luò)、編碼器、標(biāo)準(zhǔn)化流模塊、解碼器;
5、首先,所述無監(jiān)督多變量時間序列異常檢測模型的輸入是經(jīng)過劃分的時間序列窗口集合,將每個時間序列窗口視為一個輸入序列,輸入序列需要加入少許噪聲,這是為了增加模型訓(xùn)練的難度,達到一定的正則效果,減少過擬合;
6、其次,將經(jīng)過加噪處理的輸入序列送入所述通道打亂模塊,在所述通道打亂模塊的作用下,輸入序列的通道被隨機混合,形成一個新序列;
7、最后,所述新序列通過一個嵌入層網(wǎng)絡(luò)嵌入對應(yīng)的通道順序信息,得到包含通道信息的輸入序列;
8、(3)所述編碼器接收包含通道信息的輸入序列,編碼器由若干編碼塊堆疊而成,每個編碼塊由卷積層,批歸一化層和激活函數(shù)層構(gòu)成,每當(dāng)序列通過編碼塊時,序列長度減少而通道數(shù)增加。編碼器對包含通道信息的輸入序列進行特征提取后得到編碼,并將得到的所述編碼傳遞給標(biāo)準(zhǔn)化流模塊;
9、(4)單一的編碼器-解碼器架構(gòu)比較容易出現(xiàn)的問題是模型只是機械式地記住了輸入數(shù)據(jù)而不是真正理解了輸入數(shù)據(jù)的特性,從而對異常數(shù)據(jù)也能夠準(zhǔn)確地重構(gòu),因此會導(dǎo)致不理想的異常檢測結(jié)果。在這種現(xiàn)象背后的原因中,不受限的潛在分布是一個很重要的誘因。因此,本專利技術(shù)使用了一種特殊的深度生成模型——標(biāo)準(zhǔn)化流(normalizing?flow),用于將編碼器形成的不受限的未知潛在分布轉(zhuǎn)換到一個受限的預(yù)定義潛在分布中。通過上述操作,模型瓶頸層的潛在空間將會被施加一個約束,使其對正常數(shù)據(jù)和異常數(shù)據(jù)的重構(gòu)具有明顯的差別。標(biāo)準(zhǔn)化流由若干可逆變換組成,利用變量代換規(guī)律實現(xiàn)了從一個復(fù)雜分布x到簡單先驗分布z的可逆映射,形式上可以表示為:fθ:本專利技術(shù)中使用標(biāo)準(zhǔn)化流模塊將所述步驟(3)中編碼器形成的不受限的未知潛在分布轉(zhuǎn)換到一個受限的預(yù)定義的潛在分布中,從而得到標(biāo)準(zhǔn)化流模塊輸出的隱編碼。一般地,當(dāng)標(biāo)準(zhǔn)化流模塊只使用正常時間序列訓(xùn)練時,因為它未處理過異常序列,正常序列的編碼將會被轉(zhuǎn)換到先驗分布的高密度區(qū)域,而異常序列的編碼將會被映射到先驗分布的低密度區(qū)域,從而達到解碼器無法準(zhǔn)確重構(gòu)所輸入的時間序列的目的。本專利技術(shù)中標(biāo)準(zhǔn)化流的架構(gòu)由仿射耦合層組成,仿射耦合層利用可逆神經(jīng)網(wǎng)絡(luò)實現(xiàn);
10、(5)使用三元組對比損失函數(shù)對所述標(biāo)準(zhǔn)化流模塊輸出的隱編碼進行收縮靠攏,所述三元組對比損失函數(shù)將進一步限制標(biāo)準(zhǔn)化流的輸出的潛在分布,使得異常數(shù)據(jù)的隱編碼更有可能處本文檔來自技高網(wǎng)...
【技術(shù)保護點】
1.一種基于流的無監(jiān)督多變量時間序列異常檢測方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的一種基于流的無監(jiān)督多變量時間序列異常檢測方法,其特征在于:步驟(1)中所述的多變量時間序列集合表示如下:
3.根據(jù)權(quán)利要求1或2所述的一種基于流的無監(jiān)督多變量時間序列異常檢測方法,其特征在于所述步驟(2)中,所述通道打亂模塊首先提取輸入序列通道順序的索引,然后隨機打亂所述索引的順序,再根據(jù)亂序后的索引重新排布輸入序列的通道;所述嵌入層網(wǎng)絡(luò)利用一個線性層對亂序后的索引進行映射,將通道順序的信息嵌入到輸入序列中。
4.根據(jù)權(quán)利要求1或2所述的一種基于流的無監(jiān)督多變量時間序列異常檢測方法,其特征在于所述步驟(3)中,編碼器由4個編碼塊堆疊而成,每個編碼塊首先通過卷積層進行一維卷積操作,然后再依次通過批歸一化層和激活函數(shù)層,最后再進行一遍卷積、歸一化和激活操作。
5.根據(jù)權(quán)利要求1或2所述的一種基于流的無監(jiān)督多變量時間序列異常檢測方法,其特征在于所述步驟(4)中,所述標(biāo)準(zhǔn)化流模塊可以用如下公式表達:
6.根據(jù)權(quán)利要求5所述的一種
7.根據(jù)權(quán)利要求6所述的一種基于流的無監(jiān)督多變量時間序列異常檢測方法,其特征在于,所述步驟(7)中的異常評分函數(shù)可以表示為:
...【技術(shù)特征摘要】
1.一種基于流的無監(jiān)督多變量時間序列異常檢測方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的一種基于流的無監(jiān)督多變量時間序列異常檢測方法,其特征在于:步驟(1)中所述的多變量時間序列集合表示如下:
3.根據(jù)權(quán)利要求1或2所述的一種基于流的無監(jiān)督多變量時間序列異常檢測方法,其特征在于所述步驟(2)中,所述通道打亂模塊首先提取輸入序列通道順序的索引,然后隨機打亂所述索引的順序,再根據(jù)亂序后的索引重新排布輸入序列的通道;所述嵌入層網(wǎng)絡(luò)利用一個線性層對亂序后的索引進行映射,將通道順序的信息嵌入到輸入序列中。
4.根據(jù)權(quán)利要求1或2所述的一種基于流的無監(jiān)督多變量時間序列異...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:劉鵬,趙喜剛,
申請(專利權(quán))人:杭州電子科技大學(xué),
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。