Rilevamento delle anomalie

Nell'analisi dei dati, il rilevamento delle anomalie (anche detto rilevamento degli outlier)[1] è l'identificazione di osservazioni, elementi, eventi rari che differiscono in modo significativo dalla maggior parte dei dati.[1] Tipicamente gli elementi anomali porteranno a qualche tipo di problema, ad esempio casi di frode bancaria, difetti strutturali, problemi medici o errori in un testo. Le anomalie sono indicate anche come outlier, novelty, rumore, deviazioni o eccezioni.[2]

In particolare, nel contesto del rilevamento di abusi e intrusioni di rete, gli elementi anomali spesso non sono elementi che occorrono raramente, ma piuttosto picchi di attività inaspettati. Questo pattern non corrisponde alla definizione statistica comune di un valore anomalo come oggetto raro e molti metodi di rilevamento dei valori anomali (in particolare metodi non supervisionati) falliranno su tali dati, a meno che non siano stati aggregati in modo appropriato. Invece, un algoritmo di analisi dei cluster potrebbe essere in grado di rilevare i micro cluster formati da questi pattern.[3]

Esistono tre grandi categorie di tecniche di rilevamento delle anomalie, a seconda di quanto supervisionato l'algoritmo.[4] Le tecniche non supervisionate rilevano le anomalie in un dataset di prova non etichettato partendo dal presupposto che la maggior parte delle istanze nel dataset siano normali e cercando le istanze che sembrano adattarsi meno al resto dei dati. Le tecniche supervisionate, invece, richiedono dataset etichettati come "normale" e "anormale" e comportano l'addestramento di un classificatore (la differenza fondamentale rispetto a molti altri problemi di classificazione statistica è la natura intrinseca sbilanciata del rilevamento dei valori anomali). Infine, le tecniche di rilevamento semi-supervisionate, a partire da un determinato dataset, costruiscono un modello che rappresenta il comportamento "normale", e quindi, data un'istanza di test, verificano la probabilità che questa venga generata dal modello costruito.

Il rilevamento delle anomalie è applicabile in una varietà di domini, come il rilevamento delle intrusioni, il rilevamento delle frodi, il rilevamento dei guasti, il monitoraggio dello stato del sistema, il rilevamento degli eventi nelle reti di sensori, il rilevamento dei disturbi dell'ecosistema e il rilevamento dei difetti nelle immagini utilizzando la visione artificiale.[5] Viene spesso utilizzato nella pre-elaborazione per rimuovere i dati anomali dal set di dati. Nell'apprendimento supervisionato, la rimozione dei dati anomali dal set di dati spesso si traduce in un aumento statisticamente significativo dell'accuratezza.[6][7]

Nella sicurezza dei dati

[modifica | modifica wikitesto]

