SlideShare a Scribd company logo
CLOUD
CONFERENCE
ITALIA
2019
SPONSOR
STRUMENTI AZURE PER L'ANOMALY DETECTION
IN AMBITO INDUSTRIA 4.0
Ariel Cedola
WHO AMI?
Ariel Cedola
Data Scientist
Ariel Cedola
acedola@welol.it
PhD, PoliTO (IT)
Electronics Engineer, UNLP (Arg)
AGENDA
 ANOMALY DETECTION
 APPLICAZIONE IN CONDITION MONITORING
 STRUMENTIAZURE PERL’ANOMALY DETECTION
 COGNITIVE SERVICESANOMALY DETECTOR
 DEMO
ANOMALY DETECTION
Cos’è una ANOMALIA?
Una ANOMALIA (outlier) è un evento non previsto, che non è stato osservato precedentemente nei dati
storici di un sistema e che risulta fuori del normale.
Anomalia puntuale Anomalia contestuale Anomalia collettiva
ANOMALY DETECTION
Alcune possibile cause delleANOMALIE:
 Errori di data entry(X1)
 Eventi inusuali (X2)
 Patterns anormali
ANOMALY DETECTION
Il RILEVAMENTO DELLEANOMALIE in un sistema consiste nell'identificazione di eventi anomali
utilizzando metodi computazionali.
Scenari di applicazione e casi di uso:
Frodi carte di credito
Intrusioni di rete
Black-outs
Aumento delle vendite
Battiti irregolari
Guasto di macchina
ANOMALY DETECTION
06/09/2019 13/09/2019 20/09/2019 27/09/2019
Value
Inversione di tendenza
ESEMPIO 1: ANALISI UNIVARIATA
Cambio di livello
Spikes
Dips
ANOMALY DETECTION
anomalie
ESEMPIO 2: ANALISI MULTIVARIATA(2 o più variabili)
s1(t) s2(t)
s1 vs s2
ANOMALY DETECTION
ESEMPIO 2: ANALISI MULTIVARIATA(2 o più variabili)
ANOMALY DETECTION
Sfida dal punto di vista computazionale
Si devono individuare eventi:
 Diversi dalla maggior parte dei dati disponibili
 Non previsti
 Con bassa frequenza ( << 1%)
 In modo tempestivo
Il MACHINE LEARNING è lo strumento più adatto per eseguire il rilevamento delle anomalie.
y1
y2
ANOMALY DETECTION
Metodi alternativi:
Visualizzazione Soglie + regole
(if-then-else)
Box plot
ANOMALY DETECTION
Casi reali
ANOMALY DETECTION
Cos’è il MACHINE LEARNING?
È un insieme di modelli e tecniche che permettono ai computer di apprendere a partire da enormi
quantità di dati.
ANOMALY DETECTION
Modello di Machine Learning SUPERVISIONATO vs NON SUPERVISIONATO
Training
modello
Consumo
modello
Anomalie
Dati
Nuovi dati
Individuazione
delle anomalie
Modello SUPERVISIONATO
ANOMALY DETECTION
Modello di Machine Learning SUPERVISIONATO vs NON SUPERVISIONATO
Training
modello
Modello
AD
Anomalie
Dati
Dati
Modello
Individuazione
delle anomalie
ANOMALY DETECTION
Modello di Machine Learning NON SUPERVISIONATO
Modello
AD
Dati
Individuazione
delle anomalie
Algoritmi
PCA
Isolation Forest
One-class SVM
k-means
and more…!
Quale usare?
APPLICAZIONE IN CONDITION MONITORING
Cos’è la CONDITION MONITORING?
 È una componente della manutenzione predittiva applicata in ambito industriale
 Si utilizzano sensori per misurare e monitorare lo stato delle macchine in funzionamento
 I dati rilevati vengono usati per analizzare tendenze, prevedere i guasti e calcolare la vita utile residua (RUL)
 La manutenzione viene fatta quando i dati mostrano che:
 la performance di una macchina è in diminuzione
 l’andamento di una variabile ha una tendenza verso valori fuori dell’intervallo sicuro
 c’è probabilità di guasto nel breve termine
 ci sono eventianomali
APPLICAZIONE IN CONDITION MONITORING
Tecniche di CONDITIONMONITORING
Analisi del olio lubrificante
Analisi delle vibrazioni
Test circuito del motore
Termografia IR
Monitoraggio acustico ed ultrasonico
Radiografia e interferometria laser
Monitoraggio elettrico/elettromagnetico
Performance operativa
APPLICAZIONE IN CONDITION MONITORING
Caso di uso CONDITIONMONITORING
anomalia
STRUMENTI AZURE PERL’ANOMALYDETECTION
COGNITIVE SERVICESANOMALY DETECTOR
COGNITIVE SERVICESANOMALY DETECTOR
API che permette di monitorare e rilevare le anomalie presenti nei
dati di serie temporali, applicando modelli di Machine Learning
COGNITIVE SERVICESANOMALY DETECTOR
serie temporale
COGNITIVE SERVICESANOMALY DETECTOR
 Selezione automatica delmodello
 Fourier Transformation
 Extreme Studentized Deviate(ESD)
 STLDecomposition
 DynamicThreshold
 Z-score detector
 Spectral Residual & Convolutional Neural Network (SR-CNN)
