Harbinger is a framework for event detection in time series. It provides an integrated environment for anomaly detection, change points (change points), and discovery of motifs in time series. The package offers a wide variety of methods for event detection, as well as functions for visualization and evaluation of the detections performed.

Available Methods

  • Anomalies:
    Methods are based on deviations from machine learning models (Conv1D, ELM, MLP, LSTM, Random Regression Forest, SVM), classification models (Decision Tree, KNN, MLP, Naive Bayes, Random Forest, SVM), clustering (k-means and DTW), and statistical methods (ARIMA, FBIAD, GARCH).

  • Change Points (Change Points):
    Methods include linear regression, ARIMA, ETS, GARCH, AMOC, ChowTest, BinSeg, GFT, and PELT.

  • Motifs:
    Methods are based on Hash and Matrix Profile, with specific support for multivariate time series.

The evaluation of detections covers both traditional approaches and soft computing

Architecture

The architecture of Harbinger is based on the concept of Experiment Lines and was built on top of the DAL Toolbox. This organization facilitates customization and the addition of new methods to the framework.

Installation

The latest version of Harbinger on CRAN is available at: https://CRAN.R-project.org/package=harbinger

To install the stable CRAN version:

install.packages("harbinger")

To install the development version directly from GitHub:

# install.packages("devtools")
library(devtools)
devtools::install_github("cefet-rj-dal/harbinger", force=TRUE, upgrade="never")

Examples

The Harbinger examples are organized according to general functions, anomaly detection, change points, motifs, and multivariate anomaly detection:

General: https://github.com/cefet-rj-dal/harbinger/tree/master/general

Anomalies: https://github.com/cefet-rj-dal/harbinger/tree/master/anomalies

Change Points: https://github.com/cefet-rj-dal/harbinger/tree/master/change_point

Motifs: https://github.com/cefet-rj-dal/harbinger/tree/master/motifs

 

Video