9 approcci per identificare anomalie

In articolo precedente Abbiamo parlato della previsione delle serie temporali. Un seguito logico sarebbe un articolo sull'individuazione delle anomalie.

Applicazione

L'individuazione delle anomalie viene utilizzata in campi come:

1) Previsione dei guasti delle attrezzature

Nel 2010, le centrifughe iraniane sono state attaccate dal virus Stuxnet, che ha impostato una modalità di funzionamento non ottimale per l'attrezzatura e ha danneggiato parte dell'operato a causa dell'usura accelerata.

Se sull'attrezzatura fossero stati utilizzati algoritmi di rilevamento delle anomalie, si sarebbero potute evitare situazioni di guasto.

9 approcci per identificare anomalie

La ricerca di anomalie nel funzionamento delle attrezzature viene utilizzata non solo nell'industria nucleare, ma anche nella metallurgia e nel funzionamento delle turbine aeree. E in altri settori in cui l'uso della diagnostica predittiva è più economico rispetto alle possibili perdite causate da guasti imprevisti.

2) Previsione di attività fraudolente

Se dal tuo conto, che usi a Podol'sk, vengono prelevati soldi in Albania, è possibile che le transazioni debbano essere verificate ulteriormente.

3) Individuazione di schemi di consumo anomali

Se parte dei clienti mostra comportamenti anomali, è possibile che ci sia un problema di cui non sei a conoscenza.

4) Individuazione di domanda e carico anomali

Se le vendite nel negozio FMCG sono scese al di sotto del limite dell'intervallo di fiducia della previsione, vale la pena ricercare la causa di quanto sta accadendo.

Approcci all'individuazione delle anomalie

1) Metodo dei vettori di supporto a classe singola One-Class SVM

Adatto quando nel set di addestramento i dati seguono una distribuzione normale, mentre in quello di test contengono anomalie.

Il metodo dei vettori di supporto a classe singola costruisce una superficie non lineare attorno all'origine. È possibile impostare un limite di soglia su quali dati considerare anomali.

Sulla base dell'esperienza del nostro team DATA4, One-Class SVM è l'algoritmo più frequentemente utilizzato per risolvere il problema del rilevamento delle anomalie.

9 approcci per identificare anomalie

2) Metodo della foresta isolante – isolate forest

Con il metodo "casuale" di costruzione degli alberi, i valori anomali entreranno nelle foglie nelle prime fasi (a bassa profondità dell'albero), quindi gli outlier sono più facili da "isolare". L'evidenziazione dei valori anomali avviene nelle prime iterazioni dell'algoritmo.

9 approcci per identificare anomalie

3) Elliptic envelope e metodi statistici

Utilizzato quando i dati sono distribuiti normalmente. Più un'osservazione è vicina alla coda della miscela di distribuzioni, più il valore è considerato anomalo.

A questa classe si possono attribuire anche altri metodi statistici.

9 approcci per identificare anomalie

9 approcci per identificare anomalie
Immagine dal sito dyakonov.org

4) Metodi metrici

Tra i metodi rientrano algoritmi come k nearest neighbors, nearest neighbor, ABOD (angle-based outlier detection) o LOF (local outlier factor).

Sono adatti se la distanza tra i valori delle caratteristiche è equivalente o normalizzata (per non misurare un boa in pappagalli).

L'algoritmo k nearest neighbors presuppone che i valori normali siano localizzati in un'area specifica dello spazio multidimensionale, e che la distanza dalle anomalie sia maggiore rispetto a quella della hyperplane di separazione.

9 approcci per identificare anomalie

5) Metodi di clustering

L'essenza dei metodi di clustering è che se un valore è distante dai centri dei cluster oltre una certa soglia, quel valore può essere considerato anomalo.

È fondamentale utilizzare un algoritmo che clusterizza correttamente i dati, il che dipende dal compito specifico.

9 approcci per identificare anomalie

6) Metodo delle componenti principali

Adatto dove vengono evidenziate le direzioni di maggiore variazione della varianza.

7) Algoritmi basati sulla previsione di serie temporali

L'idea è che se un valore si discosta dall'intervallo di confidenza della previsione, quel valore è considerato anomalo. Per la previsione delle serie temporali si usano algoritmi come il smoothing triplo, S(ARIMA), boosting, ecc.

Di algoritmi per la previsione di serie temporali si è parlato nell'articolo precedente.

9 approcci per identificare anomalie

8) Apprendimento supervisionato (regressione, classificazione)

Se i dati lo consentono, utilizziamo algoritmi che spaziano dalla regressione lineare fino alle reti ricorrenti. Misureremo la differenza tra la previsione e il valore reale, e valuteremo quanto i dati si discostano dalla norma. È importante che l'algoritmo abbia una capacità di generalizzazione sufficiente e che il set di addestramento non contenga valori anomali.

9) Test di modello

Approachiamo il compito di rilevamento delle anomalie come un problema di raccomandazione. Scomponiamo la nostra matrice di caratteristiche utilizzando SVD o macchine di fattorizzazione, e i valori nella nuova matrice, sostanzialmente diversi da quelli originali, vengono considerati anomali.

9 approcci per identificare anomalie

Immagine dal sito dyakonov.org

Conclusione

In questo articolo abbiamo esaminato gli approcci principali alla rilevazione delle anomalie.

La ricerca di anomalie può essere considerata in molti modi un'arte. Non esiste un algoritmo o un approccio perfetto in grado di risolvere tutte le problematiche. È più comune l'uso di un insieme di metodi per affrontare casi specifici. La ricerca delle anomalie avviene tramite metodi come Support Vector Machine, Foreste Isolanti, metodi metrici e di clustering, oltre all'uso di componenti principali e previsioni di serie temporali.

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

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster