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

基于改進時間卷積網絡的日志序列異常檢測

2020-08-19 07:00:56楊瑞朋朱少衛錢葉魁唐永旺
計算機工程 2020年8期
關鍵詞:檢測模型

楊瑞朋,屈 丹,朱少衛,錢葉魁,唐永旺

(1.中國人民解放軍戰略支援部隊信息工程大學 信息系統工程學院,鄭州 450002;2.中國人民解放軍陸軍炮兵防空兵學院(鄭州校區),鄭州 450002)

0 概述

隨著網絡應用和系統規模的不斷增大,程序的執行路徑難以預測,并且硬件環境不再可靠,難以在部署前發現可能發生的錯誤。另一方面,隨著互聯網的不斷發展,各類網絡應用在生產生活中發揮著越來越重要的作用。但與此同時,網絡環境日益復雜,針對網絡應用和系統的攻擊不斷涌現,且攻擊形式多樣。一旦針對網絡應用和系統的攻擊成功或者網絡應用自身出現異常,將給應用的所有者及用戶帶來不可估量的損失。攻擊和錯誤越早發現,所能采用的補救措施就越多,造成的損失就會越少[1]。因此,研究異常檢測技術具有非常重要的意義。

在網絡應用運行的過程中,應用本身和監控程序都會產生各類日志來記錄應用的狀態、重要的運行事件和網絡流量,因此日志包含應用運行的動態信息,適合用于異常檢測。通過日志對網絡行為和系統分析的異常檢測技術能夠充分挖掘、利用網絡內在信息及其相互關系,具有較好的靈活性、適應性,已成為目前異常檢測領域的研究熱點[2-4]。因日志本身就是序列數據,日志的出現序列有一定的依賴關系,且有時依賴的長度較長。如一些新型攻擊一旦實施,并不會立即產生破壞,而是達到某些先決條件,或是進行某些正常操作后才產生破壞,體現在日志序列中即長時依賴關系。

為更好地挖掘長時依賴關系,本文提出一種基于時間卷積網絡(Temporal Convolutional Network,TCN)的日志序列異常檢測框架TCNLog。時間卷積網絡基于卷積神經網絡,是一種能夠處理時間序列數據的網絡結構。TCN引入padding機制,使模型的輸入和輸出長度相同,同時卷積后的特征較少丟失。該框架避免傳統機器學習方法復雜的特征提取步驟,并借助于深度學習強大的自動學習特征的能力[5],將經過充分訓練的日志模板的語義向量表示輸入TCN網絡,其中的空洞卷積機制能獲取日志序列更大的感受視野,實現沒有“漏接”的歷史信息,以更好地解決序列的長時依賴問題。

1 相關工作

異常檢測是保障網絡和系統安全的支撐技術之一,目前流行的異常檢測方法主要有基于網絡流量的異常檢測、基于惡意代碼的異常檢測和基于社交網絡安全事件的異常檢測[6]。但是網絡流量異常檢測技術容易漏過寬時間域內的網絡攻擊。此外,現代網絡攻擊往往是多種攻擊手段的組合,而網絡流量異常檢測技術的數據源種類較為單一。因此,傳統網絡流量異常檢測技術存在局限性。惡意代碼異常檢測技術可以有效檢測數量快速增長的未知惡意程序。然而,新型攻擊中惡意代碼偽裝性和隱蔽性很高,惡意代碼異常檢測技術在應對仍然存在時空關聯能力差和漏檢率較高等問題。社交網絡安全事件挖掘技術可以識別用戶行為異常,并為攻擊檢測提供指導,但社交網絡中蘊含的攻擊信息畢竟有限,該技術需要與其他異常檢測技術配合使用,才能更有效地檢測網絡攻擊。

日志中蘊含著豐富的信息,面向異常檢測的日志挖掘作為近幾年新興的一類檢測手段,是建立安全可信計算機系統的一項重要任務,具有攻擊問題分析準確、攻擊鏈可重構性等特點。傳統日志分析通過人工檢驗或者使用事先定義好的異常規則來實現。當日志大小有限以及異常類型可知時,這些方法十分有效并且也比較靈活,但是對于當前程序產生的百萬行規模的日志,人工檢測很難實現[7],提前獲取所有可能的異常也很困難[8]。隨著系統和應用程序變得越來越復雜,攻擊者可能會利用更多的漏洞和弱點來發起攻擊。這樣,攻擊也變得越來越復雜,且日志的數據量太大,非結構化、沒有領域知識、不易理解等都給分析造成很大的挑戰。因此,面向異常檢測的日志挖掘更具挑戰性。

