[發明專利]無監督異常檢測系統和方法有效
| 申請號: | 202010079208.2 | 申請日: | 2020-02-03 |
| 公開(公告)號: | CN111277603B | 公開(公告)日: | 2021-11-19 |
| 發明(設計)人: | 韓科;譚天 | 申請(專利權)人: | 杭州迪普科技股份有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L29/08;H04L12/24 |
| 代理公司: | 北京金訊知識產權代理事務所(特殊普通合伙) 11554 | 代理人: | 黃劍飛 |
| 地址: | 310051 浙江省杭*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 監督 異常 檢測 系統 方法 | ||
1.一種無監督異常檢測模型的訓練方法,包括以下步驟:
讀取特定Web應用服務器過往的正常HTTP請求日志以獲取http請求的字符串,來分別通過訓練參數值異常檢測模型和參數序列異常檢測模型;
將http請求的字符串輸入參數值異常檢測模型,以便對該字符串中可能發生參數異常的字符進行提?。?/p>
對所接收到的每一個字符串按照預定泛化規則進行泛化處理,以減少輸入的維度;
將經過字符串泛化處理后的字符串中的每個字符映射成長度為L的一個一維向量,并對所得到的一維向量進行三維或兩維的詞嵌入來生成向量化字符串,以便后續神經網絡優化;
采用分組卷積的淺層神經網絡提取向量化字符串的特征,并將向量化字符串映射成兩個c維隱變量,這兩個c維隱變量分別代表向量化字符串的方差σ和均值u;
以可訓練的N*c維矩陣的形式保存隱變量,其中N為預設值,c為隱變量的維數,每一個隱變量作為可訓練的N*c維矩陣的一個行向量;
對該N*c維矩陣中的每一個行向量Ci,i=1,2,……,N,計算其與隱變量的余弦相似度Di;
根據下面公式
來計算所接收到的N*c維矩陣中的每個行向量在重構新的隱變量時的權重,得到權重向量;
將權重向量中小于一定閾值的值設置成0,以得到稀疏的權重向量;
對所得到的稀疏權重向量通過L1范數歸一化處理,并與所保存的未處理N*c維矩陣進行矩陣乘法來重構生成帶約束隱變量并以N*c維矩陣形式保存帶約束隱變量備用;
利用逆卷積網絡或全連接網絡將帶約束隱變量映射成為L*13的向量,其中13個維度表明當前字符位置重構為泛化后的13個字符類型的概率;
將該概率作為重構概率,通過交叉熵損失函數來計算整個序列的重構損失,并根據重構損失來判斷參數值是否正常;
當判斷為參數值正常時進程結束處理,而當判斷為參數值出現異常時,收集并存儲從該異常請求開始,在后續一段時間內來自同一用戶的其他請求,直到請求數目達到設定上限L,或是超出指定時間間隔T,如果所收集的一系列請求中判別為異常的請求數目超過設定的百分比閾值,則直接進行告警;以及
若所收集的一系列請求中判別為異常的請求數目不超過設定的百分比閾值,則對用戶請求包含的輸入參數類型與請求時間間隔的序列進行泛化表示,然后通過LSTM對參數序列異常檢測模型進行訓練。
2.根據權利要求1的所述訓練方法,其中通過LSTM對參數序列異常檢測模型進行訓練的步驟包括:利用參數序列異常檢測模型將來源于同一用戶登錄系統的http請求進行比較,記錄下與其前一個值相比發生變化的參數值所對應的參數ID來形成參數序列,然后引入請求時間間隔并將所生成的序列進行泛化,然后訓練LSTM使其根據第0至L-1個元素重構第1-L個元素的概率盡可能大。
3.一種無監督異常檢測方法,該方法包括以下步驟:
獲取特定Web應用服務器的http請求的字符串;
將http請求的字符串輸入參數值異常檢測模型,以便對該字符串中可能發生參數異常的字符進行提取;
對所接收到的每一個字符串按照預定泛化規則進行泛化處理,以減少輸入的維度;
將經過字符串泛化處理后的字符串中的每個字符映射成長度為L的一個一維向量,并對所得到的一維向量進行三維或兩維的詞嵌入來生成向量化字符串以便后續神經網絡優化;
采用分組卷積的淺層神經網絡提取向量化字符串的特征,并將向量化字符串映射成兩個c維隱變量,這兩個c維隱變量分別代表向量化字符串的方差σ和均值u;
以N*c維矩陣的形式保存隱變量,其中N為預設值,c為隱變量的維數,每一個隱變量作為N*c維矩陣的一個行向量;
對該N*c維矩陣中的每一個行向量Ci,i=1,2,……,N,計算其與隱變量的余弦相似度Di;
根據下面公式
來計算所接收到的N*c維矩陣中的每個行向量在重構新的隱變量時的權重,得到權重向量;
對于權重向量中小于一定閾值(通常設為2/N)的值將其置0,得到稀疏的權重向量;
對所得到的稀疏權重向量通過L1范數歸一化處理,并與所保存的未處理N*c維矩陣進行矩陣乘法來重構生成帶約束隱變量并以N*c維矩陣形式保存帶約束隱變量備用;
利用逆卷積網絡或全連接網絡將帶約束隱變量映射成為L*13的向量,其中13個維度表明當前字符位置重構為泛化后的13個字符類型的概率;
將該概率作為重構概率,通過交叉熵損失函數來計算整個序列的重構損失,并根據重構損失來判斷參數值是否出現異常;
當沒有檢測到參數值異常時結束進程,而當檢測到參數值出現異常時,收集并存儲從該異常請求開始,在后續一段時間內,直到請求數目達到設定上限L,或是超出指定時間間隔T,來自同一用戶的其他請求,并判斷收集到的一系列請求中被判別為異常的請求數目是否超過設定的百分比閾值,若超過了則直接發出告警;以及
收集到的一系列請求中被判別為異常的請求數目不超過設定的百分比閾值,則利用訓練好的參數序列異常檢測模型計算LSTM對應的重構概率,然后根據該概率判斷參數序列是否異常,若判斷參數序列正常則直接結束進程,而若判斷參數序列出現異常則發出告警后結束進程。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于杭州迪普科技股份有限公司,未經杭州迪普科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010079208.2/1.html,轉載請聲明來源鉆瓜專利網。





