Você já se perguntou como podemos detectar anomalias em dados de streaming? Imagine o cenário em que queremos monitorar tópicos do Twitter, ou seja, temos diversos tópicos sendo gerados e utilizados ao longo do tempo. Neste cenário, podemos utilizar algoritmos de detecção de anomalias para detectar #trend-topics, bem como o contrário (tópicos que não mais interessantes) em tempo real. Quer conhecer mais sobre este assunto e outros cases? Inteligência Artificial pode ser mais simples do que você imagina.
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
Como detectar anomalias em dados de streaming? Simplificado (TDC Connections 2022)
1. Como Detectar Anomalias
em Dados de Streaming?
Simplificado.
Leonardo Mauro P. Moraes
Senior Artificial Intelligence Analyst
2. Speaker
Leonardo Mauro P. Moraes
2
Experiência
• Analista de Inteligência Artificial Sênior
(Sinch) Brasil, Nov. 2020 – Agora
• Tutor de Ciência de Dados e Big Data
(USP) Brasil, Set. 2020 – Agora
• Doutorando em Ciência da Computação
(USP) Brasil, Mar. 2022 – Agora
3. 3
Agenda
Temos alguns
problemas de
monitoramento de
dados de streaming
Contexto Solução
Qual foi a solução
desenvolvidapara
encontrar as
anomalias?
Resultados
Alcançamos bons
resultados; bem
como,aprendemos
MUITO durante o
processo
INTELIGÊNCIAARTIFICIAL
5. 5
O que são Dados de Streaming?
De acordo com AWS
Dados de Streaming (em inglês, Streaming Data) são dados gerados continuamente [...]
São dos mais diversos tipos, tais como
• arquivos de log,
• compras de e-commerce,
• informações de redes sociais, e
• volume de mensagens no Twitter
• atividade de jogador durante o jogo.
6. 6
Nossos Desafios
Nota
• A maioria dos serviços oferecidos pela Sinch estão relacionados a
CPaaS (Plataformas Conversacionais), ou seja, WhatsApp, SMS, ligações, etc.
Use Cases
• Produtos - Voice Calling e Flash Call Verification.
• Monitorar o índice de sucesso das ligações telefônicas.
7. 7
O que queremos Monitorar?
Objetivo
• Identificar quedas ou picos nos
índices de sucesso dos produtos.
• Dados por país, provedor e produto
• Monitorar mais de 25 mil dados.
8. 8
O que queremos Monitorar?
Quais são as condições do algoritmo?
• As previsões devem ser feitas online;
• Os algoritmos devem ser executados
automaticamente e sem supervisão;
• Os algoritmos devem aprender
continuamente e se adaptar a
ambientes dinâmicos.
10. 10
Como Monitorar?
Algoritmo
• Moving Average
• Exponential Moving Average
• etc..
Moving Average
• É um cálculo usado para suavizar os dados
criando uma nova série de subconjuntos de
pontos de dados.
• Em resumo, essa técnica simplesmente calcula
a média dos n pontos de dados mais recentes.
Detecção de Anomalia
1. Valor Esperado
2. IntervaloAceitável
11. 11
Moving Average
Valor Esperado
• É resultado da média dos n
últimos pontos - chamado de
expected.
IntervaloAceitável (threshold)
• Calcula o desvio padrão std dos n valores.
• Intervalo [expected - std, expected + std]
Explaining the 68-95-99.7 rule for a Normal Distribution
13. 13
Moving Average funcionando!
Dataset - Benchmark: LabeledAnomaly Detection TS
Problemas
• Moving Average
achou muitos
falsos positivos
• É muito sensível
aos dados
14. 14
Exponential Moving Average
Valor Esperado
• É resultado da média ponderada
dos n últimos pontos.
IntervaloAceitável - mesma estratégia
Repare a mágica! 🌟
• Nós conseguimos editar livremente
as estratégias de "Valor Esperado" e
de "Intervalo Aceitável" e criar novos
algoritmos de Detecção de Anomalias!
18. 18
Discussão
Conteúdo Complementar
• Medium - Simple Anomaly Detection algorithms for Streaming Data
• Kaggle - Anomaly Detection - Streaming Data
• Kaggle - Anomaly Detection - Streaming Data (Evaluation)
• Kaggle - Anomaly Detection - Streaming Data (Extended) (Mani Sarkar)
Detecção de Anomalias
• Algoritmo simples e altamente funcional;
• Editável: "Valor Esperado" e "Intervalo Aceitável".
Implementação e Avaliação
• Implementação: Processamento em lotes, a cada 15 minutos.
• Avaliação: Em dados de produção, "data feedback loop".
19. 19
Implementação - Pipeline
• Pipeline de Ingestão de Dados (chamado de Ingress Pipeline)
• Pipeline de Detecção de Anomalias (chamado de Model Pipeline)
• Pipeline de Alertas de Anomalias (chamado de DataDog Pipeline)