O que é detecção de anomalia?
Explore o Databand
Desenho mostrando fontes de dados que levam à tela

Publicado em: 12 de dezembro de 2023
Colaboradores: Joel Barnard

O que é detecção de anomalia?

A detecção de anomalias, ou detecção de valor discrepante, é a identificação de uma observação, evento ou ponto de dados que se desvia do que é padrão ou esperado, tornando-o inconsistente em relação ao resto do conjunto de dados.

A detecção de anomalias tem uma longa história no campo da estatística, onde analistas e cientistas estudavam gráficos à procura de quaisquer elementos que parecessem anormais. Hoje, a detecção de anomalias utiliza a inteligência artificial (IA) e o aprendizado de máquina (ML) para identificar automaticamente alterações inesperadas no comportamento normal de um conjunto de dados.

Dados anômalos podem sinalizar incidentes críticos que ocorrem em detalhes técnicos, como uma falha de infraestrutura, uma alteração significativa de uma fonte upstream ou ameaças à segurança. As anomalias também podem destacar oportunidades de otimização arquitetônica ou melhoria das estratégias de marketing.

A detecção de anomalias tem uma variedade de casos de uso em vários setores. Por exemplo, é usada em finanças para detecção de fraude, na fabricação para identificar defeitos ou mau funcionamento de equipamentos, em cibersegurança para detectar atividades incomuns de rede, e na saúde para identificar condições anormais de pacientes.

A detecção de valor discrepante pode ser desafiadora porque as anomalias costumam ser raras e as características do comportamento normal podem ser complexas e dinâmicas. Do ponto de vista da empresa, é essencial identificar anomalias reais em vez de falsos positivos ou ruído de dados.

Agende hoje mesmo uma demonstração do IBM Databand

Veja como a observabilidade proativa de dados pode ajudá-lo a detectar incidentes de dados mais rapidamente e resolvê-los com eficiência.

Conteúdo relacionado

Assine a newsletter da IBM

Por que a detecção de anomalias é importante?

Anomalias de dados podem ter um impacto significativo no campo da ciência de dados, levando a conclusões incorretas ou enganosas. Por exemplo, um único valor discrepante pode distorcer significativamente a média de um conjunto de dados, fazendo com que ela se torne uma representação imprecisa dos dados. Além disso, as anomalias nos dados podem afetar o desempenho dos algoritmos de aprendizado de máquina, pois podem fazer com que o modelo se ajuste ao ruído em vez do padrão subjacente nos dados.

Identificar e lidar com anomalias de dados é importante por várias razões: 

Melhor qualidade de dados: identificar e tratar anomalias pode melhorar significativamente a qualidade de dados, o que é essencial para uma análise precisa e confiável. Ao lidar com anomalias, os analistas podem reduzir ruídos e erros no conjunto de dados, garantindo que eles sejam mais representativos dos verdadeiros padrões subjacentes.

Tomada de decisão aprimorada: a tomada de decisão baseada em dados depende de análises precisas e confiáveis para guiar as decisões. Ao identificar e tratar anomalias de dados, os analistas podem garantir que as suas conclusões sejam mais confiáveis, levando a decisões mais bem fundamentadas e a melhores resultados.

Desempenho otimizado de aprendizado de máquina: anomalias de dados podem afetar significativamente o desempenho dos algoritmos de aprendizado de máquina, pois podem fazer com que o modelo se encaixe ao ruído em vez do padrão subjacente nos dados. Identificando e lidando com anomalias, os analistas podem otimizar o desempenho de seus modelos de aprendizado de máquina, garantindo que eles forneçam previsões precisas e confiáveis.

Tipos de anomalias

Os tipos de anomalias de dados que um sistema de detecção de anomalias pode descobrir se enquadram em um dos dois tipos gerais: não intencionais e intencionais.

Anomalias não intencionais são pontos de dados que se desviam da norma devido a erros ou ruído no processo de coleta de dados. Esses erros podem ser sistemáticos ou aleatórios, originados por problemas como sensores defeituosos ou erro humano durante a entrada de dados. Anomalias não intencionais podem distorcer o conjunto de dados, dificultando a obtenção de insights precisos.

Por outro lado, as anomalias intencionais são pontos de dados que se desviam da norma devido a ações ou eventos específicos. Essas anomalias podem fornecer insights valiosos sobre o conjunto de dados, pois podem destacar ocorrências ou tendências exclusivas.

Por exemplo, um aumento repentino nas vendas durante uma época festiva pode ser considerado uma anomalia intencional, pois se desvia do padrão de vendas típico, mas é esperado devido a um evento do mundo real.

Em termos de dados de negócios, existem três anomalias principais de dados de séries temporais: anomalias pontuais, anomalias contextuais e anomalias coletivas.

Anomalias pontuais, também conhecidas como valores discrepantes globais, são pontos de dados individuais que estão muito fora do restante do conjunto de dados. Eles podem ser intencionais ou não intencionais e podem resultar de erros, ruídos ou ocorrências únicas.

Um exemplo de anomalia pontual é um saque de conta bancária que é significativamente maior do que qualquer um dos saques anteriores do usuário.   

