Time series detection tasks#

The sktime.annotation module contains algorithms and tools for time series detection tasks, including:

  • anomaly or outlier detection

  • change point detection

  • time series segmentation and segment detection

The tasks include unsupervised and semi-supervised variants, and can batch or stream/online detection.

Time Series Segmentation#

ClaSPSegmentation([period_length, n_cps, ...])

ClaSP (Classification Score Profile) Segmentation.

EAgglo([member, alpha, penalty])

Hierarchical agglomerative estimation of multiple change points.

GaussianHMM([n_components, covariance_type, ...])

Hidden Markov Model with Gaussian emissions.

GMMHMM([n_components, n_mix, min_covar, ...])

Hidden Markov Model with Gaussian mixture emissions.

GreedyGaussianSegmentation([k_max, lamb, ...])

Greedy Gaussian Segmentation Estimator.

HMM(emission_funcs, transition_prob_mat[, ...])

Implements a simple HMM fitted with Viterbi algorithm.

InformationGainSegmentation([k_max, step])

Information Gain based Temporal Segmentation (IGTS) Estimator.

PoissonHMM([n_components, startprob_prior, ...])

Hidden Markov Model with Poisson emissions.

STRAY([alpha, k, knn_algorithm, p, ...])

STRAY: robust anomaly detection in data streams with concept drift.

ClusterSegmenter([clusterer])

Cluster-based Time Series Segmentation.

Time Series Anomaly Detection#

Window-based Anomaly Detection#

SubLOF(n_neighbors, window_size, *[, ...])

Timeseries version of local outlier factor.

Reduction to Tabular Anomaly Detection#

PyODAnnotator(estimator[, labels])

Transformer that applies outlier detector from pyOD.

Data Generation#

Synthetic data generating functions.