3 punti diforza
 Semplicità
 Utilizzo tramite chiamate HTTP,un unico parametro, non serve conoscenza ML *
 Libreria client in Python, C# e Node.js
 Integrazione
 Servizio cloud gestito suAzure Cognitive Services
COGNITIVE SERVICESANOMALY DETECTOR
Selezione del modello
• continuità
• media
• deviazione standard
• tendenza
• periodo
serie temporale
COGNITIVE SERVICESANOMALY DETECTOR
Flusso: Selezionare modello > Rilevare > Filtrare
serie temporale serie temporale
INPUT OUTPUT
ANOMALYDETECTOR
COGNITIVE SERVICESANOMALY DETECTOR
2 FUNZIONALITÀ
 Rilevamento delle anomalie inbatch
 L’API crea un modello utilizzando l’intera serie temporale, ogni punto della serie è analizzato con lo stesso modello
 Tutti i punti precedenti e successive al punto analizzato vengono usati per determinare se si tratta di una anomalia
 Il rilevamento in batch ci dà lo stato generale della serie temporale
 Rilevamento delle anomalie instreaming
 L’API determina se il ultimo punto della serie temporale è una anomalia
 Il modello viene creato usando i dati precedenti a quello più recente, cioè dati storici
 Il rilevamento in streaming permette di monitorare I dati in tempo reale
COGNITIVE SERVICESANOMALY DETECTOR
API REST: Servizio web RESTful compatibile con tutti i linguaggi che permettono di fare chiamate HTTP
response = requests.post(endpoint + url, data, headers)
COGNITIVE SERVICESANOMALY DETECTOR
COGNITIVE SERVICESANOMALY DETECTOR
COMPONENTI DELLA HTTPREQUEST:
endpoint + url:
endpoint = https://anomaly-detector-welol-1.cognitiveservices.azure.com
url =
headers: {'Content-Type': 'application/json', 'Ocp-Apim-Subscription-Key': subscription_key}
subscription_key = 34d5b887eju54e280163fe324b36fd39 (esempio)
data: dati in formato json
/anomalydetector/v1.0/timeseries/entire/detect (BATCH DETECTION)
/anomalydetector/v1.0/timeseries/last/detect (STREAMING DETECTION)
requests.post(endpoint + url, data, headers)
COMPONENTE data DELLA HTTPREQUEST:
data: {
"series": [
{"timestamp": "2019-09-01T00:00:00Z", "value": 32858923},
{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…},
{"timestamp": "2019-10-31T00:00:00Z", "value": 35250105}
],
"maxAnomalyRatio": 0.25,
"sensitivity": 95,
"granularity": "monthly"
}
COGNITIVE SERVICESANOMALY DETECTOR
serie temporale
parametri
COGNITIVE SERVICESANOMALY DETECTOR
serie temporale:
 key = ‘series’
 timestamp in ordine crescente
 Non devono esserci timestampduplicati
 Formato UTC ISO8601
 Distribuito uniformemente
 Unità temporale: minuto, ora, giorno, mese
 Numero di dati:
 12 <= N <= 8640
 OTTIMO = 4 x period + 1 (se c’è stagionalità)
 Max dati mancanti: 10%
 value tipo intero o float
COGNITIVE SERVICESANOMALY DETECTOR
parametri:
 maxAnomalyRatio = tasso massimo di anomalie (< 0.5)
 sensitivity, più grande è più anomalie saranno accettate (0 - 99)
 granularity = tasso di campionamento (yearly, monthly, weekly, daily, hourly, minutely)
 customInterval permette definire un intervallo di tempo non-standard (es. 5 minuti)
 period = numero di punti che compongono un pattern in una serie con stagionalità
 marginScale, usato per calcolare lower e upper boundaries (0 –99)
RISPOSTADELL’ANOMALY DETECTOR
 isAnomaly, True (anomalia positiva o negativa) o False (non à anomalia)
 isNegativeAnomaly, il dato è anomalo e inferiore al previsto
 isPositiveAnomaly, il dato è anomalo e superiore al previsto
 expectedValue, valore previsto
 upperMargin, usato per calcolare upperBoundary = expectedValue + (100 - marginScale)*upperMargin
 lowerMargin, usato per calcolare lowerBoundary = expectedValue + (100- marginScale)*lowerMargin
 period, estratto dalla serie temporale (0 significa pattern not found)
 suggestedWindow, numero di punti consigliato per rilevare il last point
COGNITIVE SERVICESANOMALY DETECTOR
COGNITIVE SERVICESANOMALY DETECTOR
COGNITIVE SERVICESANOMALY DETECTOR
DEMO Jupyter Notebook
GRAZIE!

More Related Content

Similar to CCI 2019 - Strumenti Azure per l'Anomaly Detection in ambito Industria 4.0

