Uma série temporal é simplesmente um registo de uma medição feita repetidamente ao longo do tempo. Pode acompanhar as tendências de longo prazo e as flutuações de curto prazo de um sistema. Exemplos incluem a infame curva de novos casos diários da Covid-19 e a curva de Keeling, que monitoriza as concentrações de dióxido de carbono na atmosfera desde 1958. Na era do Big Data, "estão a ser recolhidas séries temporais em todo o lado, desde satélites a turbinas", diz Kalyan Veeramachaneni. "Todas estas máquinas têm sensores que recolhem estas séries temporais sobre o seu desempenho.".
Mas analisar estas séries temporais e identificar pontos de dados anómalos nelas pode ser difícil. Os dados podem conter ruído. Se um operador de satélite observar uma série de leituras de alta temperatura, como saber se se trata de uma flutuação inofensiva ou de um sinal de que o satélite está prestes a sobreaquecer?
Este é um problema que Veeramachaneni, que lidera o grupo de Dados para Inteligência Artificial no Laboratório de Sistemas de Informação e Decisão do MIT, espera resolver. O grupo desenvolveu um novo método baseado na aprendizagem profunda para detetar anomalias em dados de séries temporais. A sua abordagem, denominada TadGAN, superou os métodos concorrentes e pode ajudar os operadores a detetar e responder a alterações significativas numa variedade de sistemas de alto valor, desde um satélite a voar pelo espaço até um conjunto de servidores a operar numa cave.
A investigação será apresentada na conferência IEEE BigData deste mês. Os autores do artigo incluem membros do grupo Data-to-AI, como Veeramachaneni, o pós-doutorando Dongyu Liu, o estudante de investigação visitante Alexander Geiger e a mestranda Sarah Alnegheimish, bem como Alfredo Cuesta-Infante, da Universidade Rei Juan Carlos, em Espanha.
Alto Risco:
Para um sistema tão complexo como um satélite, a análise de séries temporais necessita de ser automatizada. A empresa de satélites SES, que colabora com Veeramachaneni, recebe um dilúvio de dados de séries temporais dos seus satélites de comunicação — cerca de 30.000 parâmetros únicos por nave espacial. Os operadores humanos na sala de controlo do SES só conseguem acompanhar uma fração destas séries temporais à medida que estas aparecem no ecrã. Para os restantes, dependem de um sistema de alarme para sinalizar valores fora do intervalo. “Então disseram-nos: ‘Conseguem fazer melhor?’”, conta Veeramachaneni. A empresa queria que a sua equipa utilizasse a aprendizagem profunda para analisar todas estas séries temporais e sinalizar qualquer comportamento invulgar.
Neste caso, o risco é elevado: se o algoritmo de aprendizagem profunda não detetar uma anomalia, a equipa poderá perder a oportunidade de corrigir o problema. Mas se disparar um alarme sempre que houver um dado ruidoso, os revisores humanos perderão tempo a verificar constantemente o algoritmo que gritou "lobo!". "Portanto, temos estes dois desafios", diz Liu. "E precisamos de encontrar um equilíbrio entre eles".
Em vez de procurar este equilíbrio apenas para os sistemas de satélite, a equipa trabalhou para criar uma estrutura mais geral para a deteção de anomalias, que pudesse ser aplicada em todos os setores. Para isso, recorreram a sistemas de aprendizagem profunda denominados redes generativas opostas (GANs), frequentemente utilizados para análise de imagens.
Uma GAN consiste num par de redes neuronais. Uma rede, o "gerador", cria imagens falsas, enquanto a segunda rede, o "discriminador", processa as imagens e tenta determinar se são reais ou falsas, produzidas pelo gerador. Através de várias rondas deste processo, o gerador aprende com o feedback do discriminador e torna-se especialista na criação de falsificações hiper-realistas. A técnica é considerada aprendizagem "não supervisionada" porque não requer um conjunto de dados pré-rotulado, onde as imagens já estejam identificadas com os seus respetivos sujeitos. (Grandes conjuntos de dados rotulados podem ser difíceis de obter.).
A equipa adaptou esta abordagem GAN para dados de séries temporais. "Utilizando esta estratégia de treino, o nosso modelo consegue identificar quais os pontos de dados que são normais e quais são anómalos", afirma Liu. Fá-lo verificando discrepâncias — possíveis anomalias — entre a série temporal real e a série temporal espúria gerada pela GAN. No entanto, a equipa descobriu que as GAN por si só não eram suficientes para detetar anomalias em séries temporais, uma vez que podem falhar na determinação do segmento da série temporal real com o qual os dados espúrios devem ser comparados. Como resultado, "se utilizar apenas GAN, criará muitos falsos positivos", diz Veeramachaneni.
Para se proteger contra falsos positivos, a equipa complementou a sua GAN com um algoritmo chamado autoencoder, outra técnica de aprendizagem profunda não supervisionada. Ao contrário da tendência das GAN para gerar alarmes, os autoencoders são mais propensos a não detetar anomalias genuínas. Isto porque os autoencoders tendem a captar muitos padrões em séries temporais, por vezes interpretando erradamente uma anomalia real como uma flutuação inofensiva — um problema chamado sobreajuste (overfitting). Ao combinar uma GAN com um autoencoder, os investigadores criaram um sistema de deteção de anomalias que atingiu o equilíbrio perfeito: o TadGAN é vigilante, mas não gera muitos alarmes falsos.
Resistindo ao teste de séries temporais
Além disso, o TadGAN superou a concorrência. A abordagem tradicional para a previsão de séries temporais, denominada ARIMA, foi desenvolvida na década de 1970. "Queríamos ver o quanto tínhamos evoluído e se os modelos de aprendizagem profunda poderiam realmente melhorar este método clássico", afirma Alnegheimish.
A equipa realizou testes de deteção de anomalias em 11 conjuntos de dados, comparando o ARIMA com o TadGAN e outros sete métodos, incluindo alguns desenvolvidos por empresas como a Amazon e a Microsoft. O TadGAN superou o ARIMA na deteção de anomalias em oito dos 11 conjuntos de dados. O segundo melhor algoritmo, desenvolvido pela Amazon, superou o ARIMA em apenas seis conjuntos de dados.
Alnegheimish enfatizou que o objetivo da equipa não era apenas desenvolver um algoritmo de deteção de anomalias de alta qualidade, mas também torná-lo amplamente utilizável. "Todos sabemos que a IA sofre de problemas de reprodutibilidade", afirma. A equipa disponibilizou o código do TadGAN publicamente e fornece atualizações regulares. Desenvolveram também um sistema de avaliação comparativa para que os utilizadores possam comparar o desempenho de diferentes modelos de deteção de anomalias.
"Este benchmark é de código aberto, pelo que qualquer pessoa pode aceder e experimentar. Podem adicionar os seus próprios modelos, se quiserem", diz Alnegheimish. "Queremos mitigar o estigma de que a IA não é reproduzível. Queremos garantir que tudo é robusto.".
Veeramachaneni espera que o TadGAN sirva um dia uma grande variedade de setores, e não apenas empresas de satélite. Por exemplo, poderia ser utilizado para monitorizar o desempenho de aplicações informáticas que se tornaram fundamentais para a economia moderna. "Para gerir um laboratório, tenho 30 aplicações. Zoom, Slack, GitHub, o que possa imaginar, tenho", diz. "E confio que todos funcionarão perfeitamente e para sempre". O mesmo acontece com milhões de utilizadores em todo o mundo.
O TadGAN pode ajudar empresas como a Zoom a monitorizar sinais de séries temporais nos seus centros de dados — como a utilização de CPU ou a temperatura — para ajudar a prevenir interrupções de serviço que possam ameaçar a quota de mercado da empresa. No futuro, a equipa planeia integrar o TadGAN numa interface de utilizador para levar a análise de séries temporais de última geração a todos os que dela necessitem.
Esta investigação foi financiada e concluída em colaboração com a SES.