隨著機器學習的發展,有很多研究采用特征工程,利用各種聚類[9]的方法發現異常點用于異常檢測。并且大量的異常檢測日志挖掘方法是為不同應用設計的,這種方法雖然準確,但是僅限于特定場景的應用并且需要領域專家。基于日常序列的異常檢測方法也被廣泛研究。文獻[10]將痕跡視為序列數據,并使用基于概率后綴樹的方法來組織和區分序列所具有的重要統計特性。隨著深度學習的發展,循環神經網絡在序列數據中有很好的應用,一些學者對日志序列的異常檢測問題運用循環神經網絡模型進行一些嘗試。文獻[11]對來自多個日志源的原始日志文本使用聚類技術生成特征序列,并輸入到LSTM模型中以進行故障預測。文獻[12]對系統日志的原始文本解析,生成日志模板序列輸入LSTM以檢測拒絕服務攻擊。最近的研究[13]表明,將時間卷積神經網絡應用到序列任務中,特別是處理長時依賴關系時,具有比循環神經網絡更好的效果。

對比傳統的日志序列異常檢測方法,本文的主要貢獻主要有以下3個方面:

1)提出一種基于時間卷積網絡的日志序列異常檢測框架,實驗驗證該框架在更長序列上有很好的異常檢測能力。

2)分析并對比了不同激活函數在異常檢測模型中的效果,說明了PReLU激活函數在該問題中的適用性。

3)分析了網絡中全連接層參數量大的不足,提出了用自適應平均池化層代替全連接層,將1×1卷積層與全連接層進行對比,證明了自適應平均池化層的優勢。

2 基于TCN的異常檢測框架

時間卷積網絡是一種基于卷積神經網絡的能夠處理時間序列數據的網絡結構。該網絡具有兩個特點:一是網絡的輸入長度和輸出長度相等;二是沒有漏接的歷史信息。為使網絡輸入和輸出長度相等,TCN網絡采用一維全卷積,并在每層加入0-padding以實現輸入長度和輸出長度相等;為實現序列建模任務,引入因果卷積[14],當序列長度增加時,為不遺漏歷史信息,需要增加網絡深度,但增加了參數量。為解決該問題,TCN引入空洞卷積[15],在不增加參數量的前提下,盡量少地增加網絡深度,擴大感受視野。增加網絡深度會導致梯度彌散或梯度爆炸,但可通過確保中間的正則化層(Batch Normalization)解決該問題,這樣可以確保幾十層的網絡能夠收斂。雖然通過上述方法能夠進行訓練,但是又會出現退化問題。文獻[16]提出殘差網絡來解決退化問題。TCN的網絡結構如圖1所示。

圖1 TCN網絡結構Fig.1 TCN network structure

一個日志文件包含多個事件類型,每個事件類型包含若干條日志,屬于同一個事件類型的日志有共同的模板,可以把一個日志序列理解為發生的一系列事件,即原始日志序列對應的日志模板的序列。文獻[17]從原始日志中進行日志模板的提取。本文的研究工作是:對原始日志序列對應的日志模板序列的異常進行檢測,判定異常的依據為根據當前序列預測下一個日志模板,若預測值和實際模板相同,則認為正常,否則認為異常。

TCN結構中激活函數使用ReLU[18],雖然收斂速度快,但容易引起神經元“壞死”,無法學習到日志序列中更多的有效特征。另一個問題是檢測框架中的全連接層相當于一個“分類器”,預測輸入序列的下一個日志模板。如果能減少參數量,則能有效地避免網絡的過擬合問題,但妨礙了整個網絡的泛化能力。針對上述問題,本文對基于TCN的日志序列檢測框架進行了改進,即改進激活函數與全連接層。異常檢測框架TCNLog如圖2所示。

圖2 日志序列異常檢測框架TCNLogFig.2 Anomaly detection framework TCNLog of log sequence

2.1 激活函數的選擇和改進

