Skip to main content

A good Timeseries Anomaly Generator.

Project description

TimeEval logo

A good Timeseries Anomaly Generator.

CI codecov Code style: black PyPI package License: MIT python version 3.9|3.10|3.11|3.12|3.13 Downloads

GutenTAG is an extensible tool to generate time series datasets with and without anomalies. A GutenTAG time series consists of a single (univariate) or multiple (multivariate) channels containing a base oscillation with different anomalies at different positions and of different kinds.

base-oscillations base-oscillations base-oscillations

base-oscillations

tl;dr

  1. Install GutenTAG from PyPI:

    pip install timeeval-gutenTAG
    

    GutenTAG supports Python 3.9, 3.10, 3.11, 3.12, and 3.13; all other requirements are installed with the pip-call above.

  2. Create a generation configuration file example-config.yaml with the instructions to generate a single time series with two anomalies: A pattern anomaly in the middle and an amplitude anomaly at the end of the series. You can use the following content:

    timeseries:
    - name: demo
      length: 1000
      base-oscillations:
      - kind: sine
        frequency: 4.0
        amplitude: 1.0
        variance: 0.05
      anomalies:
      - position: middle
        length: 50
        kinds:
        - kind: pattern
          sinusoid_k: 10.0
      - position: end
        length: 10
        kinds:
        - kind: amplitude
          amplitude_factor: 1.5
    
  3. Execute GutenTAG with a seed and let it plot the time series:

    gutenTAG --config-yaml example-config.yaml --seed 11 --no-save --plot
    

    You should see the following time series:

    Example unsupervised time series with two anomalies

Documentation

GutenTAG's documentation can be found here.

Citation

If you use GutenTAG in your project or research, please cite our demonstration paper:

Phillip Wenig, Sebastian Schmidl, and Thorsten Papenbrock. TimeEval: A Benchmarking Toolkit for Time Series Anomaly Detection Algorithms. PVLDB, 15(12): 3678 - 3681, 2022. doi:10.14778/3554821.3554873

@article{WenigEtAl2022TimeEval,
  title = {TimeEval: {{A}} Benchmarking Toolkit for Time Series Anomaly Detection Algorithms},
  author = {Wenig, Phillip and Schmidl, Sebastian and Papenbrock, Thorsten},
  date = {2022},
  journaltitle = {Proceedings of the {{VLDB Endowment}} ({{PVLDB}})},
  volume = {15},
  number = {12},
  pages = {3678 -- 3681},
  doi = {10.14778/3554821.3554873}
}

Contributing

We welcome contributions to GutenTAG. If you have spotted an issue with GutenTAG or if you want to enhance it, please open an issue first. See Contributing for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

timeeval_gutentag-1.5.0.tar.gz (51.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

timeeval_gutentag-1.5.0-py3-none-any.whl (64.3 kB view details)

Uploaded Python 3

File details

Details for the file timeeval_gutentag-1.5.0.tar.gz.

File metadata

  • Download URL: timeeval_gutentag-1.5.0.tar.gz
  • Upload date:
  • Size: 51.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for timeeval_gutentag-1.5.0.tar.gz
Algorithm Hash digest
SHA256 270273e83cf3a474bb1f8b4a8f60f468aadaeb8d79f897d9cc8aee373c4bdf3c
MD5 d1d984f57a26f086996c1623fda3feb5
BLAKE2b-256 41de61276075d53912c04c8b36ec9d796a45ac16c0129fcec0081952d3c9775a

See more details on using hashes here.

Provenance

The following attestation bundles were made for timeeval_gutentag-1.5.0.tar.gz:

Publisher: build.yml on TimeEval/GutenTAG

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file timeeval_gutentag-1.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for timeeval_gutentag-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 79de446bf41b4ea1ffef0e0adccabe8a541c934c4b664c7e5194e2be5fb27852
MD5 96a433cb554c2476f2c5b0dc6237db87
BLAKE2b-256 fbca0524326e96409f6e041d18a819cb37bcef148e7c0c23b4bf1fb504f4f931

See more details on using hashes here.

Provenance

The following attestation bundles were made for timeeval_gutentag-1.5.0-py3-none-any.whl:

Publisher: build.yml on TimeEval/GutenTAG

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page