Actigrafia presentazione 2013
Actigrafia  presentazione 2013Actigrafia  presentazione 2013
Actigrafia presentazione 2013
Vincenzo Gullà
 
Studio e confronto di filtri per il denoising di immagini in relazione all’id...
Studio e confronto di filtri per il denoising di immagini in relazione all’id...Studio e confronto di filtri per il denoising di immagini in relazione all’id...
Studio e confronto di filtri per il denoising di immagini in relazione all’id...
ICL - Image Communication Laboratory
 
AZURE Machine Learning Studio: applicazione alla manutenzione predittiva
AZURE Machine Learning Studio: applicazione alla manutenzione predittivaAZURE Machine Learning Studio: applicazione alla manutenzione predittiva
AZURE Machine Learning Studio: applicazione alla manutenzione predittiva
Ariel Cedola
 
Convegno 16/11 | PERSI Davide
Convegno 16/11 | PERSI DavideConvegno 16/11 | PERSI Davide
Convegno 16/11 | PERSI Davide
Servizi a rete
 
Corso Introduttivo alle Reti Neurali
Corso Introduttivo alle Reti NeuraliCorso Introduttivo alle Reti Neurali
Corso Introduttivo alle Reti Neurali
Valerio Capozio
 
Automi probabilistici temporali e loro verifica formale
Automi probabilistici temporali e loro verifica formaleAutomi probabilistici temporali e loro verifica formale
Automi probabilistici temporali e loro verifica formale
Orlando Selenu
 
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
MichaelFuser
 
Open day, "La matematica in ambito meccatronico"
Open day, "La matematica in ambito meccatronico"Open day, "La matematica in ambito meccatronico"
Open day, "La matematica in ambito meccatronico"
Alumni Mathematica
 
Strutture dati 00-corso2018
Strutture dati 00-corso2018Strutture dati 00-corso2018
Strutture dati 00-corso2018
Studiabo
 
Presentazione Tesi di Laurea Magistrale - NAEVUS
Presentazione Tesi di Laurea Magistrale - NAEVUSPresentazione Tesi di Laurea Magistrale - NAEVUS
Presentazione Tesi di Laurea Magistrale - NAEVUS
Francesco Garofalo
 
Android ed utilizzo_dei_sensori
Android ed utilizzo_dei_sensoriAndroid ed utilizzo_dei_sensori
Android ed utilizzo_dei_sensori
Danilo Riso
 
Analisi dati applicata all'efficienza energetica
Analisi dati applicata all'efficienza energeticaAnalisi dati applicata all'efficienza energetica
Analisi dati applicata all'efficienza energetica
Alessio Passalacqua
 
Previsione della radiazione solare mediante modelli basati su reti neurali ar...
Previsione della radiazione solare mediante modelli basati su reti neurali ar...Previsione della radiazione solare mediante modelli basati su reti neurali ar...
Previsione della radiazione solare mediante modelli basati su reti neurali ar...
Università degli Studi di Milano - Sede di Crema
 
Come garantire la Qualita’ dei Risultati di Prova e Misura
Come garantire la Qualita’ dei Risultati di Prova e MisuraCome garantire la Qualita’ dei Risultati di Prova e Misura
Come garantire la Qualita’ dei Risultati di Prova e Misura
TogetherToSolve
 
Sistemi di gestione razionale degli allarmi
Sistemi di gestione razionale degli allarmiSistemi di gestione razionale degli allarmi
Sistemi di gestione razionale degli allarmi
Enrico QUERCI
 
Bpr group - Case history: database tempi standard e preventivatore
Bpr group - Case history: database tempi standard e preventivatoreBpr group - Case history: database tempi standard e preventivatore
Bpr group - Case history: database tempi standard e preventivatore
BPR Group
 
Ifm efector Octavis Brochure Italy 2013
Ifm efector Octavis Brochure Italy 2013Ifm efector Octavis Brochure Italy 2013
Ifm efector Octavis Brochure Italy 2013
ifm electronic gmbh
 
Progettare con le tecnologie no-dig: spunti sulle valutazioni preventive alla...
Progettare con le tecnologie no-dig: spunti sulle valutazioni preventive alla...Progettare con le tecnologie no-dig: spunti sulle valutazioni preventive alla...
Progettare con le tecnologie no-dig: spunti sulle valutazioni preventive alla...
Servizi a rete
 
Termoanemometro a Ventolina Arw 8893
Termoanemometro a Ventolina Arw 8893Termoanemometro a Ventolina Arw 8893
Termoanemometro a Ventolina Arw 8893
Arrow Sem
 

Similar to CCI 2019 - Strumenti Azure per l'Anomaly Detection in ambito Industria 4.0 (20)

Actigrafia presentazione 2013
Actigrafia  presentazione 2013Actigrafia  presentazione 2013
Actigrafia presentazione 2013
 
Studio e confronto di filtri per il denoising di immagini in relazione all’id...
Studio e confronto di filtri per il denoising di immagini in relazione all’id...Studio e confronto di filtri per il denoising di immagini in relazione all’id...
Studio e confronto di filtri per il denoising di immagini in relazione all’id...
 
biometria roma tre aprile 2014 finale
biometria roma tre aprile 2014 finalebiometria roma tre aprile 2014 finale
biometria roma tre aprile 2014 finale
 
AZURE Machine Learning Studio: applicazione alla manutenzione predittiva
AZURE Machine Learning Studio: applicazione alla manutenzione predittivaAZURE Machine Learning Studio: applicazione alla manutenzione predittiva
AZURE Machine Learning Studio: applicazione alla manutenzione predittiva
 
Convegno 16/11 | PERSI Davide
Convegno 16/11 | PERSI DavideConvegno 16/11 | PERSI Davide
Convegno 16/11 | PERSI Davide
 
Corso Introduttivo alle Reti Neurali
Corso Introduttivo alle Reti NeuraliCorso Introduttivo alle Reti Neurali
Corso Introduttivo alle Reti Neurali
 
Automi probabilistici temporali e loro verifica formale
Automi probabilistici temporali e loro verifica formaleAutomi probabilistici temporali e loro verifica formale
Automi probabilistici temporali e loro verifica formale
 
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
 
Open day, "La matematica in ambito meccatronico"
Open day, "La matematica in ambito meccatronico"Open day, "La matematica in ambito meccatronico"
Open day, "La matematica in ambito meccatronico"
 
Strutture dati 00-corso2018
Strutture dati 00-corso2018Strutture dati 00-corso2018
Strutture dati 00-corso2018
 
Presentazione Tesi di Laurea Magistrale - NAEVUS
Presentazione Tesi di Laurea Magistrale - NAEVUSPresentazione Tesi di Laurea Magistrale - NAEVUS
Presentazione Tesi di Laurea Magistrale - NAEVUS
 
Android ed utilizzo_dei_sensori
Android ed utilizzo_dei_sensoriAndroid ed utilizzo_dei_sensori
Android ed utilizzo_dei_sensori
 
Analisi dati applicata all'efficienza energetica
Analisi dati applicata all'efficienza energeticaAnalisi dati applicata all'efficienza energetica
Analisi dati applicata all'efficienza energetica
 
Previsione della radiazione solare mediante modelli basati su reti neurali ar...
Previsione della radiazione solare mediante modelli basati su reti neurali ar...Previsione della radiazione solare mediante modelli basati su reti neurali ar...
Previsione della radiazione solare mediante modelli basati su reti neurali ar...
 
Come garantire la Qualita’ dei Risultati di Prova e Misura
Come garantire la Qualita’ dei Risultati di Prova e MisuraCome garantire la Qualita’ dei Risultati di Prova e Misura
Come garantire la Qualita’ dei Risultati di Prova e Misura
 
Sistemi di gestione razionale degli allarmi
Sistemi di gestione razionale degli allarmiSistemi di gestione razionale degli allarmi
Sistemi di gestione razionale degli allarmi
 
Bpr group - Case history: database tempi standard e preventivatore
Bpr group - Case history: database tempi standard e preventivatoreBpr group - Case history: database tempi standard e preventivatore
Bpr group - Case history: database tempi standard e preventivatore
 
Ifm efector Octavis Brochure Italy 2013
Ifm efector Octavis Brochure Italy 2013Ifm efector Octavis Brochure Italy 2013
Ifm efector Octavis Brochure Italy 2013
 
Progettare con le tecnologie no-dig: spunti sulle valutazioni preventive alla...
Progettare con le tecnologie no-dig: spunti sulle valutazioni preventive alla...Progettare con le tecnologie no-dig: spunti sulle valutazioni preventive alla...
Progettare con le tecnologie no-dig: spunti sulle valutazioni preventive alla...
 
Termoanemometro a Ventolina Arw 8893
Termoanemometro a Ventolina Arw 8893Termoanemometro a Ventolina Arw 8893
Termoanemometro a Ventolina Arw 8893
 

More from walk2talk srl

CCI 2019 - SQL Injection - Black Hat Vs White Hat
CCI 2019 - SQL Injection - Black Hat Vs White HatCCI 2019 - SQL Injection - Black Hat Vs White Hat
CCI 2019 - SQL Injection - Black Hat Vs White Hat
walk2talk srl
 
CCI 2019 - Exploiting Custom Vision SDK in Python to create an efficient imag...
CCI 2019 - Exploiting Custom Vision SDK in Python to create an efficient imag...CCI 2019 - Exploiting Custom Vision SDK in Python to create an efficient imag...
CCI 2019 - Exploiting Custom Vision SDK in Python to create an efficient imag...
walk2talk srl
 
CCI 2019 - Come ottimizzare i propri workload su Azure
CCI 2019 - Come ottimizzare i propri workload su AzureCCI 2019 - Come ottimizzare i propri workload su Azure
CCI 2019 - Come ottimizzare i propri workload su Azure
walk2talk srl
 
CCI 2019 - Exchange 2019 da 0 ad HA in 1 ora
CCI 2019 - Exchange 2019 da 0 ad HA in 1 oraCCI 2019 - Exchange 2019 da 0 ad HA in 1 ora
CCI 2019 - Exchange 2019 da 0 ad HA in 1 ora
walk2talk srl
 