卷積神經網絡具有很強的建模能力,特別是加入了ReLU激活函數后,能夠表達輸入日志序列間的非線性關系。但是對日志序列的預測效果好壞與網絡訓練的每個細節息息相關。本文從卷積神經網絡的訓練過程方面進行優化,對激活函數進行比較和選擇。

原始TCN網絡中使用的是ReLU激活函數。ReLU函數屬于非飽和激活函數,在正數不飽和,在負數硬飽和,如圖3(a)所示。它對正數原樣輸出,負數直接置零。冪運算更節省計算量,因而收斂較快,在CNN中常用。但ReLU也有缺點,即神經元“壞死”(ReLU在負數區域被kill的現象叫做壞死),ReLU強制的稀疏處理會減少模型的有效容量,特征被屏蔽太多,導致模型無法學習到有效特征。由于ReLU在x<0時梯度為0,這樣就導致負的梯度在這個ReLU被置0,而且這個神經元有可能再也不會被任何數據激活。例如,一個非常大的梯度流過一個ReLU神經元,更新過參數之后,這個神經元再也不會對任何數據有激活現象,那么這個神經元的梯度就永遠都會是0。

為解決這一問題,文獻[19]提出PReLU (Parametric Rectified Linear Unit)激活函數。帶參數的ReLU如圖3(b)所示,對應中的參數a是可學習的,根據任務數據來定義,而非預先定義。這樣僅增加了一點額外的計算量和過擬合的風險,但提高了零值附近的模型擬合能力。當a=0時,PReLU退化成ReLU,當a是非常小的一個數如0.01時,PReLU退化成Leaky ReLU[20]。Leaky ReLU在負軸上的斜率是一個固定的較小的常數,雖然保留了一些負軸的值,使得負軸的信息不會全部丟失,但是這一事先指定的斜率不一定適合數據分布。激活函數ELUs如圖3(c)所示。

圖3 激活函數圖像對比Fig.3 Comparison of activation function images

以上是對ReLU負軸上的優化策略,但對ReLU函數的正半軸不施加任何非線性約束,因此當輸入為正大數時,易引起正半軸上的梯度爆炸。Relu 6如式(1)所示:

f(x)=min(max(0,x),6)

(1)

它對正半軸施加了非線性約束,但并沒有消除神經元“壞死”,壞死區域為Relu的(-∞,0)~Relu 6的(-∞,0)∪(6,+∞)。

本文修改TCN網絡中的激活函數ReLU為PReLU,初始化參數a=0.25,網絡自動學習更新參數,在實驗中,對Leaky ReLU、ELUs和ReLU 6激活函數進行比較。

2.2 檢測模型

檢測模型包含embedding層、改進的TCN層和自適應平均池化層。

2.2.1 embedding層

embedding層是把日志模板序列作為輸入,用于異常檢測框架的前端輸入,將序列中的每個日志模板序號映射成密集的詞嵌入。embedding層作為異常檢測模型的一部分,生成詞向量時需要指定維度,向量以小的隨機數進行初始化,采用反向傳播算法進行訓練更新。和開源的預訓練包Word2Vec和GloVe相比,embedding層雖然是一個較慢的方法,但可以通過模型訓練為特定的日志數據集定制詞嵌入。基于神經網絡訓練的詞嵌入包含豐富的上下文信息,既可以很好地表現目標詞在當前日志序列中的語義規則,又實現了降維的目的。

2.2.2 改進的TCN層

日志模板序列經過embedding層初始化后,需要以下步驟生成日志模板序列特征表示:

步驟1輸入第一個一維空洞卷積層,并進行歸一化。需要指明的參數包括日志模板詞嵌入的維度、日志模板詞典的大小、卷積核尺寸、步長、padding大小及是否加入空洞。

步驟2根據第一個卷積層的輸出與padding的大小,對卷積后的張量進行切片來實現因果卷積。因果卷積是利用卷積來學習當前輸入模型的日志序列中最后一個日志模板前的日志模板序列(長度h),來預測下一個日志模板,即該卷積層的輸出僅依賴于序列步為1,2,…,h的輸入,不會依賴于h+1以及之后的輸入。

步驟3添加PReLU激活函數。

步驟4Dropout正則化方法完成第一個卷積塊,Dropout是在訓練神經網絡模型時樣本數據過少,防止過擬合而采用的策略。

