Deep one-class classification


 

Deep one-class classification

版權聲明:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
本文鏈接: https://blog.csdn.net/zpainter/article/details/88619865
 
 
 
 
 
 
 
 

論文名:Deep one class classification

作者:Lukas Ruff * 1  Robert A. Vandermeulen * 2 Nico Gornitz ¨ 3

發表刊物:ICML

發表時間:2018

相關概念:

OCSVM

SVDD

 

提出方法:

Deep SVDD

 

Abstract

Those approaches which do exist involve networks trained to perform a task other than anomaly detection, namely generative models or compression, which are in turn adapted for use in anomaly detection; they are not trained on an anomaly detection based objective.

確實存在一些方法,使用訓練的網絡來執行異常檢測之外的任務,被稱為生成模型或壓縮,反過來也可以被用在異常檢測中,他們沒有在基於異常檢測的目標上進行訓練。

Introduction

需要能在很大的數據集、很高維的數據中檢測異常

 

傳統的異常檢測方法:

One-Class SVM單分類SVM (OCSVM):最優超平面,坐標原點被假定為唯一的異常樣本

SVDD:原始數據--高維表示--Min超球體積--求得c和R。

Kernel Density Estimation 核密度估計(KDE)

缺點:

1、淺層特征工程。由於糟糕的計算可擴展性和維度詛咒,導致在高維數據場景中經常失敗。為了有效,這種淺層方法通常需要大量的特征工程。

2、由於和矩陣的構造和操作導致a poor computational scaling,除非使用近似技術,否則規模至少為樣本數的平方。

3、核方法需要存儲支持向量,需要大量內存。

 

深度學習的方法:

用深度學習做異常檢測的難點在於找到合適的無監督學習深度對象是很困難的

現在的一些方法結果不錯,但是他們都沒有通過優化基於異常檢測目標函數的優化來進行訓練,並且大多是有依賴於基於重建誤差的啟發式算法

mix:
fully deep:

---------------------

本文提出了一種新的深度異常檢測的方法,靈感來源於基於核的單分類問題以及最小體積估計。

1、我們的方法Deep SVDD,訓練一個神經網絡,然后最小化包含網絡中數據特征的超球體積,提取數據分布變化的共同因素。fully deep //unsupervised

other deep AD: 依賴重建誤差,無論是在用於學習表示的混合方法中,還是直接用於學習和檢測中。

2、Deep autoencoder:會有低維的中間表示,最小化重建誤差。網絡可以從正常的樣本中提取出共同因子並進行重建,二異常樣本這些共同的因素所以不能被准確的重建。可以在Mix和fully deep中使用。mix:將學習到的 嵌入向量運用到傳統的AD 中。fully deep:直接用重建誤差作為異常分數。

denoising autoencoder、variational autoencoder、sparse autoencoder、deep convolutional autoencoder(DCAEs)(應用於圖像視頻數據的AD應用中)自動編碼器不直接以AD為目標,應用與此的主要困難是壓縮的度,也就是降維的度。

3、AnoGAN:test data--生成樣本--潛在空間表示。重建誤差、異常分數。與自動編碼器類似,困難在於如何正則化(規范化)生成器以實現緊湊性。

 

method

Soft-bound Deep SVDD,一種深度一分類的方法

聯合學習參數W和最小化在輸出空間包含數據的超球的體積

目標函數:

第一項最小化超球體積。

第二項是對那些位於超球外的懲罰項,超參v控制超球體積和超過邊界的一個權衡。如果v大,就允許一定的超出,如果v很小,超出一點就施以很大的懲罰。

第三項是網絡參數W上的權重衰減正則化。

 

One-Class Deep SVDD

目標函數:

第一項,使用二次損失來懲罰每個網絡表示到超球中心的距離。

第二項,網絡權重衰減正則項,λ是超參。

One-Class Deep SVDD也可以視為找到最小體積的超球。 但與軟邊界deep SVDD不同,deep SVDD通過直接懲罰半徑和落在球體外的數據表示而收縮球體,One-Class Deep SVDD通過最小化所有數據表示到中心的平均距離來收縮球體。 同樣,為了將數據(平均)盡可能映射到接近中心c,神經網絡必須提取變異的共同因子。 對所有數據點上的平均距離進行懲罰而不是允許某些點落在超球外,這與大多數訓練數據來自一個類的假設是一致的。

 

異常分數可以用上式來計算,異常樣本結果為正,正常樣本結果為負。

優化 Deep SVDD

命題1 權重是全0的話,網絡產生一個常數函數映射到超球中心,導致超球崩潰,因為超球半徑為0。

命題2 網絡中的隱藏層有偏移項bias term,也是學習到一個常數函數映射,導致超球崩潰。

命題3 具有有界激活函數的網絡單元,會在后續層中模擬偏移項,這又導致超球崩潰。 因此,在Deep SVDD中應首選無界激活函數(或僅被0 bound的函數),例如ReLU,以避免由於“學習”偏移項導致的超球崩潰。

 

results

 

 

 

 

SVDD和OCSVM的比較

版權聲明:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
本文鏈接: https://blog.csdn.net/qq_33880788/article/details/79550723

    OCSVM(one class support vector machine)即單類支持向量機,最先提出的文獻為:Estimating the support of a high-dimensional distribution.  該模型 將數據樣本通過核函數映射到高維特征空間,使其具有更良好的聚集性,在特征空間中求解一個最優超平面實現目標數據與坐標原點的最大分離,如圖1:

坐標原點被假設為唯一的一個異常樣本,最優超平面與坐標原點最大距離為, 並允許少部分樣本在坐標原點與分界面之間,與分類超平面的距離為

 

 

    SVDD((Support Vector Data Description)即支持向量數據描述,最先提出的文獻為:Support Vector Data Description,,其基本思想是通過在映射到高維的特征空間中找出一個包圍目標樣本點的超球體,並通過最小化該超球體所包圍的體積讓目標樣本點盡 能地被包圍在超球體中,而非目標樣本點盡可能地排除在超球體中,從而達到兩類之間划分的目的。該方法目標是求出能夠包含正常數據樣本的最小超球體的中心a和半徑R。

    兩種單分類方法的區別與聯系:

通過以上的分析 ,建立了 2種模型之間存在的聯系 ,可見不同之處在於對 的標准化約束和誤差函數,當對數據進行標准化處理后 ,2種模型能夠取得一樣的效果 。同時SVDD的論文指出當采用高斯核函數時,2種模型對數據的描述效果相當。

參考:基於支持向量的單類分類方法綜述  吳定海,張培林,任國全,陳非

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM