本發明屬于電數字數據處理領域,具體涉及一種基于變分自編碼器的弱監督異常檢測方法及系統。
背景技術:
1、對于網絡異常檢測、金融欺詐檢測、視頻監控等眾多的領域來說,異常檢測是一項重要且基礎的任務。它已經在許多應用場景中得到了很好的研究,許多算法在相關的公共數據集上都展現出了很好的性能。然而,想要獲取帶標注的異常樣本比較困難,需要耗費大量的人力物力。使用少量帶標記的異常樣本和大量正常樣本進行異常檢測仍然是一項挑戰。
2、近年來,隨著深度學習的發展,基于深度學習的方法為異常檢測開辟了新的途徑。基于深度學習的方法主要分為有監督學習方法、無監督學習方法和弱監督學習方法。有監督異常檢測方法旨在使用標記數據來訓練異常檢測器以預測正常和異常。由于有監督學習在訓練過程中需要使用大量標注的正常和異常數據來確保兩類數據保持相對平衡,而數據集的標注需要耗費大量的人力和時間成本。因此在進行異常檢測時,大部分研究人員均采用無監督或弱監督學習方法。無監督異常檢測方法旨在使用未標記的數據訓練一個生成模型來近似正常樣本的分布,該模型可以檢測異常樣本作為生成模型的異常值。然而訓練中缺乏異常數據的信息,無監督學習的模型往往具有較低的解釋性,限制了其在實際應用中的可用性。弱監督異常檢測方法旨在利用有限的、含有噪聲的或標注不準確的數據進行模型訓練,成功地解決了異常檢測任務中面臨的標注數據稀缺和數據不平衡的問題。這些方法通常將正常樣本和有限的異常樣本分別映射到各自獨特的分布中,從而高效地利用了有限的異常檢測資源。然而,構建這樣的異常檢測器面臨著一個顯著的挑戰:模型很容易過度關注于有限的異常樣本而造成過擬合。
3、因此,如何實現異常檢測的準確與高效,成為當前的研究重點。現有技術在利用數據分布極不平衡的數據進行異常檢測時存在過擬合問題。
技術實現思路
1、為克服上述現有技術的不足,本發明提供了一種基于變分自編碼器的弱監督異常檢測方法及系統,利用變分自編碼器來提取特征進行異常檢測,解決針對弱監督異常檢測中數據分布極不平衡且標簽數據有限的問題。
2、為了實現上述目的,本發明采用如下技術方案:一種基于變分自編碼器的弱監督異常檢測方法,具體包括如下步驟:步驟1:通過數據處理模塊,將輸入數據中的正常樣本和異常樣本分別進行數據增強;步驟2:通過檢測模塊,將增強后的數據輸入到訓練好的基于特征編碼策略的異常檢測模型中,利用異常檢測模型中的變分自編碼器從輸入數據中提取特征,進行異常檢測。
3、優選地,異常檢測模型,包括數據預處理、特征編碼器和異常評分生成器;數據預處理,采用mixup網絡,被配置為用于對輸入數據進行數據增強;特征編碼器,采用變分自編碼器,被配置為用于從輸入數據中提取特征;異常評分生成器,采用多層感知器,被配置為用于計算出每個輸入樣本的異常分數。
4、優選地,異常檢測模型采用變分自編碼器的結構,通過兩個階段的訓練過程進行聯合優化,包括預訓練和端到端訓練兩個過程;其中,預訓練過程以最大化變分下界為目標,獲得一個基本的編碼策略,用于接下來整個網絡的端到端訓練;端到端訓練過程以最小化變分自編碼器對正常數據的重構誤差以及確保異常評分區分正常和異常的能力為目標,構建損失函數約束訓練過程,不斷減少輸入數據和重構數據的差異,直到滿足訓練停止的條件。
5、優選地,損失函數,包括變分下界損失、重構誤差損失、異常評分損失;分別對應變分自編碼器中的正態分布、變分自編碼器的輸入向量和重構向量以及異常評分生成器;其中,
6、變分下界損失,包括重構誤差損失和kl散度,分別用于減小輸入樣本和重構樣本之間的差異、使編碼器輸出的正態分布趨近于標準正態分布;重構誤差損失,設定一個閾值,期望異常樣本的重構誤差能夠顯著超過此閾值,將正常樣本和異常樣本區分開來;異常評分損失,期望正常樣本的異常分數符合先驗分布,而異常樣本的異常分數則偏離先驗分布。
7、一種基于變分自編碼器的弱監督異常檢測系統,包括數據處理模塊和檢測模塊;其中,數據處理模塊,被配置為用于將輸入數據中的正常樣本和異常樣本分別進行數據增強;檢測模塊,被配置為用于將增強后的數據輸入到訓練好的基于特征編碼策略的異常檢測模型中,檢測出是否出現異常。
8、一種電子設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機可讀指令;其中,存儲器,被配置為用于非暫時性存儲計算機可讀指令;處理器,被配置為用于運行計算機可讀指令;其中,計算機可讀指令被處理器運行時,執行如上所述的一種基于變分自編碼器的弱監督異常檢測方法中的步驟。
9、一種存儲介質,非暫時性地存儲計算機可讀指令,其中,當計算機可讀指令由計算機執行時,執行如上所述的一種基于變分自編碼器的弱監督異常檢測方法中的步驟。
10、本發明所帶來的有益技術效果:本發明提出的基于特征編碼策略的異常檢測模型,首先,在數據輸入階段,對輸入數據的正常樣本和異常樣本分別引入了mixup算法,利用mixup網絡實現對輸入數據進行數據增強,減小過擬合;通過生成偽樣本來增強模型的訓練,提高模型的泛化能力和魯棒性,從而提升異常檢測的性能;其次,在特征提取階段,引入變分自編碼器作為一種深度生成模型,結合了自編碼器的思想和概率圖模型的概念;通過變分自編碼器實現對輸入數據特征的有效提取,進一步減小了過擬合問題;通過引入概率性的潛在變量以及運用變分推斷的機制使得模型在潛在空間中對數據分布具有了更強的建模能力,更好的適應復雜多變的數據,表現出了更強的泛化能力;最后,采用多層感知機,為每個輸入樣本計算一個異常分數,檢測輸入樣本是否異常,提高了模型的檢測精度;在編碼器和解碼器上都引入了自注意力機制,可以幫助模型更好的關注異常樣本的特征,對輸入數據進行更準確的重建,進一步提升特征提取能力。
11、在涵蓋多個領域的數據集上的實驗結果表明,本文提出的方法能夠有效提升異常檢測任務中的檢測精度;本發明的異常檢測模型在基于變分自編碼器的異常檢測方面展現出優異的檢測效果,可以很好的解決針對帶標注的異常樣本數量不足的問題。
1.一種基于變分自編碼器的弱監督異常檢測方法,其特征在于:具體包括如下步驟:
2.根據權利要求1所述的基于變分自編碼器的弱監督異常檢測方法,其特征在于:異常檢測模型,包括數據預處理、特征編碼器和異常評分生成器;
3.根據權利要求1所述的基于變分自編碼器的弱監督異常檢測方法,其特征在于:異常檢測模型采用變分自編碼器的結構,通過兩個階段的訓練過程進行聯合優化,包括預訓練和端到端訓練兩個過程;其中,預訓練過程以最大化變分下界為目標,獲得一個基本的編碼策略,用于接下來整個網絡的端到端訓練;端到端訓練過程以最小化變分自編碼器對正常數據的重構誤差以及確保異常評分區分正常和異常的能力為目標,構建損失函數約束訓練過程,不斷減少輸入數據和重構數據的差異,直到滿足訓練停止的條件。
4.根據權利要求3所述的基于變分自編碼器的弱監督異常檢測方法,其特征在于:損失函數,包括變分下界損失、重構誤差損失、異常評分損失;分別對應變分自編碼器中的正態分布、變分自編碼器的輸入向量和重構向量以及異常評分生成器;其中,
5.一種基于變分自編碼器的弱監督異常檢測系統,其特征在于:包括數據處理模塊和檢測模塊;其中,