步驟5堆疊同樣結構的第2個卷積塊,這樣構成了一個殘差塊。

2.2.3 替代全連接層的方案

原始TCN之后加入全連接層是一種線性變換,轉換成維數為日志模板詞典的大小的概率向量P=(p1,p2,…,pk)(日志文件中包含k個日志模板),pi表示對當前序列預測的下一個日志模板為ei。假設序列長度為h,詞向量的維度為embedding,日志模板詞典大小為k,從參數量的角度考慮,全連接層需要學習的參數量是h×embedding×k。受文獻[21]提出的全局平均池化思想的啟發,即卷積后加一個全局平均池化層替換全連接層,因為池化不需要訓練模型參數,所以減少了模型訓練參數量。因為本文是采用一維全卷積,經過TCN卷積后的輸出除去batch_size和序列長度外,是一個維度為詞嵌入長度的一維向量,所以不能對該輸出計算全局平均池化。經過TCN模型輸出的形狀batch_size×h×embedding,經過全連接層線性變換之后,輸出形狀變為batch_size×h×k,可以看出,僅是通道數的改變。為達到改變通道數的目的,防止過擬合并提高模型的泛化能力和準確率,本文在改進TCN模型基礎上通過用自適應平均池化層(Adaptive Average Pooling,AAP)改變通道數,用池化層代替全連接層。在算法中只需要設置該層的輸出維度為日志模板類別,自適應平均池化層會根據輸入形狀和輸出維度的值,自動計算卷積核尺寸及步長,確定每一步的卷積區域,并求出在該卷積塊上的均值。該算法的偽代碼如下(以一維為例):

for 輸出向量位置索引號←0 to 輸出長度

卷積塊起始位置= floor (索引號×輸入長度/輸出長度)

卷積塊終止位置= ceil ((索引號+1)×輸入長度/輸出長度)

ks←(卷積塊終止位置-卷積塊起始位置)

for 當前卷積塊的起始位置←0 to ks

sum (輸入向量[卷積塊起始位置,卷積塊終止位置-1])

end

輸出向量當前位置對應的值←(sum/ks)

end

在算法中,floor函數表示取下限,ceil函數表示取上限。

從自適應平均池化的執行過程可以看出,當輸入長度mod輸出長度≠0時,卷積核尺寸和步長并不是固定不變的,而且卷積塊會在某些位置有重疊,池化操作后,每一維度的值可以理解為每個類別生成的一個特征值,向量中最大的特征值所在維度即為預測的日志模板編號。自適應平均池化層沒有優化參數,提高了模型的訓練時間和測試時間,避免在該層過擬合。自適應平均池化對網絡在結構上做正則化處理,其直接剔除了全連接層中黑箱的特征,直接賦予了每個通道實際的類別意義。

2.3 模型訓練

假設一個日志文件中包含k個日志模板E={e1,e2,…,ek},訓練階段的輸入為日志模板的序列,一個長度為h的日志序列lt-h,…,lt-2,lt-1中包含的日志模板li∈E,t-h≤i≤t-1,且一個序列中的日志模板數|lt-h,…,lt-2,lt-1|=m≤h。為方便處理數據,首先將每個日志模板對應一個模板號,并生成日志模板詞典,然后把正常的日志模板序列生成輸入序列和目標數據代入異常檢測模型進行訓練。序列建模學習的目標是訓練一個網絡f使得模型輸出和實際的日志模板之間的損失函數loss(lt,f(lt-h,lt-h+1,…,lt-1))最小,訓練中的損失函數采用交叉熵。交叉熵誤差函數的表達式為:

(2)

其中,yi是類別i的真實標簽,pi是softmax計算出的類別i的概率值,k是類別數,N是樣本總數。

