9 approcci per rilevare anomalie

В articolo precedente abbiamo parlato di previsione delle serie temporali. Una continuazione logica sarebbe un articolo sull'identificazione delle anomalie.

applicazione

Il rilevamento delle anomalie viene utilizzato in aree quali:

1) Previsione dei guasti alle apparecchiature

Così, nel 2010, le centrifughe iraniane sono state attaccate dal virus Stuxnet, che ha impostato le apparecchiature su un funzionamento non ottimale e ne ha disabilitato alcune a causa dell'usura accelerata.

Se sull'apparecchiatura fossero stati utilizzati algoritmi di rilevamento delle anomalie, la situazione di guasto avrebbe potuto essere evitata.

9 approcci per rilevare anomalie

La ricerca di anomalie nel funzionamento delle apparecchiature viene utilizzata non solo nell'industria nucleare, ma anche nella metallurgia e nel funzionamento delle turbine degli aerei. E in altri ambiti in cui l’uso della diagnostica predittiva è più economico delle possibili perdite dovute a guasti imprevedibili.

2) Previsione della frode

Se viene prelevato denaro dalla carta utilizzata a Podolsk in Albania, potrebbe essere necessario verificare ulteriormente le transazioni.

3) Identificazione di modelli di consumo anomali

Se alcuni clienti mostrano un comportamento anomalo, potrebbe esserci un problema di cui non sei a conoscenza.

4) Identificazione di domanda e carico anomali

Se le vendite in un negozio di beni di largo consumo sono scese al di sotto dell'intervallo di confidenza della previsione, vale la pena trovare il motivo di ciò che sta accadendo.

Approcci per identificare le anomalie

1) Supporta la macchina vettoriale con SVM a una classe a una classe

Adatto quando i dati nel set di training seguono una distribuzione normale, ma il set di test contiene anomalie.

La macchina vettoriale di supporto di una classe costruisce una superficie non lineare attorno all'origine. È possibile impostare un limite limite oltre il quale i dati vengono considerati anomali.

Basato sull'esperienza del nostro team DATA4, One-Class SVM è l'algoritmo più comunemente utilizzato per risolvere il problema della ricerca di anomalie.

9 approcci per rilevare anomalie

2) Metodo della foresta isolata

Con il metodo “casuale” di costruzione degli alberi, le emissioni entreranno nelle foglie nelle fasi iniziali (a una profondità ridotta dell’albero), vale a dire le emissioni sono più facili da “isolare”. L'isolamento dei valori anomali avviene nelle prime iterazioni dell'algoritmo.

9 approcci per rilevare anomalie

3) Inviluppo ellittico e metodi statistici

Utilizzato quando i dati sono distribuiti normalmente. Quanto più la misurazione è vicina alla coda della miscela di distribuzioni, tanto più anomalo è il valore.

In questa classe possono essere inclusi anche altri metodi statistici.

9 approcci per rilevare anomalie

9 approcci per rilevare anomalie
Immagine da dyakonov.org

4) Metodi metrici

I metodi includono algoritmi come k-vicini più vicini, k-vicini più vicini, ABOD (rilevamento anomalo basato sull'angolo) o LOF (fattore anomalo locale).

Adatto se la distanza tra i valori nelle caratteristiche è equivalente o normalizzata (in modo da non misurare un boa constrictor nei pappagalli).

L'algoritmo dei vicini k-più vicini presuppone che i valori normali si trovino in una determinata regione dello spazio multidimensionale e che la distanza dalle anomalie sarà maggiore rispetto all'iperpiano di separazione.

9 approcci per rilevare anomalie

5) Metodi di cluster

L'essenza dei metodi cluster è che se un valore si trova a più di una certa distanza dai centri dei cluster, il valore può essere considerato anomalo.

La cosa principale è utilizzare un algoritmo che raggruppi correttamente i dati, che dipende dall'attività specifica.

9 approcci per rilevare anomalie

6) Metodo delle componenti principali

Adatto laddove si evidenziano le direzioni di maggiore variazione della dispersione.

7) Algoritmi basati sulla previsione di serie temporali

L'idea è che se un valore non rientra nell'intervallo di confidenza della previsione, il valore è considerato anomalo. Per prevedere una serie temporale, vengono utilizzati algoritmi come il triplo livellamento, S(ARIMA), il boosting, ecc.

Gli algoritmi di previsione delle serie temporali sono stati discussi nell'articolo precedente.

9 approcci per rilevare anomalie

8) Apprendimento supervisionato (regressione, classificazione)

Se i dati lo consentono, utilizziamo algoritmi che vanno dalla regressione lineare alle reti ricorrenti. Misuriamo la differenza tra la previsione e il valore effettivo e traiamo una conclusione in che misura i dati si discostano dalla norma. È importante che l'algoritmo abbia sufficiente capacità di generalizzazione e che il training set non contenga valori anomali.

9) Prove su modelli

Affrontiamo il problema della ricerca di anomalie come un problema di ricerca di raccomandazioni. Scomponiamo la nostra matrice delle caratteristiche utilizzando SVD o macchine di fattorizzazione e prendiamo come anomali i valori nella nuova matrice che sono significativamente diversi da quelli originali.

9 approcci per rilevare anomalie

Immagine da dyakonov.org

conclusione

In questo articolo abbiamo esaminato i principali approcci al rilevamento delle anomalie.

Trovare anomalie può essere definita in molti modi un'arte. Non esiste un algoritmo o un approccio ideale, il cui utilizzo risolve tutti i problemi. Più spesso viene utilizzata una serie di metodi per risolvere un caso specifico. Il rilevamento delle anomalie viene effettuato utilizzando macchine vettoriali di supporto di una classe, isolando foreste, metodi metrici e cluster, nonché utilizzando componenti principali e previsioni di serie temporali.

Se conosci altri metodi, scrivili nei commenti all'articolo.

Fonte: habr.com

Aggiungi un commento