My IBM Accedi Iscriviti

Rilevamento di anomalie nel machine learning: individuazione di valori anomali per l'ottimizzazione delle funzioni aziendali

19 dicembre 2023

Tempo di lettura: 5 minuti

Poiché le organizzazioni raccolgono set di dati sempre più grandi con potenziali insight sulle attività aziendali, individuare dati anomali o outlier in questi set di dati è essenziale per scoprire inefficienze, eventi rari, la causa principale dei problemi o opportunità di miglioramenti operativi. Ma cos'è un'anomalia e perché è importante rilevarla?

I tipi di anomalie variano in base all'azienda e alla funzione aziendale. Rilevare le anomalie significa semplicemente definire modelli e metriche "normali" (sulla base delle funzioni e degli obiettivi aziendali) e identificare i punti dati che non rientrano nel normale comportamento di un'operazione. Ad esempio, un traffico superiore alla media su un sito web o un'applicazione per un determinato periodo può segnalare una minaccia alla cybersecurity: in questo caso è opportuno disporre di un sistema in grado di attivare automaticamente avvisi di rilevamento delle frodi. Potrebbe anche essere solo un segno che una particolare iniziativa di marketing sta funzionando. Le anomalie non sono intrinsecamente negative, ma esserne consapevoli e disporre di dati per contestualizzarle è fondamentale per comprendere e proteggere l'azienda.

La sfida per i dipartimenti IT che lavorano nel settore del data science è dare un senso all'espansione e alla continua evoluzione dei punti dati. In questo blog esamineremo come le tecniche di machine learning, alimentate dall'AI, vengono sfruttate per rilevare i comportamenti anomali attraverso tre diversi metodi di rilevamento delle anomalie: rilevamento delle anomalie supervisionato, rilevamento delle anomalie non supervisionato e rilevamento delle anomalie semi-supervisionato.

Apprendimento supervisionato

Le tecniche di apprendimento supervisionato utilizzano dati di input e output del mondo reale per rilevare anomalie. Questi tipi di sistemi di rilevamento delle anomalie richiedono l'intervento di un analista di dati, che deve etichettare i punti dati come normali o anomali da utilizzare come dati di training. Un modello di machine learning addestrato con dati etichettati sarà in grado di rilevare gli outlier in base agli esempi che gli vengono forniti. Questo tipo di apprendimento automatico è utile per il rilevamento di outlier noti, ma non è in grado di scoprire anomalie sconosciute o prevedere problemi futuri.

Gli algoritmi di machine learning comuni per l'apprendimento supervisionato includono:

  • Algoritmo K-Nearest Neighbor (KNN): questo algoritmo è un classificatore basato sulla densità o uno strumento di analisi della regressione utilizzato per il rilevamento delle anomalie. L'analisi della regressione è uno strumento statistico utilizzato per trovare la relazione tra i dati etichettati e i dati variabili. Funziona attraverso l'assunzione che i punti dati simili saranno trovati uno vicino all'altro. Se un punto dati appare più lontano da una sezione densa di punti, viene considerato un'anomalia.
  • Local outlier factor (LOF): l'outlier locale è simile al KNN in quanto è un algoritmo basato sulla densità. La differenza principale è che mentre KNN fa ipotesi basate su punti di dati più vicini tra loro, il LOF utilizza i punti più lontani per trarre le sue conclusioni.

Apprendimento non supervisionato

Le tecniche di apprendimento non supervisionato non richiedono dati etichettati e possono gestire set di dati più complessi. L'apprendimento non supervisionato è alimentato dal deep learning e dalle reti neurali o codificatori automatici che imitano il modo in cui i neuroni biologici si segnalano a vicenda. Questi potenti strumenti possono trovare modelli dai dati di input e fare ipotesi su quali dati sono percepiti come normali.

Queste tecniche possono essere molto utili per scoprire anomalie sconosciute e ridurre il lavoro di vaglio manuale di grandi set di dati. Tuttavia, sarebbe necessario che i data scientist monitorino i risultati raccolti attraverso l'apprendimento non supervisionato. Poiché queste tecniche fanno ipotesi sui dati da inserire, può accadere che etichettino in modo errato le anomalie.

Gli algoritmi di machine learning per dati non strutturati includono:

K-means: questo algoritmo è una tecnica di visualizzazione dei dati che elabora i punti dati attraverso un'equazione matematica con l'intenzione di raggruppare punti dati simili. "Means", ovvero dati medi, si riferisce ai punti al centro del cluster a cui sono correlati tutti gli altri dati. Attraverso l'analisi dei dati, questi cluster possono essere utilizzati per trovare modelli e fare inferenze su dati che risultano fuori dal comune. 

Isolation forest: questo tipo di algoritmo di rilevamento delle anomalie utilizza dati non supervisionati. A differenza delle tecniche di rilevamento delle anomalie supervisionate, che funzionano da punti dati normali etichettati, questa tecnica tenta di isolare le anomalie come primo passaggio. Simile a una "random forest", crea "decision trees", che mappano i punti dati e selezionano casualmente un'area da analizzare. Questo processo viene ripetuto e ogni punto riceve un punteggio di anomalia compreso tra 0 e 1, in base alla sua posizione rispetto agli altri punti; i valori inferiori a 0,5 sono generalmente considerati normali, mentre i valori che superano tale soglia hanno maggiori probabilità di essere anomali. I modelli di isolation forest sono disponibili nella libreria gratuita di machine learning per Python, scikit-learn (link esterno a ibm.com).

One-class support vector machine (SVM): questa tecnica di rilevamento delle anomalie utilizza i dati di addestramento per stabilire i limiti di ciò che è considerato normale. I punti raggruppati entro i limiti stabiliti sono considerati normali e quelli esterni sono etichettati come anomalie.

