Harbinger é um framework unificado para análise de eventos em séries temporais. O pacote integra, em uma mesma interface, detecção de anomalias, detecção de pontos de mudança, descoberta de motifs e discords, transformações, visualização e avaliação de resultados. Na versão atual do pacote, 1.2.767, a documentação foi reorganizada para apoiar uma trilha de aprendizado mais guiada e uma navegação temática mais clara.
Organização didática
O material do harbinger passou a ser organizado em duas portas de entrada complementares. A primeira é uma trilha guiada, indicada para quem está conhecendo o framework e quer entender o fluxo completo de análise passo a passo. A segunda é composta por coleções temáticas, indicadas para quem já domina o fluxo básico e deseja estudar uma família específica de métodos.
Essa organização ajuda a evitar o uso do pacote como um catálogo plano de algoritmos. Em vez disso, o estudo começa pela compreensão do fluxo de trabalho, passa pela inspeção dos dados e pela avaliação, e só depois avança para famílias específicas de técnicas e customizações.
Métodos disponíveis
- Anomalias:
métodos baseados em histogramas, resíduos de modelos estatísticos e espectrais, aprendizado supervisionado, agrupamento, ensembles, autoencoders e análise multivariada. - Pontos de Mudança (Change Points):
métodos para uma ou múltiplas mudanças estruturais, testes clássicos, variantes do ChangeFinder, abordagens orientadas a volatilidade e janelas locais. - Motifs e Discords:
métodos baseados em Matrix Profile e representações simbólicas, incluindo suporte à descoberta de padrões recorrentes e subsequências raras. - Transformações e Avaliação:
suporte a suavização, representações simbólicas e avaliação estrita ou tolerante das detecções realizadas.
Arquitetura
A arquitetura do harbinger é baseada no conceito de Experiment Lines e foi construída sobre o DAL Toolbox. Essa organização facilita a comparação entre métodos, a reprodutibilidade dos estudos e a inclusão de novas transformações, detectores, workflows de motifs e avaliadores.
Instalação
A versão estável do Harbinger no CRAN está disponível em: https://CRAN.R-project.org/package=harbinger
Para instalar a versão estável do CRAN:
install.packages("harbinger")
Para instalar a versão em desenvolvimento diretamente do GitHub:
library(devtools)
devtools::install_github("cefet-rj-dal/harbinger", force = TRUE, upgrade = "never")
Documentação e exemplos
Os exemplos do harbinger estão organizados em trilha guiada e em coleções temáticas de exemplos gerais, datasets, transformações, anomalias, pontos de mudança, motifs e customização:
https://github.com/cefet-rj-dal/harbinger/tree/master/examples
Apresentações
As apresentações abaixo foram reordenadas para seguir uma progressão de estudo mais didática: começar pela visão geral do framework, avançar pelo fluxo básico de uso, entender os dados e transformações, e só então entrar nas famílias específicas de métodos e na customização.
- h01-harbinger.pdf — visão geral do framework
harbingere do problema de detecção de eventos em séries temporais. - h02-tutorial.pdf — trilha guiada de uso do
harbinger, ideal como primeiro contato com o fluxo básico. - h03-general.pdf — panorama dos conceitos centrais, utilitários e avaliação no ecossistema do
harbinger. - h04-datasets.pdf — entendimento das coleções de dados e benchmarks antes da escolha de métodos.
- h05-transformations.pdf — transformações e pré-processamento para preparar a série antes da análise.
- h06-anomalies.pdf — estudo das principais famílias de métodos de detecção de anomalias.
- h07-changepoint.pdf — métodos de detecção de pontos de mudança, do caso simples aos cenários mais ricos.
- h08-motifs.pdf — descoberta de motifs e discords, com foco em análise de subsequências e padrões recorrentes.
- h09-custom.pdf — extensão e customização do framework com novos componentes e workflows.