sktime/sktime
A unified framework for machine learning with time series
What it solves
sktime is a Python library designed to provide a unified interface for various time series analysis tasks. It addresses the fragmentation of the time series ecosystem by allowing users to apply different algorithms and tools from multiple libraries (like scikit-learn, statsmodels, and fbprophet) through a consistent API.
How it works
It functions as a framework that provides both its own dedicated time series algorithms and interfaces to other popular machine learning libraries. It supports a wide range of learning tasks including:
- Forecasting: Predicting future values in a time series.
- Classification: Categorizing time series data.
- Regression: Predicting a continuous value from time series data.
- Clustering: Grouping similar time series together.
- Detection: Identifying anomalies or changepoints.
- Transformations: Applying data transformations to time series.
Users can build composite models using tools for pipelining, ensembling, tuning, and reduction, which allows them to use algorithms designed for one task (e.g., a scikit-learn regressor) to solve another (e.g., a forecasting task).
Who it’s for
Data scientists and machine learning engineers who work with time series data and need a standardized way to build, tune, and validate models across different algorithms and libraries.
Highlights
- Unified Interface: A single API for forecasting, classification, regression, and anomaly detection.
- Scikit-learn Compatible: Built to be compatible with scikit-learn tools for tuning and validation.
- Interoperable: Provides interfaces to external libraries such as statsmodels, tsfresh, PyOD, and fbprophet.
- Extensible: Includes extension templates to help users add their own custom algorithms to the framework.
Related
- Project
- Project
- Project
- Project
- Project