Apprendimento semi-supervisionato

I metodi di rilevamento delle anomalie semi-supervisionati combinano i vantaggi dei due metodi precedenti. Gli ingegneri possono applicare metodi di apprendimento non supervisionato per automatizzare l'apprendimento delle funzionalità e lavorare con dati non strutturati. Tuttavia, combinandoli con la supervisione umana hanno l'opportunità di monitorare e controllare il tipo di schemi appresi dal modello. Questo di solito aiuta a rendere le previsioni del modello più accurate.

Regressione lineare: questo strumento di machine learning predittivo utilizza variabili dipendenti e indipendenti. La variabile indipendente viene utilizzata come base per determinare il valore della variabile dipendente attraverso una serie di equazioni statistiche. Queste equazioni utilizzano dati etichettati e non etichettati per prevedere i risultati futuri quando solo si conoscono solo alcune delle informazioni.

Casi d'uso per il rilevamento dell'anomalia

Il rilevamento delle anomalie è uno strumento importante per la manutenzione delle funzioni aziendali in vari settori. L'uso di algoritmi di apprendimento supervisionati, non supervisionati e semi-supervisionati dipenderà dal tipo di dati raccolti e dalla sfida operativa da risolvere. Esempi di casi d'uso per il rilevamento delle anomalie includono:

Casi d'uso dell'apprendimento supervisionato:

Retail

 

L'utilizzo di dati etichettati relativi ai totali delle vendite dell'anno precedente può aiutare a prevedere gli obiettivi di vendita futuri. Può anche aiutare a stabilire parametri di riferimento per determinati dipendenti addetti alle vendite in base alle loro prestazioni passate e alle esigenze generali dell'azienda. Poiché tutti i dati di vendita sono noti, è possibile analizzare i modelli per ottenere insight dettagliati sui prodotti, sul marketing e sulla stagionalità.

Previsioni meteo

 

Utilizzando dati storici, gli algoritmi di apprendimento supervisionato possono aiutare nella previsione dei modelli meteorologici. L'analisi dei dati recenti relativi alla pressione barometrica, alla temperatura e alla velocità del vento consente ai meteorologi di creare previsioni più accurate che tengano conto delle condizioni mutevoli.

Casi d'uso dell'apprendimento non supervisionato:

Sistema di rilevamento delle intrusioni

 

Questi tipi di sistemi si presentano sotto forma di software o hardware, che monitorano il traffico di rete alla ricerca di segni di violazioni della sicurezza o attività dannose. Gli algoritmi di machine learning possono essere addestrati per rilevare potenziali attacchi a una rete in tempo reale, proteggendo le informazioni dell'utente e le funzioni del sistema.

Questi algoritmi possono creare una visualizzazione delle prestazioni normali basata sui dati di serie temporali, che analizza i punti dati a intervalli prestabiliti per un periodo di tempo prolungato. I picchi di traffico di rete o i modelli imprevisti possono essere contrassegnati ed esaminati come potenziali violazioni di sicurezza.

Produzione industriale

 

Assicurarsi che i macchinari funzionino correttamente è fondamentale per fabbricare prodotti, ottimizzare la garanzia della qualità e mantenere le supply chain. Gli algoritmi di apprendimento non supervisionato possono essere utilizzati per la manutenzione predittiva: acquisiscono dati non etichettati dai sensori collegati alle apparecchiature e fanno previsioni su potenziali guasti o malfunzionamenti. Ciò consente alle aziende di effettuare riparazioni prima che si verifichi un guasto critico, riducendo il tempo di inattività delle macchine.

Casi d'uso dell'apprendimento semi-supervisionato:

Settore medico

 

Utilizzando algoritmi di apprendimento automatico, i professionisti sanitari possono etichettare le immagini che contengono malattie o disturbi noti. Tuttavia, poiché le immagini variano da persona a persona, è impossibile etichettare tutte le potenziali cause di preoccupazione. Una volta addestrati, questi algoritmi possono elaborare le informazioni sui pazienti e fare inferenze in immagini non etichettate per segnalare potenziali motivi di preoccupazione.

Rilevazione di frodi

 

Gli algoritmi predittivi possono utilizzare l'apprendimento semi-supervisionato che richiede dati etichettati e non etichettati per rilevare le frodi. Poiché l'attività della carta di credito di un utente è etichettata, può essere utilizzata per rilevare comportamenti di spesa insoliti.

Tuttavia, le soluzioni di rilevamento delle frodi non si basano esclusivamente su transazioni precedentemente etichettate come frodi: possono anche formulare ipotesi basate sul comportamento degli utenti, tra cui la posizione attuale, il dispositivo di accesso e altri fattori che richiedono dati non etichettati.

Osservabilità nel rilevamento delle anomalie

Il rilevamento delle anomalie è supportato da soluzioni e strumenti che garantiscono una maggiore osservabilità dei dati sulle prestazioni. Questi strumenti consentono di identificare rapidamente le anomalie, aiutando a prevenire e risolvere i problemi. IBM® Instana Observability sfrutta l'intelligenza artificiale e il machine learning per fornire a tutti i membri del team un quadro dettagliato e contestualizzato dei dati sulle prestazioni, aiutando a prevedere con precisione e risolvere proattivamente gli errori.

IBM watsonx.ai offre un potente strumento di AI generativa in grado di analizzare grandi set di dati per estrarre insight significativi. Attraverso un'analisi rapida e completa, IBM watson.ai è in grado di identificare modelli e tendenze che possono essere utilizzati per rilevare le anomalie attuali e fare previsioni sugli outlier futuri. Watson.ai può essere utilizzato in tutti i settori per svariate esigenze aziendali.

Autore

Camilo Quiroz-Vázquez

IBM Staff Writer