Skip to content

A tutorial on using skchange -- a python library for fast changepoint and anomaly detection. Made for Hydro's Data Science Forum Kick-off.

License

Notifications You must be signed in to change notification settings

NorskRegnesentral/skchange-tutorial-hydro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

skchange tutorial at Hydro Data Science Forum

This tutorial is about skchange and sktime.

skchange is a python library for fast change and anomaly detection in time series.

skchange is based on, and extends, sktime, the most widely used scikit-learn compatible framework library for learning with time series.

Both packages are maintained under permissive license, easily extensible by anyone, and interoperable with the python data science stack. This workshop gives a hands-on introduction to the new joint detection interface developed in skchange and sktime, for detecting point anomalies, changepoints, and segment anomalies.

💡 Description

The tutorial will give an introduction to the detection API in skchange and sktime, with a focus on unsupervised detection of segment anomalies and change points. The tutorial includes:

  • An introduction to the different types of detection tasks for time series data:

    • Change detection
    • Segmentation
    • Point anomaly detection
    • Segment anomaly detection
    • Subset anomaly detection for multivariate data
  • How to use skchange and sktime for these tasks

  • Cost and score functions for anomaly and changepoint detectors

We invite anyone to get involved as a developer, user or supporter.

💾 Installation

Here's how to run the notebooks locally using python virtual environment and VSCode. This tutorial has only been tested on Windows using Python 3.12.9. Apologies if some details are missing for other setups.

Clone the repository and enter the directory

git clone https://github.com/NorskRegnesentral/skchange-tutorial-hydro

Open the cloned repository

Click Open folder in VSCode and select the cloned repository.

Create a python virtual environment

python -m venv .venv

Activate your environment

Linux

source .venv/bin/activate

Windows

.venv/Scripts/activate

Install the requirements

pip install -r requirements.txt

▶️ Running the tutorial

  1. Open the notebooks folder.

  2. Run through the notebooks and cells in order.

    • When VSCode asks if you want to activate the .venv environment for Jupyter, click "Yes".
    • If you are not prompted to activate the .venv environment, you can select it manually by clicking on the kernel button in the top right corner of the notebook. You may have to reload the window for the .venv environment to appear.

🎥 Other Tutorials

👋 How to contribute

If you're interested in contributing to skchange or sktime, you can find out more how to get involved here.

Any contributions are welcome, not just code!

About

A tutorial on using skchange -- a python library for fast changepoint and anomaly detection. Made for Hydro's Data Science Forum Kick-off.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published