對損失函數的優化采用自適應梯度下降法(Stochastic Gradient Descent,SGD)。在訓練時,SGD算法是從樣本中隨機抽出一組,訓練后按梯度更新一次,下一次訓練再隨機抽取一組,再更新一次,因此,每次的學習速度較快。在樣本量非常大的情況下,不用訓練完所有的樣本就可以獲得一個損失值在可接受范圍之內的模型。SGD最大的缺點在于每次更新可能并不會按照正確的方向進行,可以帶來優化波動,這個波動會使得優化的方向從當前的局部極小值點跳到另一個更好的局部極小值點,因此會使得迭代次數(學習次數)增多,即收斂速度變慢。為了加快收斂速度,在實驗設置中,選擇SGD梯度下降算法,并使用學習速率(learing rate,lr)退火調整。針對本文任務,經過多次實驗,確定的退火方法為:lr=lr*(0.5**(epoch//10)),即每訓練10次,學習率縮小2倍。

2.4 檢測階段

數據輸入的方法同訓練階段,用訓練階段生成的模型進行異常檢測,模型輸出為一個概率向量P=(p1,p2,…,pk),pi表示目標日志模板為ei的概率,模型直接的輸出實際上可以理解為多分類問題,但最后的結果為正常和異常的二分類問題,所以需要進一步判定。依據經驗,特別是在日志模板數較少的情況下,一個輸入序列的目標日志模板不止一種情況,認為P中的前g個大的概率值對應的日志模板是正常的。圖2所示的“目標是否在預測值內”中的“預測值”是概率較大的前g個日志模板。如果實際目標數據在預測值內,則判定為該日志序列正常,否則判定為異常。

3 實驗結果與分析

3.1 實驗環境與數據集

本文的實驗環境采用Ubuntu 16.04 LT,64位系統,62.8 GB內存,Processor Intel Xeon?CPU E5-2620v4 @ 2.1 GHz×16處理器,Graphic Geforce GTX 1080 Ti/PCIe/SSE2雙GPU平臺。實驗日志數據為BlueGene/L (BGL)日志數據集。數據集BlueGene/L(BGL)[22]包含215天的4 747 963條原始日志,大小為708 MB。本文對BGL數據集不進行按固定時間窗進行劃分,而是按模型參數中指定的序列長度進行劃分并預測,并利用滑動窗口的方法取下一個序列。選擇數據集80%的正常序列為訓練集。數據集信息如表1所示。

表1 數據集信息Table 1 Data set information

3.2 評價標準

考慮到日志數據集多數是正常日志多、異常日志少的不平衡數據集。評價本文提出的基于時間卷積網絡異常檢測框架的檢測性能,主要采用檢測率、誤報率、準確率3個指標,這樣分別考察真實樣本情況為異常日志序列和正常日志序列上的檢測效果,而不受“不平衡”這一特性的影響。日志序列異常檢測的混淆矩陣如表2所示。

表2 日志序列異常檢測混淆矩陣Table 2 Confusion matrix of log sequence anomaly detection

在表2中,TP表示異常日志序列被正確檢測為異常的數量,FN表示異常日志序列被錯誤檢測為正常的數量,FP表示正常日志序列被錯誤檢測為異常的數量,TN表示正常日志序列被正確檢測為正常的數量。對應的幾項評價指標如下:

1)真正類率(True Positive Rate,TPR),又稱為檢測率,表示被正確檢測為異常的異常日志序列數占異常日志序列總數的比率,值越大,性能越好。計算公式為:

(3)

2)假正類率(False Positive Rate,FPR),又稱誤報率,表示被錯誤檢測為異常的正常日志序列占實際正常日志序列總數的比率,值越小,性能越好。計算公式為:

(4)

3)準確率(Accuracy),表示檢測結果是正確的樣本數占樣本總數的比率,值越大,性能越好。計算公式為:

(5)

對測試集中的正常日志集和異常日志集,取和訓練過程中相同的序列長度,分別載入已訓練好的模型進行測試,如果模型對當前序列預測得到的前g個日志模板中不包含實際的下一個日志模板,則對正常日志序列集,FP加1,對異常日志序列集,TP加1。

3.3 參數設置

本文通過反復實驗不同的參數組合,確定了模型的最優參數。后續實驗均采用最優參數進行比對實驗。詞嵌入維度input_size設置為100,卷積核尺寸k設置為3,每層的隱藏單元數hidden設置為100,embedding層的dropout設置為0.25,卷積層的dropout設置為0.45,初始學習率設置為4,在檢測階段,如2.4節所述,g被設置為20。

3.4 結果分析