CCI 2019 - PowerApps for Enterprise Developers
CCI 2019 - PowerApps for Enterprise DevelopersCCI 2019 - PowerApps for Enterprise Developers
CCI 2019 - PowerApps for Enterprise Developers
walk2talk srl
 
CCI 2019 - Architettare componenti in SPFx, esperienze sul campo
CCI 2019 - Architettare componenti in SPFx, esperienze sul campoCCI 2019 - Architettare componenti in SPFx, esperienze sul campo
CCI 2019 - Architettare componenti in SPFx, esperienze sul campo
walk2talk srl
 
CCI 2019 - Step by step come attivare un servizio voce in MS Teams
CCI 2019 - Step by step come attivare un servizio voce in MS TeamsCCI 2019 - Step by step come attivare un servizio voce in MS Teams
CCI 2019 - Step by step come attivare un servizio voce in MS Teams
walk2talk srl
 
CCI2019 - I've got the Power! I've got the Shell!
CCI2019 - I've got the Power! I've got the Shell!CCI2019 - I've got the Power! I've got the Shell!
CCI2019 - I've got the Power! I've got the Shell!
walk2talk srl
 
CCI2019 - Sistema di controllo del traffico con architettura Big Data
CCI2019 - Sistema di controllo del traffico con architettura Big DataCCI2019 - Sistema di controllo del traffico con architettura Big Data
CCI2019 - Sistema di controllo del traffico con architettura Big Data
walk2talk srl
 
CCI2019 - Governance di una Conversational AI
CCI2019 - Governance di una Conversational AICCI2019 - Governance di una Conversational AI
CCI2019 - Governance di una Conversational AI
walk2talk srl
 
CCI2019 - SQL Server ed Azure: Disaster Recovery per tutti
CCI2019 - SQL Server ed Azure: Disaster Recovery per tuttiCCI2019 - SQL Server ed Azure: Disaster Recovery per tutti
CCI2019 - SQL Server ed Azure: Disaster Recovery per tutti
walk2talk srl
 
CCI2019 - Reagire agli eventi generati dalla propria infrastruttura con Azure...
CCI2019 - Reagire agli eventi generati dalla propria infrastruttura con Azure...CCI2019 - Reagire agli eventi generati dalla propria infrastruttura con Azure...
CCI2019 - Reagire agli eventi generati dalla propria infrastruttura con Azure...
walk2talk srl
 
CCI2019 - What's new in Remote Desktop Services on Windows Server 2019 and Azure
CCI2019 - What's new in Remote Desktop Services on Windows Server 2019 and AzureCCI2019 - What's new in Remote Desktop Services on Windows Server 2019 and Azure
CCI2019 - What's new in Remote Desktop Services on Windows Server 2019 and Azure
walk2talk srl
 
CCI2019 - Teams Direct Routing e servizi fonia avanzati
CCI2019 - Teams Direct Routing e servizi fonia avanzatiCCI2019 - Teams Direct Routing e servizi fonia avanzati
CCI2019 - Teams Direct Routing e servizi fonia avanzati
walk2talk srl
 
CCI2019 - Microservizi: Idee per un'architettura con al centro l'utente
CCI2019 - Microservizi: Idee per un'architettura con al centro l'utenteCCI2019 - Microservizi: Idee per un'architettura con al centro l'utente
CCI2019 - Microservizi: Idee per un'architettura con al centro l'utente
walk2talk srl
 
CCI2019i - Implementare Azure Multi-Factor Authentication Lettere dal Fronte
CCI2019i - Implementare Azure Multi-Factor Authentication Lettere dal FronteCCI2019i - Implementare Azure Multi-Factor Authentication Lettere dal Fronte
CCI2019i - Implementare Azure Multi-Factor Authentication Lettere dal Fronte
walk2talk srl
 
CCI2019 - Monitorare SQL Server Senza Andare in Bancarotta
CCI2019 - Monitorare SQL Server Senza Andare in BancarottaCCI2019 - Monitorare SQL Server Senza Andare in Bancarotta
CCI2019 - Monitorare SQL Server Senza Andare in Bancarotta
walk2talk srl
 
CCI2019 - Architecting and Implementing Azure Networking
CCI2019 - Architecting and Implementing Azure NetworkingCCI2019 - Architecting and Implementing Azure Networking
CCI2019 - Architecting and Implementing Azure Networking
walk2talk srl
 
CCI2019 - Teams e lo Shadow IT
CCI2019 - Teams e lo Shadow ITCCI2019 - Teams e lo Shadow IT
CCI2019 - Teams e lo Shadow IT
walk2talk srl
 
CCI2018 - La "moderna" Sicurezza informatica & Microsoft
CCI2018 - La "moderna" Sicurezza informatica & MicrosoftCCI2018 - La "moderna" Sicurezza informatica & Microsoft
CCI2018 - La "moderna" Sicurezza informatica & Microsoft
walk2talk srl
 