Anomalias contextuais são pontos de dados que se desviam da norma dentro de um contexto específico. Essas anomalias não são necessariamente valores discrepantes quando consideradas isoladamente, mas se tornam anômalas quando vistas dentro de seu contexto específico.

Por exemplo, considere o uso de energia doméstica. Se houver um aumento repentino no consumo de energia ao meio-dia, quando normalmente nenhum membro da família está em casa, a anomalia seria contextual. Este dado pode não ser um valor discrepante quando comparado ao consumo de energia pela manhã ou à noite (quando as pessoas geralmente estão em casa), mas é anômalo no contexto da hora do dia em que ocorreu.

Anomalias coletivas envolvem um conjunto de instâncias de dados que juntas se desviam da norma, mesmo que as instâncias individuais possam parecer normais.

Um exemplo desse tipo de anomalia seria um conjunto de dados de tráfego de rede que mostra um aumento repentino no tráfego de vários endereços IP ao mesmo tempo.

Métodos de detecção de anomalias

Usar um sistema de detecção de anomalias para detectar anomalias de dados é um aspecto crítico da análise de dados, garantindo que as descobertas sejam precisas e confiáveis. Vários métodos de detecção podem ser usados na criação de um sistema de detecção de anomalias:

A visualização é uma ferramenta poderosa para detectar anomalias, pois permite que os cientistas de dados identifiquem rapidamente possíveis valores discrepantes e padrões. Ao plotar os dados usando tabelas e gráficos, os analistas podem inspecionar visualmente o conjunto de dados em busca de quaisquer pontos ou tendências incomuns.

Testes estatísticos podem ser usados por cientistas de dados para detectar anomalias comparando os dados observados com a distribuição ou padrão esperado.

Por exemplo, o teste de Grubbs pode ser usado para identificar valores discrepantes em um conjunto de dados, comparando cada ponto com a média e o desvio padrão dos dados. Da mesma forma, o teste de Kolmogorov-Smirnov pode ser usado para determinar se um conjunto de dados segue uma distribuição específica, como uma distribuição normal.

Os algoritmos de aprendizado de máquina podem ser usados para detectar anomalias, aprendendo o padrão subjacente nos dados e, em seguida, identificando quaisquer desvios desse padrão. Alguns dos algoritmos de detecção de anomalias de ML mais comuns incluem:

  • Árvores de decisão: um tipo de árvore de decisão, a floresta de isolamento, é um método de aprendizado de conjunto que isola anomalias ao selecionar aleatoriamente um recurso e, em seguida, seleciona aleatoriamente um valor de divisão entre os valores máximo e mínimo do recurso selecionada.

  • Máquina de vetores de suporte de classe única (SVM): SVM de classe única é um método de algoritmo de classificação treinado apenas nas instâncias "normais", visando criar uma fronteira que englobe os dados normais. As instâncias que estão fora desse limite são consideradas anomalias.

  • K-Vizinhos mais próximos (k-NN): o k-NN é um algoritmo simples que classifica um ponto de dados com base na classe predominante de seus k vizinhos mais próximos. Instâncias que têm significativamente menos vizinhos da mesma classe podem ser consideradas anomalias.

  • Bayesiano ingênuo: esse método funciona definindo a probabilidade de um evento ocorrer com base na presença de fatores contribuintes e detectando relações com a mesma causa raiz.

  • Autoencoders: um tipo de rede neural que utiliza dados com registro de tempo para prever padrões de dados e identificar anomalias que não se alinham com os dados históricos. 

  • Fator de outlier local (LOF): o LOF é um algoritmo baseado em densidade que mede o desvio de densidade local de um ponto de dados em relação aos seus vizinhos. Pontos com densidade significativamente menor em comparação com seus vizinhos são considerados valores discrepantes.

  • Agrupamento k-means: o k-means é uma técnica de agrupamento que analisa a distância média dos pontos de dados não rotulados e, em seguida, ajuda a agrupar o mesmo em grupos específicos. 
Técnicas de detecção de anomalias

Um algoritmo de detecção de anomalias pode aprender a identificar padrões e detectar dados anômalos usando várias técnicas de treinamento de aprendizado de máquina. A quantidade de dados rotulados, se houver, no conjunto de dados de treinamento de uma equipe determina quais das principais técnicas de detecção de anomalias serão utilizadas – não supervisionadas, supervisionadas ou semi-supervisionadas.

Com técnicas de detecção de anomalias não supervisionadas, os engenheiros de dados treinam um modelo fornecendo conjuntos de dados não rotulados usados para descobrir padrões ou anormalidades por conta própria. Embora essas técnicas sejam de longe as mais comumente usadas devido à sua aplicação mais ampla e relevante, elas exigem conjuntos de dados massivos e poder computacional. O aprendizado de máquina não supervisionado é mais frequentemente encontrado em cenários deep learning, que dependem de rede neural artificial.

As técnicas de detecção de anomalias supervisionadas usam um algoritmo treinado em um conjunto de dados rotulado que inclui instâncias normais e anômalas. Devido à indisponibilidade geral de dados de treinamento rotulados e à natureza inerentemente desequilibrada das classes, essas técnicas de detecção de anomalias raramente são utilizadas. 

As técnicas semi-supervisionadas maximizam os atributos positivos da detecção de anomalias não supervisionadas e supervisionadas. Ao fornecer um algoritmo com parte dos dados rotulados, ele pode ser parcialmente treinado. Os engenheiros de dados então usam o algoritmo parcialmente treinado para rotular um conjunto maior de dados de forma autônoma, conhecido como “pseudo-rotulagem”. Supondo que sejam confiáveis, esses pontos de dados recém-rotulados são combinados com o conjunto de dados original para refinar o algoritmo.

Encontrar a combinação certa de aprendizado de máquina supervisionado e não supervisionado é vital para a automação do aprendizado de máquina. Idealmente, a grande maioria das classificações de dados seria feita sem interação humana e de maneira não supervisionada. Dito isso, os engenheiros de dados ainda devem ser capazes de alimentar algoritmos com dados de treinamento que ajudarão a criar linhas de base de negócios normais. Uma abordagem semi-supervisionada permite a expansão da detecção de anomalias com a flexibilidade de fazer regras manuais em relação a anomalias específicas.

Casos de uso de detecção de anomalias

Os modelos de detecção de anomalias são amplamente utilizados nos setores bancário, de seguros e de negociação de ações para identificar atividades fraudulentas em tempo real, como transações não autorizadas, lavagem de dinheiro, fraude de cartão de crédito, falsas declarações de impostos e padrões de negociação anormais.

Na cibersegurança, um sistema de detecção de intrusão (IDS) utiliza a detecção de anomalias para ajudar a identificar atividades incomuns ou suspeitas no tráfego de rede, indicando potenciais ameaças à segurança, ataques como infecções por malware ou acesso não autorizado.

É usado no setor de saúde para identificar condições incomuns de pacientes ou anomalias em dados médicos, ajudando a detectar doenças, monitorar a saúde do paciente e tratá-lo com mais eficiência.

Na fabricação, algoritmos de detecção de anomalias, juntamente com computer vision, são empregados para identificar defeitos nos produtos ou embalagens por meio da análise de filmagem de câmera de alta resolução, dados de sensores e métricas de produção.

Ele é usado para monitorar o desempenho dos sistemas de TI e manter as operações funcionando sem problemas, identificando padrões incomuns nos logs do servidor e reconstruindo falhas a partir de padrões e experiências passadas para prever possíveis problemas ou falhas.

A detecção de anomalias ajuda a prever falhas de equipamentos ou necessidades de manutenção em setores como aviação, energia e transporte. Sensores alimentados por IoT são usados para coletar dados de equipamentos industriais, identificar desvios e prever possíveis falhas.

É usado para monitorar padrões de consumo de energia e identificar anomalias no uso, o que pode levar a uma gestão de energia mais eficiente e detecção precoce de falhas de equipamentos.

No comércio eletrônico, a detecção de anomalias é aplicada para identificar atividades fraudulentas, como avaliações falsas, apropriação de contas ou comportamento de compra anormal.

As empresas também usam modelos de detecção de anomalias para identificar padrões incomuns no comportamento do cliente, ajudando na detecção de fraudes, prevendo a rotatividade de clientes e melhorando as estratégias de marketing.

Produtos relacionados
IBM Databand

O IBM® Databand® é um software de observabilidade para pipelines e warehouses de dados que coleta metadados automaticamente para criar linhas de base históricas, detectar anomalias e fazer triagem de alertas para corrigir problemas de qualidade de dados.

Explore o Databand

IBM DataStage

Com suporte para os padrões ETL e ELT, o IBM® DataStage® oferece integração de dados flexível e quase em tempo real, tanto no local quanto na nuvem.

Conheça o DataStage

IBM Knowledge Catalog

Um catálogo de dados inteligente para a era da IA, o IBM® O Knowledge Catalog permite acessar, organizar, categorizar e compartilhar dados e ativos de conhecimento, independentemente de onde estejam armazenados.

Conheça o Knowledge Catalog
Recursos Utilizar a detecção de anomalias do Databand para cumprir os prazos de entrega de dados

Neste artigo, aprenda como a detecção de anomalias do Databand ajuda as equipes de dados a identificar problemas de pipeline de dados mais rapidamente para que possam melhor atender aos SLAs de dados que definiram.

Aprendizagem supervisionada versus não supervisionada

Explore os fundamentos de duas abordagens de ciência de dados: supervisionada e não supervisionada. Descubra qual delas é adequada para sua situação.

Como garantir a qualidade, o valor e a confiabilidade dos dados

Garantir que os dados de alta qualidade sejam de responsabilidade dos engenheiros de dados e de toda a organização. Esta publicação descreve a importância da qualidade dos dados, como auditar e monitorar seus dados e como obter a adesão dos principais stakeholders.

Dê o próximo passo

Implemente hoje mesmo a observabilidade proativa de dados com o IBM Databand para saber quando há problemas de integridade de dados antes de chegarem ao conhecimento dos seus usuários.

Explore o Databand