scikit-learn compatible toolbox for supervised learning with time-series/panel data
Project description
sktime
A scikit-learn compatible Python toolbox for supervised learning with time-series/panel data.
The package is under active development. Development takes place in the sktime repository on Github.
Currently, various approaches to time-series classification have been implemented.
Installation
The package is currently not available directly via PyPI. Instead, follow these steps to install the development version:
Download the repository if you have not done so already:
git clone https://github.com/alan-turing-institute/sktime.git
Move into the root directory:
cd sktime
Make sure your local version is up-to-date:
git pull
Switch onto the development branch:
git checkout dev
Optionally, activate destination environment for package, e.g. with conda:
conda activate <env>
Install package:
pip install .
Overview
High-level interface
There are numerous time-series/panel data related supervised learning tasks, including
Time-series classification/regression,
Classical forecasting,
Supervised/panel forecasting,
Time-to-event/event risk prediction.
The high-level interface creates a unified interface for these different time-series/panel data related tasks through the following two objects:
Task
object that encapsulates meta-data from a dataset and the necessary information about the particular supervised learning task, e.g. the instructions on how to derive the target/labels for classification from the data,Strategy
objects that wrap low-level estimators and allows to usefit
andpredict
methods using data and a task object.
Low-level interface
The low-level interface extends the standard scikit-learn API to handle time-series/panel data. Currently, the package implements various state-of-the-art approaches to time-series classification, including
Random interval segmentation,
Time-series feature extraction, including series-to-series transforms (e.g. Fourier transform), series-to-primitives transforms (e.g. mean) as well as shapelets,
Pipelining, allowing to chain multiple transformers with a final classifiers,
Ensembling, including fully customisable random forest for time-series classification, accepting pipelines as the base estimator, including pipelines with interval segmentation and feature extraction.
Documentation
The full API documentation can be found here.
Development road map
Extension of high-level interface to classical and supervised/panel forecasting, including reduction strategies in which time-series/panel data prediction tasks are reduced to tasks that can be solved with classical supervised learning algorithms,
Integration of algorithms for classical forecasting (e.g. ARIMA), deep learning, and third-party feature extraction tools,
Design and implementation of specialised data-container for efficient handling of time-series/panel data in a supervised learning workflow and separation of time-series meta-data, re-utilising existing data-containers wherever possible,
Implementation of automated benchmarking functionality including orchestration of experiments and post-hoc evaluation methods.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file sktime-0.1.dev0.tar.gz
.
File metadata
- Download URL: sktime-0.1.dev0.tar.gz
- Upload date:
- Size: 1.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ac987028059d8c11b288ffc904c2c031386588f5fcb5ebe3d398ac711da7219 |
|
MD5 | 5b03a32021d2579f70009948c417c6b4 |
|
BLAKE2b-256 | f7c48cdad1e77f76cef6af6a4246bc5526df4c2ce98760a0089e893dd41a2e2f |
File details
Details for the file sktime-0.1.dev0-py3-none-any.whl
.
File metadata
- Download URL: sktime-0.1.dev0-py3-none-any.whl
- Upload date:
- Size: 540.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 502d0d3504946f503de471fa80e64793240b268792f5fbcede1d92097b5e4ce7 |
|
MD5 | 249c104ae141ebb77792f9828543b7a1 |
|
BLAKE2b-256 | 7a1a83111b25084551961dd118e2e954240c6d996194de3da28379c8b06ac8d1 |