Condividi tramite


Rilevamento anomalie multivariate in Microsoft Fabric - Panoramica

Che cos'è il rilevamento anomalie multivariato per le serie temporali? Il rilevamento anomalie univariate, implementato dalla funzione KQL series_decompose_anomalies(), consente di monitorare e rilevare anomalie nella distribuzione di una singola variabile nel tempo. Al contrario, il rilevamento delle anomalie multivariate è un metodo per rilevare anomalie nella distribuzione congiunta di più variabili nel tempo. Questo metodo è utile quando le variabili sono correlate, pertanto la combinazione dei relativi valori in un momento specifico potrebbe essere anomala, mentre il valore di ogni variabile è normale. Il rilevamento anomalie multivariato può essere usato in varie applicazioni, ad esempio il monitoraggio dell'integrità di sistemi IoT complessi, il rilevamento di frodi nelle transazioni finanziarie e l'identificazione di modelli insoliti nel traffico di rete.

Si consideri, ad esempio, un sistema che monitora le prestazioni di una flotta di veicoli. Il sistema raccoglie dati su varie metriche, ad esempio velocità, consumo di carburante e temperatura del motore. Analizzando queste metriche insieme, il sistema può rilevare anomalie che non sarebbero evidenti analizzando singolarmente ogni metrica. Da solo, un aumento del consumo di carburante potrebbe essere dovuto a vari motivi accettabili. Tuttavia, un aumento improvviso del consumo di carburante combinato con una diminuzione della temperatura del motore potrebbe indicare un problema con il motore, anche se ogni metrica autonomamente è compresa nell'intervallo normale.

Come è possibile rilevare anomalie multivariate in Microsoft Fabric?

Il rilevamento anomalie multivariato in Fabric sfrutta i potenti motori Spark e Eventhouse su un livello di archiviazione permanente condiviso. I dati iniziali possono essere inseriti in un eventhouse ed esposti in OneLake. È quindi possibile eseguire il training del modello di rilevamento anomalie usando il motore Spark e le stime delle anomalie sui nuovi dati di streaming possono essere eseguite in tempo reale usando il motore eventhouse. L'interconnessione di questi motori in grado di elaborare gli stessi dati nell'archiviazione condivisa consente un flusso semplice di dati dall'inserimento, tramite training del modello, alla stima delle anomalie. Questo flusso di lavoro è semplice e potente per il monitoraggio in tempo reale e il rilevamento di anomalie in sistemi complessi.

Componenti della soluzione

Questa soluzione usa i seguenti componenti di Azure:

  • Eventhouse: i dati vengono inizialmente inseriti in un eventhouse, ovvero un motore di elaborazione dati in tempo reale in grado di gestire flussi di dati con velocità di trasmissione elevata.
  • OneLake: i dati dell’eventhouse vengono esposti in OneLake, che è un livello di archiviazione permanente condiviso che fornisce una visualizzazione unificata dei dati.
  • Pacchetto di rilevamento anomalie multivariato: la soluzione usa il pacchetto Python time series-anomaly-detector, implementando un algoritmo avanzato basato su una rete (GAT) che acquisisce le correlazioni tra diverse serie temporali e rileva anomalie in tempo reale. Il modello GAT viene sottoposto a training sui dati cronologici per apprendere le relazioni tra serie temporali diverse. Il modello sottoposto a training può essere applicato per stimare le anomalie ai nuovi dati di streaming. Si noti che questo algoritmo è quello usato nel servizio di IA per il Rilevamento anomalie in fase di ritiro. Per maggiori informazioni sull'algoritmo, vedere il blog e il documento.
  • Notebook Spark: usato per il training offline del modello di rilevamento anomalie sui dati cronologici e per archiviare il modello sottoposto a training nel registro dei modelli MLflow di Fabric
  • Queryset KQL: usato per la stima in tempo reale delle anomalie nei dati in ingresso.

Passaggio successivo