More from walk2talk srl (20)

CCI 2019 - SQL Injection - Black Hat Vs White Hat
CCI 2019 - SQL Injection - Black Hat Vs White HatCCI 2019 - SQL Injection - Black Hat Vs White Hat
CCI 2019 - SQL Injection - Black Hat Vs White Hat
 
CCI 2019 - Exploiting Custom Vision SDK in Python to create an efficient imag...
CCI 2019 - Exploiting Custom Vision SDK in Python to create an efficient imag...CCI 2019 - Exploiting Custom Vision SDK in Python to create an efficient imag...
CCI 2019 - Exploiting Custom Vision SDK in Python to create an efficient imag...
 
CCI 2019 - Come ottimizzare i propri workload su Azure
CCI 2019 - Come ottimizzare i propri workload su AzureCCI 2019 - Come ottimizzare i propri workload su Azure
CCI 2019 - Come ottimizzare i propri workload su Azure
 
CCI 2019 - Exchange 2019 da 0 ad HA in 1 ora
CCI 2019 - Exchange 2019 da 0 ad HA in 1 oraCCI 2019 - Exchange 2019 da 0 ad HA in 1 ora
CCI 2019 - Exchange 2019 da 0 ad HA in 1 ora
 
CCI 2019 - PowerApps for Enterprise Developers
CCI 2019 - PowerApps for Enterprise DevelopersCCI 2019 - PowerApps for Enterprise Developers
CCI 2019 - PowerApps for Enterprise Developers
 
CCI 2019 - Architettare componenti in SPFx, esperienze sul campo
CCI 2019 - Architettare componenti in SPFx, esperienze sul campoCCI 2019 - Architettare componenti in SPFx, esperienze sul campo
CCI 2019 - Architettare componenti in SPFx, esperienze sul campo
 
CCI 2019 - Step by step come attivare un servizio voce in MS Teams
CCI 2019 - Step by step come attivare un servizio voce in MS TeamsCCI 2019 - Step by step come attivare un servizio voce in MS Teams
CCI 2019 - Step by step come attivare un servizio voce in MS Teams
 
CCI2019 - I've got the Power! I've got the Shell!
CCI2019 - I've got the Power! I've got the Shell!CCI2019 - I've got the Power! I've got the Shell!
CCI2019 - I've got the Power! I've got the Shell!
 
CCI2019 - Sistema di controllo del traffico con architettura Big Data
CCI2019 - Sistema di controllo del traffico con architettura Big DataCCI2019 - Sistema di controllo del traffico con architettura Big Data
CCI2019 - Sistema di controllo del traffico con architettura Big Data
 
CCI2019 - Governance di una Conversational AI
CCI2019 - Governance di una Conversational AICCI2019 - Governance di una Conversational AI
CCI2019 - Governance di una Conversational AI
 
CCI2019 - SQL Server ed Azure: Disaster Recovery per tutti
CCI2019 - SQL Server ed Azure: Disaster Recovery per tuttiCCI2019 - SQL Server ed Azure: Disaster Recovery per tutti
CCI2019 - SQL Server ed Azure: Disaster Recovery per tutti
 
CCI2019 - Reagire agli eventi generati dalla propria infrastruttura con Azure...
CCI2019 - Reagire agli eventi generati dalla propria infrastruttura con Azure...CCI2019 - Reagire agli eventi generati dalla propria infrastruttura con Azure...
CCI2019 - Reagire agli eventi generati dalla propria infrastruttura con Azure...
 
CCI2019 - What's new in Remote Desktop Services on Windows Server 2019 and Azure
CCI2019 - What's new in Remote Desktop Services on Windows Server 2019 and AzureCCI2019 - What's new in Remote Desktop Services on Windows Server 2019 and Azure
CCI2019 - What's new in Remote Desktop Services on Windows Server 2019 and Azure
 
CCI2019 - Teams Direct Routing e servizi fonia avanzati
CCI2019 - Teams Direct Routing e servizi fonia avanzatiCCI2019 - Teams Direct Routing e servizi fonia avanzati
CCI2019 - Teams Direct Routing e servizi fonia avanzati
 
CCI2019 - Microservizi: Idee per un'architettura con al centro l'utente
CCI2019 - Microservizi: Idee per un'architettura con al centro l'utenteCCI2019 - Microservizi: Idee per un'architettura con al centro l'utente
CCI2019 - Microservizi: Idee per un'architettura con al centro l'utente
 
CCI2019i - Implementare Azure Multi-Factor Authentication Lettere dal Fronte
CCI2019i - Implementare Azure Multi-Factor Authentication Lettere dal FronteCCI2019i - Implementare Azure Multi-Factor Authentication Lettere dal Fronte
CCI2019i - Implementare Azure Multi-Factor Authentication Lettere dal Fronte
 
CCI2019 - Monitorare SQL Server Senza Andare in Bancarotta
CCI2019 - Monitorare SQL Server Senza Andare in BancarottaCCI2019 - Monitorare SQL Server Senza Andare in Bancarotta
CCI2019 - Monitorare SQL Server Senza Andare in Bancarotta
 
CCI2019 - Architecting and Implementing Azure Networking
CCI2019 - Architecting and Implementing Azure NetworkingCCI2019 - Architecting and Implementing Azure Networking
CCI2019 - Architecting and Implementing Azure Networking
 
CCI2019 - Teams e lo Shadow IT
CCI2019 - Teams e lo Shadow ITCCI2019 - Teams e lo Shadow IT
CCI2019 - Teams e lo Shadow IT
 
CCI2018 - La "moderna" Sicurezza informatica & Microsoft
CCI2018 - La "moderna" Sicurezza informatica & MicrosoftCCI2018 - La "moderna" Sicurezza informatica & Microsoft
CCI2018 - La "moderna" Sicurezza informatica & Microsoft
 

CCI 2019 - Strumenti Azure per l'Anomaly Detection in ambito Industria 4.0

  • 3. STRUMENTI AZURE PER L'ANOMALY DETECTION IN AMBITO INDUSTRIA 4.0 Ariel Cedola
  • 4. WHO AMI? Ariel Cedola Data Scientist Ariel Cedola acedola@welol.it PhD, PoliTO (IT) Electronics Engineer, UNLP (Arg)
  • 5. AGENDA  ANOMALY DETECTION  APPLICAZIONE IN CONDITION MONITORING  STRUMENTIAZURE PERL’ANOMALY DETECTION  COGNITIVE SERVICESANOMALY DETECTOR  DEMO
  • 6. ANOMALY DETECTION Cos’è una ANOMALIA? Una ANOMALIA (outlier) è un evento non previsto, che non è stato osservato precedentemente nei dati storici di un sistema e che risulta fuori del normale. Anomalia puntuale Anomalia contestuale Anomalia collettiva
  • 7. ANOMALY DETECTION Alcune possibile cause delleANOMALIE:  Errori di data entry(X1)  Eventi inusuali (X2)  Patterns anormali
  • 8. ANOMALY DETECTION Il RILEVAMENTO DELLEANOMALIE in un sistema consiste nell'identificazione di eventi anomali utilizzando metodi computazionali. Scenari di applicazione e casi di uso: Frodi carte di credito Intrusioni di rete Black-outs Aumento delle vendite Battiti irregolari Guasto di macchina
  • 9. ANOMALY DETECTION 06/09/2019 13/09/2019 20/09/2019 27/09/2019 Value Inversione di tendenza ESEMPIO 1: ANALISI UNIVARIATA Cambio di livello Spikes Dips
  • 10. ANOMALY DETECTION anomalie ESEMPIO 2: ANALISI MULTIVARIATA(2 o più variabili) s1(t) s2(t) s1 vs s2
  • 11. ANOMALY DETECTION ESEMPIO 2: ANALISI MULTIVARIATA(2 o più variabili)
  • 12. ANOMALY DETECTION Sfida dal punto di vista computazionale Si devono individuare eventi:  Diversi dalla maggior parte dei dati disponibili  Non previsti  Con bassa frequenza ( << 1%)  In modo tempestivo Il MACHINE LEARNING è lo strumento più adatto per eseguire il rilevamento delle anomalie.
  • 13. y1 y2 ANOMALY DETECTION Metodi alternativi: Visualizzazione Soglie + regole (if-then-else) Box plot
  • 15. ANOMALY DETECTION Cos’è il MACHINE LEARNING? È un insieme di modelli e tecniche che permettono ai computer di apprendere a partire da enormi quantità di dati.
  • 16. ANOMALY DETECTION Modello di Machine Learning SUPERVISIONATO vs NON SUPERVISIONATO Training modello Consumo modello Anomalie Dati Nuovi dati Individuazione delle anomalie Modello SUPERVISIONATO
  • 17. ANOMALY DETECTION Modello di Machine Learning SUPERVISIONATO vs NON SUPERVISIONATO Training modello Modello AD Anomalie Dati Dati Modello Individuazione delle anomalie
  • 18. ANOMALY DETECTION Modello di Machine Learning NON SUPERVISIONATO Modello AD Dati Individuazione delle anomalie Algoritmi PCA Isolation Forest One-class SVM k-means and more…! Quale usare?
  • 19. APPLICAZIONE IN CONDITION MONITORING Cos’è la CONDITION MONITORING?  È una componente della manutenzione predittiva applicata in ambito industriale  Si utilizzano sensori per misurare e monitorare lo stato delle macchine in funzionamento  I dati rilevati vengono usati per analizzare tendenze, prevedere i guasti e calcolare la vita utile residua (RUL)  La manutenzione viene fatta quando i dati mostrano che:  la performance di una macchina è in diminuzione  l’andamento di una variabile ha una tendenza verso valori fuori dell’intervallo sicuro  c’è probabilità di guasto nel breve termine  ci sono eventianomali
  • 20. APPLICAZIONE IN CONDITION MONITORING Tecniche di CONDITIONMONITORING Analisi del olio lubrificante Analisi delle vibrazioni Test circuito del motore Termografia IR Monitoraggio acustico ed ultrasonico Radiografia e interferometria laser Monitoraggio elettrico/elettromagnetico Performance operativa
  • 21. APPLICAZIONE IN CONDITION MONITORING Caso di uso CONDITIONMONITORING anomalia
  • 24. COGNITIVE SERVICESANOMALY DETECTOR API che permette di monitorare e rilevare le anomalie presenti nei dati di serie temporali, applicando modelli di Machine Learning
  • 26. COGNITIVE SERVICESANOMALY DETECTOR  Selezione automatica delmodello  Fourier Transformation  Extreme Studentized Deviate(ESD)  STLDecomposition  DynamicThreshold  Z-score detector  Spectral Residual & Convolutional Neural Network (SR-CNN) 3 punti diforza  Semplicità  Utilizzo tramite chiamate HTTP,un unico parametro, non serve conoscenza ML *  Libreria client in Python, C# e Node.js  Integrazione  Servizio cloud gestito suAzure Cognitive Services
  • 27. COGNITIVE SERVICESANOMALY DETECTOR Selezione del modello • continuità • media • deviazione standard • tendenza • periodo serie temporale
  • 28. COGNITIVE SERVICESANOMALY DETECTOR Flusso: Selezionare modello > Rilevare > Filtrare serie temporale serie temporale INPUT OUTPUT ANOMALYDETECTOR
  • 29. COGNITIVE SERVICESANOMALY DETECTOR 2 FUNZIONALITÀ  Rilevamento delle anomalie inbatch  L’API crea un modello utilizzando l’intera serie temporale, ogni punto della serie è analizzato con lo stesso modello  Tutti i punti precedenti e successive al punto analizzato vengono usati per determinare se si tratta di una anomalia  Il rilevamento in batch ci dà lo stato generale della serie temporale  Rilevamento delle anomalie instreaming  L’API determina se il ultimo punto della serie temporale è una anomalia  Il modello viene creato usando i dati precedenti a quello più recente, cioè dati storici  Il rilevamento in streaming permette di monitorare I dati in tempo reale
  • 30. COGNITIVE SERVICESANOMALY DETECTOR API REST: Servizio web RESTful compatibile con tutti i linguaggi che permettono di fare chiamate HTTP response = requests.post(endpoint + url, data, headers)
  • 32. COGNITIVE SERVICESANOMALY DETECTOR COMPONENTI DELLA HTTPREQUEST: endpoint + url: endpoint = https://anomaly-detector-welol-1.cognitiveservices.azure.com url = headers: {'Content-Type': 'application/json', 'Ocp-Apim-Subscription-Key': subscription_key} subscription_key = 34d5b887eju54e280163fe324b36fd39 (esempio) data: dati in formato json /anomalydetector/v1.0/timeseries/entire/detect (BATCH DETECTION) /anomalydetector/v1.0/timeseries/last/detect (STREAMING DETECTION) requests.post(endpoint + url, data, headers)
  • 33. COMPONENTE data DELLA HTTPREQUEST: data: { "series": [ {"timestamp": "2019-09-01T00:00:00Z", "value": 32858923}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {"timestamp": "2019-10-31T00:00:00Z", "value": 35250105} ], "maxAnomalyRatio": 0.25, "sensitivity": 95, "granularity": "monthly" } COGNITIVE SERVICESANOMALY DETECTOR serie temporale parametri
  • 34. COGNITIVE SERVICESANOMALY DETECTOR serie temporale:  key = ‘series’  timestamp in ordine crescente  Non devono esserci timestampduplicati  Formato UTC ISO8601  Distribuito uniformemente  Unità temporale: minuto, ora, giorno, mese  Numero di dati:  12 <= N <= 8640  OTTIMO = 4 x period + 1 (se c’è stagionalità)  Max dati mancanti: 10%  value tipo intero o float
  • 35. COGNITIVE SERVICESANOMALY DETECTOR parametri:  maxAnomalyRatio = tasso massimo di anomalie (< 0.5)  sensitivity, più grande è più anomalie saranno accettate (0 - 99)  granularity = tasso di campionamento (yearly, monthly, weekly, daily, hourly, minutely)  customInterval permette definire un intervallo di tempo non-standard (es. 5 minuti)  period = numero di punti che compongono un pattern in una serie con stagionalità  marginScale, usato per calcolare lower e upper boundaries (0 –99)
  • 36. RISPOSTADELL’ANOMALY DETECTOR  isAnomaly, True (anomalia positiva o negativa) o False (non à anomalia)  isNegativeAnomaly, il dato è anomalo e inferiore al previsto  isPositiveAnomaly, il dato è anomalo e superiore al previsto  expectedValue, valore previsto  upperMargin, usato per calcolare upperBoundary = expectedValue + (100 - marginScale)*upperMargin  lowerMargin, usato per calcolare lowerBoundary = expectedValue + (100- marginScale)*lowerMargin  period, estratto dalla serie temporale (0 significa pattern not found)  suggestedWindow, numero di punti consigliato per rilevare il last point COGNITIVE SERVICESANOMALY DETECTOR
  • 39.