Il rilevamento delle anomalie è stato proposto per i sistemi di rilevamento delle intrusioni (IDS, dall'inglese intrusion detection system) da Dorothy Denning nel 1986.[8] In questa circostanza, il rilevamento viene normalmente eseguito con soglie e statistiche, ma può anche essere eseguito con il soft computing e l'apprendimento induttivo.[9] I tipi di statistiche proposte dal 1999 includevano profili di utenti, workstation, reti, host remoti, gruppi di utenti e programmi basati su frequenze, medie, varianze, covarianze e deviazioni standard.[10] La controparte del rilevamento delle anomalie nel rilevamento delle intrusioni è il rilevamento dell'uso improprio .

Nella pre-elaborazione dei dati

[modifica | modifica wikitesto]

Nell'apprendimento supervisionato, il rilevamento delle anomalie è spesso un passaggio importante nella pre-elaborazione dei dati per fornire all'algoritmo di apprendimento un set di dati adeguato su cui apprendere. Questo è anche noto come data cleaning (pulizia dei dati). Dopo aver rilevato campioni anomali, i classificatori li rimuovono anche se, a volte, i dati corrotti possono comunque fornire campioni utili per l'apprendimento. Un metodo comune per trovare campioni appropriati da utilizzare è identificare i dati rumorosi. Un approccio per trovare valori rumorosi consiste nel creare un modello probabilistico dai dati utilizzando modelli di dati non corrotti e dati corrotti.[11]

Tecniche comuni

[modifica | modifica wikitesto]

In letteratura sono state proposte diverse tecniche di rilevamento delle anomalie.[12] Tra le altre, alcune tecniche più comuni sono:

Le prestazioni dei diversi metodi dipendono molto dal set di dati e dai parametri. Un metodo ha pochi vantaggi sistematici rispetto ad un altro se si confrontano molti set di dati e parametri.[24][25]

  1. ^ a b Outlier Detection, DOI:10.1007/978-1-4899-7993-3_80719-1, ISBN 9781489979933.
  2. ^ Victoria Hodge e Jim Austin, A Survey of Outlier Detection Methodologies, in Artificial Intelligence Review, vol. 22, 2004, DOI:10.1007/s10462-004-4304-y.
  3. ^ Data mining for network intrusion detection (PDF), in Proceedings NSF Workshop on Next Generation Data Mining, 2002.
  4. ^ Anomaly detection: A survey, in ACM Computing Surveys, vol. 41, n. 3, 2009, pp. 1–58, DOI:10.1145/1541880.1541882.
  5. ^ Bergmann, The MVTec Anomaly Detection Dataset: A Comprehensive Real-World Dataset for Unsupervised Anomaly Detection, in International Journal of Computer Vision, vol. 129, n. 4, pp. 1038–1059, DOI:10.1007/s11263-020-01400-4, ISSN 0920-5691 (WC · ACNP).
  6. ^ An Experiment with the Edited Nearest-Neighbor Rule, in IEEE Transactions on Systems, Man, and Cybernetics, vol. 6, n. 6, 1976, pp. 448–452, DOI:10.1109/TSMC.1976.4309523.
  7. ^ M. R. Smith e T. Martinez, Improving classification accuracy by identifying and removing instances that should be misclassified (PDF), in The 2011 International Joint Conference on Neural Networks, 2011, pp. 2690, DOI:10.1109/IJCNN.2011.6033571, ISBN 978-1-4244-9635-8.
  8. ^ Dorothy Denning, An Intrusion-Detection Model, in IEEE Transactions on Software Engineering, vol. 13, n. 2, 1987, DOI:10.1109/TSE.1987.232894.
  9. ^ H. S. Teng, K. Chen e S. C. Lu, Adaptive real-time anomaly detection using inductively generated sequential patterns (PDF), in Proceedings of the IEEE Computer Society Symposium on Research in Security and Privacy, 1990, pp. 278–284, DOI:10.1109/RISP.1990.63857, ISBN 978-0-8186-2060-7.
  10. ^ Anita K. Jones e Robert S. Sielken, Computer System Intrusion Detection: A Survey, in Technical Report, Università della Virginia, 1999.
  11. ^ Probabilistic noise identification and data cleaning, in Third IEEE International Conference on Data Mining, IEEE Comput. Soc, 2003, pp. 131–138, DOI:10.1109/icdm.2003.1250912, ISBN 0-7695-1978-4.
  12. ^ There and back again: Outlier detection between statistical reasoning and data mining algorithms (PDF), in Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, vol. 8, n. 6, 2018, pp. e1280, DOI:10.1002/widm.1280, ISSN 1942-4787 (WC · ACNP). URL consultato il 19 gennaio 2022 (archiviato dall'url originale il 14 novembre 2021).
  13. ^ Edwin M. Knorr, Raymond T. Ng e Vladimir Tucakov, Distance-based outliers: algorithms and applications, in The VLDB Journal, vol. 8, 2000, DOI:10.1007/s007780050006.
  14. ^ Efficient algorithms for mining outliers from large data sets, Proceedings of the 2000 ACM SIGMOD international conference on Management of data, 2000, DOI:10.1145/342009.335437, ISBN 1-58113-217-4.
  15. ^ Fabrizio Angiulli e Clara Pizzuti, Fast Outlier Detection in High Dimensional Spaces, European Conference on Principles of Data Mining and Knowledge Discovery, vol. 2431, 2002, DOI:10.1007/3-540-45681-3_2, ISBN 978-3-540-44037-6.
  16. ^ LOF: identifying density-based local outliers (PDF), SIGMOD Record, 2000, DOI:10.1145/335191.335388, ISBN 1-58113-217-4.
  17. ^ (EN) Fei Tony Liu, Kai Ming Ting e Zhi-Hua Zhou, Isolation Forest, in 2008 Eighth IEEE International Conference on Data Mining, dicembre 2008, pp. 413–422, DOI:10.1109/ICDM.2008.17, ISBN 9780769535029.
  18. ^ (EN) Isolation-Based Anomaly Detection, in ACM Transactions on Knowledge Discovery from Data, vol. 6, n. 1, DOI:10.1145/2133360.2133363.
  19. ^ Local outlier detection reconsidered: a generalized view on locality with applications to spatial, video, and network outlier detection, in Data Mining and Knowledge Discovery, vol. 28, 2012, DOI:10.1007/s10618-012-0300-z.
  20. ^ Estimating the Support of a High-Dimensional Distribution, in Neural Computation, vol. 13, n. 7, 2001, DOI:10.1162/089976601750264965, PMID 11440593.
  21. ^ a b Simon Hawkins, Hongxing He e Graham Williams, Outlier Detection Using Replicator Neural Networks, in Data Warehousing and Knowledge Discovery, collana Lecture Notes in Computer Science, vol. 2454, 2002, pp. 170–180, DOI:10.1007/3-540-46145-0_17, ISBN 978-3-540-44123-6.
  22. ^ Discovering cluster-based local outliers, vol. 24, 2003, DOI:10.1016/S0167-8655(03)00003-5.
  23. ^ Hierarchical Density Estimates for Data Clustering, Visualization, and Outlier Detection, vol. 10, 2015, DOI:10.1145/2733381.
  24. ^ On the evaluation of unsupervised outlier detection: measures, datasets, and an empirical study, in Data Mining and Knowledge Discovery, vol. 30, 2016, DOI:10.1007/s10618-015-0444-8, ISSN 1384-5810 (WC · ACNP).
  25. ^ Anomaly detection benchmark data repository della Ludwig-Maximilians-Universität München; Altro collegamento Archiviato il 31 marzo 2022 in Internet Archive. dall'Università di San Paolo.

Voci correlate

[modifica | modifica wikitesto]

Collegamenti esterni

[modifica | modifica wikitesto]
Controllo di autoritàLCCN (ENsh2005007675 · J9U (ENHE987007532837405171