Deeplog[12]分析并驗證了2層LSTM在日志序列異常檢測的效果,本文在2層LSTM之上加上自注意力層,能更好地保留和控制序列的上下文信息,解決序列的長時依賴問題。文獻[13]通過理論分析和對文本數據集的實驗驗證,得到TCN對更長序列有很好的建模能力。為了考察本文改進TCN的檢測模型對日志長序列的異常檢測能力,該實驗選擇自注意力機制的LSTM作為本文的對比模型,對不同序列長度分別用本文方法和“2層LSTM+自注意力層”異常檢測模型進行比較,實驗結果如圖4所示。

圖4 兩種方法對不同序列長度的準確率比較Fig.4 Accuracy comparison of two methods for different sequence lengths

從圖4可以看出,在序列長度seq_len≤10時,“LSTM+自注意力層”有更好的檢測能力;但seq_len>10時,“LSTM+自注意力層”在seq_len>10之后,準確率快速下降,而本文方法有很明顯的檢測優勢。主要原因是LSTM的記憶門和忘記門在忘記不再需要的記憶并保存輸入信息的有用部分后,會得到更新后的長期記憶,但隱含層的輸入對于網絡輸出的影響隨著序列長度的不斷增加而衰退,丟失了很多細節信息。文獻[23]表明,當序列長度非常長(>100 s)時,LSTM很難訓練。時間卷積網絡對長時間數據來建模,能調整感受野的長度以及卷積核大小靈活調整可以學習的序列的長度。本文的檢測模型在給定的參數設置下,實驗結果顯示,在seq_len=40時,最好的檢測準確率為0.945 56,并在seq_len=70后,有相對穩定的檢測效果,可見本文的改進模型有更好的魯棒性。

為考察不同激活函數對模型檢測的影響,取序列長度h=100時,分析“TCN+AAP”中時間卷積網絡分別采用PReLU、Leaky ReLU、ReLU6和ELUs激活函數的檢測性能,實驗結果如圖5、圖6所示。

圖5 不同激活函數檢測性能對比Fig.5 Comparison of detection performance of different activation functions

圖6 不同激活函數對損失函數的影響Fig.6 Effect of different activation functions on loss function

從圖5可以看出,在采用PReLU時,檢測模型取得了最高的準確率和最低的誤報率,綜合性能評價最優。從圖6可以看出,雖然采用不同的激活函數收斂速度相當,但采用PReLU時,有最小的損失函數值。

為考察自適應均值池化層替換全連接層后對檢測模型精度的影響,在序列長度h=100時對比了時間卷積網絡分別采用TCN+Linear、TCN+AAP、改進的TCN+AAP和改進的TCN+Linear 4組檢測結果,如表3所示。從誤報率、檢測率和準確率3個指標可以看出,采用同樣的下層網絡結構連接全連接層和自適應均值池化層后,對日志序列的異常檢測能力均得到了提高。如下層網絡用TCN時,采用自適應均值池化層比全連接層誤報率降低了4.483%,檢測率提高了1.589%,準確率提高了3.661%;下層網絡用改進TCN網絡時,采用自適應均值池化層比全連接層誤報率降低了3.237%,準確率提高了2.325%。因此,自適應均值池化層代替全連接層后不僅該層的參數量從h×embedding×k降低到了0,而且檢測性能得到有效提升。

表3 自適應池化層對檢測性能的影響Table 3 Influence of adaptive pooling layer on detection performance

文獻[21]提出1×1卷積核可用來改變通道數,本文實驗設置在基線模型基礎上通過用1×1卷積核改變通道數,進行卷積層代替全連接層及數據標準化處理。設置輸出通道數為日志模板類別,卷積后每一維度的值可以理解為每個類別生成的一個特征值,向量中最大的特征值所在維度即為預測的日志模板編號。采用1×1卷積核用到的參數量為:1×embedding×k,和全連接層相比,當序列長度時間很長時,有效降低參數量。這種通過強制特征值和類別之間的對應,是對卷積結構更原始的反映。

為比較自適應池化層和1×1卷積核在檢測模型上的準確率和收斂速度,取序列長度h=100時,分別對改進的TCN + AAP和改進的TCN + 1×1卷積核以及改進的TCN + Linear進行50輪實驗,從圖7可以看出,采用自適應均值池化層,在epoch=10之前,檢測準確度振蕩上升,之后準確度相對穩定,在epoch=33時,達到最大的準確率0.925 35;采用Linear全連接層,在epoch=4時,達到89.319%的準確率,在epoch=20時,可以達到最大的準確率0.900 44,采用1×1卷積核,在epoch=12之前,檢測準確度振蕩快速上升,之后有個相對穩定的準確度,在epoch=37時,達到最大的準確率0.870 96。可以看出,采用自適應均值池化和1×1卷積核2種方案收斂速度相當,但采用自適應均值池化的準確率明顯高于采用1×1卷積核。采用Linear全連接層,收斂速度較快,但準確率不及采用自適應均值池化。自適應均值池化層既不含訓練參數,又達到了比使用Linear全連接層和1×1卷積核更高的準確率。

圖7 最后一層對準確率和收斂速度的影響Fig.7 Effect of last layer on accuracy and convergence speed

4 結束語

日志中蘊含了豐富的網絡和系統信息,通過分析日志可以檢測異常行為和挖掘潛在安全威脅。現有基于循環神經網絡的日志序列異常檢測模型對較短序列有很好的檢測能力,但對長序列的檢測存在不足,針對時間卷積網絡中的激活函數ReLU容易引起神經元“壞死”,以及無法學習到日志序列中更多有效特征的特點,本文提出用帶參數的ReLU替換ReLU。針對全連接層因參數量較多,容易引起過擬合的問題,提出用不需要參數量的自適應平均池化層替換全連接層,準確率提高5.886%。實驗結果表明,該檢測框架用于日志序列異常檢測的總體準確率優于TCN+Linear等方法,且自適應池化層不需要參數量。下一步將研究異常檢測關鍵技術,進行異常定位并分析異常原因。

猜你喜歡
檢測模型
一半模型
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 久久男人视频| 久久亚洲高清国产| 欧美不卡视频一区发布| 自拍偷拍欧美日韩| 成色7777精品在线| 国产精品性| 成年A级毛片| 色噜噜狠狠色综合网图区| 中文字幕 91| 凹凸国产分类在线观看| 伊人激情综合| 日韩AV无码免费一二三区| 久久一日本道色综合久久| 国产精品入口麻豆| 欧美国产在线一区| 亚洲综合亚洲国产尤物| 日本福利视频网站| 2021国产精品自拍| jizz在线观看| 国产乱人免费视频| 国产成人亚洲无吗淙合青草| 欧美不卡视频一区发布| 丝袜高跟美脚国产1区| 欧美黄色网站在线看| 激情综合网激情综合| 孕妇高潮太爽了在线观看免费| 中文字幕久久亚洲一区| 欧美特黄一免在线观看| 青草视频久久| 色爽网免费视频| 亚洲成a∧人片在线观看无码| 亚洲欧洲日韩久久狠狠爱| 成人夜夜嗨| 国产91导航| 91精品视频在线播放| 欧美中文字幕一区二区三区| 成人av专区精品无码国产| 国产日韩精品欧美一区喷| 欧美日韩国产高清一区二区三区| 成人在线第一页| 9丨情侣偷在线精品国产| 真实国产精品vr专区| 狠狠亚洲婷婷综合色香| 亚洲人妖在线| 免费高清毛片| 国产美女无遮挡免费视频网站 | 免费无遮挡AV| 久久精品aⅴ无码中文字幕 | 亚洲不卡影院| 97av视频在线观看| 欧美日韩精品一区二区视频| 三级国产在线观看| 中国特黄美女一级视频| 亚洲AV无码一区二区三区牲色| 国产女人18毛片水真多1| 国产成人免费高清AⅤ| 114级毛片免费观看| 中文字幕精品一区二区三区视频| av免费在线观看美女叉开腿| 国产精品香蕉| 国产视频久久久久| 成年人福利视频| 99久久无色码中文字幕| 欧美视频在线不卡| 黑人巨大精品欧美一区二区区| 免费看av在线网站网址| 亚洲成人福利网站| 中文字幕av一区二区三区欲色| 国产精品尤物铁牛tv | 国产欧美精品一区aⅴ影院| 欧美一区二区福利视频| 19国产精品麻豆免费观看| 日韩二区三区| 一级毛片基地| 欧美日韩一区二区在线免费观看| 亚洲中文字幕av无码区| 亚洲人成日本在线观看| 亚洲精品大秀视频| 国产精品一区在线麻豆| 亚洲综合18p| 国产人人干| 九九热在线视频|