From a2a9f59ab0a2acc12ceb9ec8d18dddb2b181ee53 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Mon, 10 Apr 2023 16:25:37 +0000 Subject: automatic import of python-tslearn --- .gitignore | 1 + python-tslearn.spec | 507 ++++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 509 insertions(+) create mode 100644 python-tslearn.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..d356524 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/tslearn-0.5.3.2.tar.gz diff --git a/python-tslearn.spec b/python-tslearn.spec new file mode 100644 index 0000000..c6a744f --- /dev/null +++ b/python-tslearn.spec @@ -0,0 +1,507 @@ +%global _empty_manifest_terminate_build 0 +Name: python-tslearn +Version: 0.5.3.2 +Release: 1 +Summary: A machine learning toolkit dedicated to time-series data +License: BSD-2-Clause +URL: http://tslearn.readthedocs.io/ +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/88/16/7cc705033e285af1468846c3e8e3ba70546e301c8fcb29c29ef22d66460f/tslearn-0.5.3.2.tar.gz +BuildArch: noarch + +Requires: python3-numpy +Requires: python3-scipy +Requires: python3-scikit-learn +Requires: python3-numba +Requires: python3-joblib +Requires: python3-pytest + +%description + +
+

tslearn

+
+ + +

+ The machine learning toolkit for time series analysis in Python +

+ + +

+ + PyPI + + + Documentation + + + Build (Azure Pipelines) + + + Codecov + + + Downloads + +

+ + +
+ + + +| Section | Description | +|-|-| +| [Installation](#installation) | Installing the dependencies and tslearn | +| [Getting started](#getting-started) | A quick introduction on how to use tslearn | +| [Available features](#available-features) | An extensive overview of tslearn's functionalities | +| [Documentation](#documentation) | A link to our API reference and a gallery of examples | +| [Contributing](#contributing) | A guide for heroes willing to contribute | +| [Citation](#referencing-tslearn) | A citation for tslearn for scholarly articles | + +## Installation +There are different alternatives to install tslearn: +* PyPi: `python -m pip install tslearn` +* Conda: `conda install -c conda-forge tslearn` +* Git: `python -m pip install https://github.com/tslearn-team/tslearn/archive/main.zip` + +In order for the installation to be successful, the required dependencies must be installed. For a more detailed guide on how to install tslearn, please see the [Documentation](https://tslearn.readthedocs.io/en/stable/?badge=stable#installation). + +## Getting started + +### 1. Getting the data in the right format +tslearn expects a time series dataset to be formatted as a 3D `numpy` array. The three dimensions correspond to the number of time series, the number of measurements per time series and the number of dimensions respectively (`n_ts, max_sz, d`). In order to get the data in the right format, different solutions exist: +* [You can use the utility functions such as `to_time_series_dataset`.](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.utils.html#module-tslearn.utils) +* [You can convert from other popular time series toolkits in Python.](https://tslearn.readthedocs.io/en/stable/integration_other_software.html) +* [You can load any of the UCR datasets in the required format.](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.datasets.html#module-tslearn.datasets) +* [You can generate synthetic data using the `generators` module.](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.generators.html#module-tslearn.generators) + +It should further be noted that tslearn [supports variable-length timeseries](https://tslearn.readthedocs.io/en/stable/variablelength.html). + +```python3 +>>> from tslearn.utils import to_time_series_dataset +>>> my_first_time_series = [1, 3, 4, 2] +>>> my_second_time_series = [1, 2, 4, 2] +>>> my_third_time_series = [1, 2, 4, 2, 2] +>>> X = to_time_series_dataset([my_first_time_series, + my_second_time_series, + my_third_time_series]) +>>> y = [0, 1, 1] +``` + +### 2. Data preprocessing and transformations +Optionally, tslearn has several utilities to preprocess the data. In order to facilitate the convergence of different algorithms, you can [scale time series](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.preprocessing.html#module-tslearn.preprocessing). Alternatively, in order to speed up training times, one can [resample](https://tslearn.readthedocs.io/en/stable/gen_modules/preprocessing/tslearn.preprocessing.TimeSeriesResampler.html#tslearn.preprocessing.TimeSeriesResampler) the data or apply a [piece-wise transformation](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.piecewise.html#module-tslearn.piecewise). + +```python3 +>>> from tslearn.preprocessing import TimeSeriesScalerMinMax +>>> X_scaled = TimeSeriesScalerMinMax().fit_transform(X) +>>> print(X_scaled) +[[[0.] [0.667] [1.] [0.333] [nan]] + [[0.] [0.333] [1.] [0.333] [nan]] + [[0.] [0.333] [1.] [0.333] [0.333]]] +``` + +### 3. Training a model + +After getting the data in the right format, a model can be trained. Depending on the use case, tslearn supports different tasks: classification, clustering and regression. For an extensive overview of possibilities, check out our [gallery of examples](https://tslearn.readthedocs.io/en/stable/auto_examples/index.html). + +```python3 +>>> from tslearn.neighbors import KNeighborsTimeSeriesClassifier +>>> knn = KNeighborsTimeSeriesClassifier(n_neighbors=1) +>>> knn.fit(X_scaled, y) +>>> print(knn.predict(X_scaled)) +[0 1 1] +``` + +As can be seen, the models in tslearn follow the same API as those of the well-known scikit-learn. Moreover, they are fully compatible with it, allowing to use different scikit-learn utilities such as [hyper-parameter tuning and pipelines](https://tslearn.readthedocs.io/en/stable/auto_examples/plot_knnts_sklearn.html#sphx-glr-auto-examples-plot-knnts-sklearn-py). + +### 4. More analyses + +tslearn further allows to perform all different types of analysis. Examples include [calculating barycenters](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.barycenters.html#module-tslearn.barycenters) of a group of time series or calculate the distances between time series using a [variety of distance metrics](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.metrics.html#module-tslearn.metrics). + +## Available features + +| data | processing | clustering | classification | regression | metrics | +|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------| +| [UCR Datasets](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.datasets.html#module-tslearn.datasets) | [Scaling](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.preprocessing.html#module-tslearn.preprocessing) | [TimeSeriesKMeans](https://tslearn.readthedocs.io/en/stable/gen_modules/clustering/tslearn.clustering.TimeSeriesKMeans.html#tslearn.clustering.TimeSeriesKMeans) | [KNN Classifier](https://tslearn.readthedocs.io/en/stable/gen_modules/neighbors/tslearn.neighbors.KNeighborsTimeSeriesClassifier.html#tslearn.neighbors.KNeighborsTimeSeriesClassifier) | [KNN Regressor](https://tslearn.readthedocs.io/en/stable/gen_modules/neighbors/tslearn.neighbors.KNeighborsTimeSeriesRegressor.html#tslearn.neighbors.KNeighborsTimeSeriesRegressor) | [Dynamic Time Warping](https://tslearn.readthedocs.io/en/stable/gen_modules/metrics/tslearn.metrics.dtw.html#tslearn.metrics.dtw) | +| [Generators](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.generators.html#module-tslearn.generators) | [Piecewise](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.piecewise.html#module-tslearn.piecewise) | [KShape](https://tslearn.readthedocs.io/en/stable/gen_modules/clustering/tslearn.clustering.KShape.html#tslearn.clustering.KShape) | [TimeSeriesSVC](https://tslearn.readthedocs.io/en/stable/gen_modules/svm/tslearn.svm.TimeSeriesSVC.html#tslearn.svm.TimeSeriesSVC) | [TimeSeriesSVR](https://tslearn.readthedocs.io/en/stable/gen_modules/svm/tslearn.svm.TimeSeriesSVR.html#tslearn.svm.TimeSeriesSVR) | [Global Alignment Kernel](https://tslearn.readthedocs.io/en/stable/gen_modules/metrics/tslearn.metrics.gak.html#tslearn.metrics.gak) | +| Conversion([1](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.utils.html#module-tslearn.utils), [2](https://tslearn.readthedocs.io/en/stable/integration_other_software.html)) | | [KernelKmeans](https://tslearn.readthedocs.io/en/stable/gen_modules/clustering/tslearn.clustering.KernelKMeans.html#tslearn.clustering.KernelKMeans) | [LearningShapelets](https://tslearn.readthedocs.io/en/stable/gen_modules/shapelets/tslearn.shapelets.LearningShapelets.html) | [MLP](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.neural_network.html#module-tslearn.neural_network) | [Barycenters](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.barycenters.html#module-tslearn.barycenters) | +| | | | [Early Classification](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.early_classification.html#module-tslearn.early_classification) | | [Matrix Profile](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.matrix_profile.html#module-tslearn.matrix_profile) | + + +## Documentation + +The documentation is hosted at [readthedocs](http://tslearn.readthedocs.io/en/stable/index.html). It includes an [API](https://tslearn.readthedocs.io/en/stable/reference.html), [gallery of examples](https://tslearn.readthedocs.io/en/stable/auto_examples/index.html) and a [user guide](https://tslearn.readthedocs.io/en/stable/user_guide/userguide.html). + +## Contributing + +If you would like to contribute to `tslearn`, please have a look at [our contribution guidelines](CONTRIBUTING.md). A list of interesting TODO's can be found [here](https://github.com/tslearn-team/tslearn/issues?utf8=✓&q=is%3Aissue%20is%3Aopen%20label%3A%22new%20feature%22%20). **If you want other ML methods for time series to be added to this TODO list, do not hesitate to [open an issue](https://github.com/tslearn-team/tslearn/issues/new/choose)!** + +## Referencing tslearn + +If you use `tslearn` in a scientific publication, we would appreciate citations: + +```bibtex +@article{JMLR:v21:20-091, + author = {Romain Tavenard and Johann Faouzi and Gilles Vandewiele and + Felix Divo and Guillaume Androz and Chester Holtz and + Marie Payne and Roman Yurchak and Marc Ru{\ss}wurm and + Kushal Kolar and Eli Woods}, + title = {Tslearn, A Machine Learning Toolkit for Time Series Data}, + journal = {Journal of Machine Learning Research}, + year = {2020}, + volume = {21}, + number = {118}, + pages = {1-6}, + url = {http://jmlr.org/papers/v21/20-091.html} +} +``` + +#### Acknowledgments +Authors would like to thank Mathieu Blondel for providing code for [Kernel k-means](https://gist.github.com/mblondel/6230787) and [Soft-DTW](https://github.com/mblondel/soft-dtw). + + +%package -n python3-tslearn +Summary: A machine learning toolkit dedicated to time-series data +Provides: python-tslearn +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-tslearn + +
+

tslearn

+
+ + +

+ The machine learning toolkit for time series analysis in Python +

+ + +

+ + PyPI + + + Documentation + + + Build (Azure Pipelines) + + + Codecov + + + Downloads + +

+ + +
+ + + +| Section | Description | +|-|-| +| [Installation](#installation) | Installing the dependencies and tslearn | +| [Getting started](#getting-started) | A quick introduction on how to use tslearn | +| [Available features](#available-features) | An extensive overview of tslearn's functionalities | +| [Documentation](#documentation) | A link to our API reference and a gallery of examples | +| [Contributing](#contributing) | A guide for heroes willing to contribute | +| [Citation](#referencing-tslearn) | A citation for tslearn for scholarly articles | + +## Installation +There are different alternatives to install tslearn: +* PyPi: `python -m pip install tslearn` +* Conda: `conda install -c conda-forge tslearn` +* Git: `python -m pip install https://github.com/tslearn-team/tslearn/archive/main.zip` + +In order for the installation to be successful, the required dependencies must be installed. For a more detailed guide on how to install tslearn, please see the [Documentation](https://tslearn.readthedocs.io/en/stable/?badge=stable#installation). + +## Getting started + +### 1. Getting the data in the right format +tslearn expects a time series dataset to be formatted as a 3D `numpy` array. The three dimensions correspond to the number of time series, the number of measurements per time series and the number of dimensions respectively (`n_ts, max_sz, d`). In order to get the data in the right format, different solutions exist: +* [You can use the utility functions such as `to_time_series_dataset`.](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.utils.html#module-tslearn.utils) +* [You can convert from other popular time series toolkits in Python.](https://tslearn.readthedocs.io/en/stable/integration_other_software.html) +* [You can load any of the UCR datasets in the required format.](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.datasets.html#module-tslearn.datasets) +* [You can generate synthetic data using the `generators` module.](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.generators.html#module-tslearn.generators) + +It should further be noted that tslearn [supports variable-length timeseries](https://tslearn.readthedocs.io/en/stable/variablelength.html). + +```python3 +>>> from tslearn.utils import to_time_series_dataset +>>> my_first_time_series = [1, 3, 4, 2] +>>> my_second_time_series = [1, 2, 4, 2] +>>> my_third_time_series = [1, 2, 4, 2, 2] +>>> X = to_time_series_dataset([my_first_time_series, + my_second_time_series, + my_third_time_series]) +>>> y = [0, 1, 1] +``` + +### 2. Data preprocessing and transformations +Optionally, tslearn has several utilities to preprocess the data. In order to facilitate the convergence of different algorithms, you can [scale time series](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.preprocessing.html#module-tslearn.preprocessing). Alternatively, in order to speed up training times, one can [resample](https://tslearn.readthedocs.io/en/stable/gen_modules/preprocessing/tslearn.preprocessing.TimeSeriesResampler.html#tslearn.preprocessing.TimeSeriesResampler) the data or apply a [piece-wise transformation](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.piecewise.html#module-tslearn.piecewise). + +```python3 +>>> from tslearn.preprocessing import TimeSeriesScalerMinMax +>>> X_scaled = TimeSeriesScalerMinMax().fit_transform(X) +>>> print(X_scaled) +[[[0.] [0.667] [1.] [0.333] [nan]] + [[0.] [0.333] [1.] [0.333] [nan]] + [[0.] [0.333] [1.] [0.333] [0.333]]] +``` + +### 3. Training a model + +After getting the data in the right format, a model can be trained. Depending on the use case, tslearn supports different tasks: classification, clustering and regression. For an extensive overview of possibilities, check out our [gallery of examples](https://tslearn.readthedocs.io/en/stable/auto_examples/index.html). + +```python3 +>>> from tslearn.neighbors import KNeighborsTimeSeriesClassifier +>>> knn = KNeighborsTimeSeriesClassifier(n_neighbors=1) +>>> knn.fit(X_scaled, y) +>>> print(knn.predict(X_scaled)) +[0 1 1] +``` + +As can be seen, the models in tslearn follow the same API as those of the well-known scikit-learn. Moreover, they are fully compatible with it, allowing to use different scikit-learn utilities such as [hyper-parameter tuning and pipelines](https://tslearn.readthedocs.io/en/stable/auto_examples/plot_knnts_sklearn.html#sphx-glr-auto-examples-plot-knnts-sklearn-py). + +### 4. More analyses + +tslearn further allows to perform all different types of analysis. Examples include [calculating barycenters](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.barycenters.html#module-tslearn.barycenters) of a group of time series or calculate the distances between time series using a [variety of distance metrics](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.metrics.html#module-tslearn.metrics). + +## Available features + +| data | processing | clustering | classification | regression | metrics | +|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------| +| [UCR Datasets](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.datasets.html#module-tslearn.datasets) | [Scaling](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.preprocessing.html#module-tslearn.preprocessing) | [TimeSeriesKMeans](https://tslearn.readthedocs.io/en/stable/gen_modules/clustering/tslearn.clustering.TimeSeriesKMeans.html#tslearn.clustering.TimeSeriesKMeans) | [KNN Classifier](https://tslearn.readthedocs.io/en/stable/gen_modules/neighbors/tslearn.neighbors.KNeighborsTimeSeriesClassifier.html#tslearn.neighbors.KNeighborsTimeSeriesClassifier) | [KNN Regressor](https://tslearn.readthedocs.io/en/stable/gen_modules/neighbors/tslearn.neighbors.KNeighborsTimeSeriesRegressor.html#tslearn.neighbors.KNeighborsTimeSeriesRegressor) | [Dynamic Time Warping](https://tslearn.readthedocs.io/en/stable/gen_modules/metrics/tslearn.metrics.dtw.html#tslearn.metrics.dtw) | +| [Generators](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.generators.html#module-tslearn.generators) | [Piecewise](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.piecewise.html#module-tslearn.piecewise) | [KShape](https://tslearn.readthedocs.io/en/stable/gen_modules/clustering/tslearn.clustering.KShape.html#tslearn.clustering.KShape) | [TimeSeriesSVC](https://tslearn.readthedocs.io/en/stable/gen_modules/svm/tslearn.svm.TimeSeriesSVC.html#tslearn.svm.TimeSeriesSVC) | [TimeSeriesSVR](https://tslearn.readthedocs.io/en/stable/gen_modules/svm/tslearn.svm.TimeSeriesSVR.html#tslearn.svm.TimeSeriesSVR) | [Global Alignment Kernel](https://tslearn.readthedocs.io/en/stable/gen_modules/metrics/tslearn.metrics.gak.html#tslearn.metrics.gak) | +| Conversion([1](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.utils.html#module-tslearn.utils), [2](https://tslearn.readthedocs.io/en/stable/integration_other_software.html)) | | [KernelKmeans](https://tslearn.readthedocs.io/en/stable/gen_modules/clustering/tslearn.clustering.KernelKMeans.html#tslearn.clustering.KernelKMeans) | [LearningShapelets](https://tslearn.readthedocs.io/en/stable/gen_modules/shapelets/tslearn.shapelets.LearningShapelets.html) | [MLP](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.neural_network.html#module-tslearn.neural_network) | [Barycenters](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.barycenters.html#module-tslearn.barycenters) | +| | | | [Early Classification](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.early_classification.html#module-tslearn.early_classification) | | [Matrix Profile](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.matrix_profile.html#module-tslearn.matrix_profile) | + + +## Documentation + +The documentation is hosted at [readthedocs](http://tslearn.readthedocs.io/en/stable/index.html). It includes an [API](https://tslearn.readthedocs.io/en/stable/reference.html), [gallery of examples](https://tslearn.readthedocs.io/en/stable/auto_examples/index.html) and a [user guide](https://tslearn.readthedocs.io/en/stable/user_guide/userguide.html). + +## Contributing + +If you would like to contribute to `tslearn`, please have a look at [our contribution guidelines](CONTRIBUTING.md). A list of interesting TODO's can be found [here](https://github.com/tslearn-team/tslearn/issues?utf8=✓&q=is%3Aissue%20is%3Aopen%20label%3A%22new%20feature%22%20). **If you want other ML methods for time series to be added to this TODO list, do not hesitate to [open an issue](https://github.com/tslearn-team/tslearn/issues/new/choose)!** + +## Referencing tslearn + +If you use `tslearn` in a scientific publication, we would appreciate citations: + +```bibtex +@article{JMLR:v21:20-091, + author = {Romain Tavenard and Johann Faouzi and Gilles Vandewiele and + Felix Divo and Guillaume Androz and Chester Holtz and + Marie Payne and Roman Yurchak and Marc Ru{\ss}wurm and + Kushal Kolar and Eli Woods}, + title = {Tslearn, A Machine Learning Toolkit for Time Series Data}, + journal = {Journal of Machine Learning Research}, + year = {2020}, + volume = {21}, + number = {118}, + pages = {1-6}, + url = {http://jmlr.org/papers/v21/20-091.html} +} +``` + +#### Acknowledgments +Authors would like to thank Mathieu Blondel for providing code for [Kernel k-means](https://gist.github.com/mblondel/6230787) and [Soft-DTW](https://github.com/mblondel/soft-dtw). + + +%package help +Summary: Development documents and examples for tslearn +Provides: python3-tslearn-doc +%description help + +
+

tslearn

+
+ + +

+ The machine learning toolkit for time series analysis in Python +

+ + +

+ + PyPI + + + Documentation + + + Build (Azure Pipelines) + + + Codecov + + + Downloads + +

+ + +
+ + + +| Section | Description | +|-|-| +| [Installation](#installation) | Installing the dependencies and tslearn | +| [Getting started](#getting-started) | A quick introduction on how to use tslearn | +| [Available features](#available-features) | An extensive overview of tslearn's functionalities | +| [Documentation](#documentation) | A link to our API reference and a gallery of examples | +| [Contributing](#contributing) | A guide for heroes willing to contribute | +| [Citation](#referencing-tslearn) | A citation for tslearn for scholarly articles | + +## Installation +There are different alternatives to install tslearn: +* PyPi: `python -m pip install tslearn` +* Conda: `conda install -c conda-forge tslearn` +* Git: `python -m pip install https://github.com/tslearn-team/tslearn/archive/main.zip` + +In order for the installation to be successful, the required dependencies must be installed. For a more detailed guide on how to install tslearn, please see the [Documentation](https://tslearn.readthedocs.io/en/stable/?badge=stable#installation). + +## Getting started + +### 1. Getting the data in the right format +tslearn expects a time series dataset to be formatted as a 3D `numpy` array. The three dimensions correspond to the number of time series, the number of measurements per time series and the number of dimensions respectively (`n_ts, max_sz, d`). In order to get the data in the right format, different solutions exist: +* [You can use the utility functions such as `to_time_series_dataset`.](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.utils.html#module-tslearn.utils) +* [You can convert from other popular time series toolkits in Python.](https://tslearn.readthedocs.io/en/stable/integration_other_software.html) +* [You can load any of the UCR datasets in the required format.](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.datasets.html#module-tslearn.datasets) +* [You can generate synthetic data using the `generators` module.](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.generators.html#module-tslearn.generators) + +It should further be noted that tslearn [supports variable-length timeseries](https://tslearn.readthedocs.io/en/stable/variablelength.html). + +```python3 +>>> from tslearn.utils import to_time_series_dataset +>>> my_first_time_series = [1, 3, 4, 2] +>>> my_second_time_series = [1, 2, 4, 2] +>>> my_third_time_series = [1, 2, 4, 2, 2] +>>> X = to_time_series_dataset([my_first_time_series, + my_second_time_series, + my_third_time_series]) +>>> y = [0, 1, 1] +``` + +### 2. Data preprocessing and transformations +Optionally, tslearn has several utilities to preprocess the data. In order to facilitate the convergence of different algorithms, you can [scale time series](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.preprocessing.html#module-tslearn.preprocessing). Alternatively, in order to speed up training times, one can [resample](https://tslearn.readthedocs.io/en/stable/gen_modules/preprocessing/tslearn.preprocessing.TimeSeriesResampler.html#tslearn.preprocessing.TimeSeriesResampler) the data or apply a [piece-wise transformation](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.piecewise.html#module-tslearn.piecewise). + +```python3 +>>> from tslearn.preprocessing import TimeSeriesScalerMinMax +>>> X_scaled = TimeSeriesScalerMinMax().fit_transform(X) +>>> print(X_scaled) +[[[0.] [0.667] [1.] [0.333] [nan]] + [[0.] [0.333] [1.] [0.333] [nan]] + [[0.] [0.333] [1.] [0.333] [0.333]]] +``` + +### 3. Training a model + +After getting the data in the right format, a model can be trained. Depending on the use case, tslearn supports different tasks: classification, clustering and regression. For an extensive overview of possibilities, check out our [gallery of examples](https://tslearn.readthedocs.io/en/stable/auto_examples/index.html). + +```python3 +>>> from tslearn.neighbors import KNeighborsTimeSeriesClassifier +>>> knn = KNeighborsTimeSeriesClassifier(n_neighbors=1) +>>> knn.fit(X_scaled, y) +>>> print(knn.predict(X_scaled)) +[0 1 1] +``` + +As can be seen, the models in tslearn follow the same API as those of the well-known scikit-learn. Moreover, they are fully compatible with it, allowing to use different scikit-learn utilities such as [hyper-parameter tuning and pipelines](https://tslearn.readthedocs.io/en/stable/auto_examples/plot_knnts_sklearn.html#sphx-glr-auto-examples-plot-knnts-sklearn-py). + +### 4. More analyses + +tslearn further allows to perform all different types of analysis. Examples include [calculating barycenters](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.barycenters.html#module-tslearn.barycenters) of a group of time series or calculate the distances between time series using a [variety of distance metrics](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.metrics.html#module-tslearn.metrics). + +## Available features + +| data | processing | clustering | classification | regression | metrics | +|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------| +| [UCR Datasets](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.datasets.html#module-tslearn.datasets) | [Scaling](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.preprocessing.html#module-tslearn.preprocessing) | [TimeSeriesKMeans](https://tslearn.readthedocs.io/en/stable/gen_modules/clustering/tslearn.clustering.TimeSeriesKMeans.html#tslearn.clustering.TimeSeriesKMeans) | [KNN Classifier](https://tslearn.readthedocs.io/en/stable/gen_modules/neighbors/tslearn.neighbors.KNeighborsTimeSeriesClassifier.html#tslearn.neighbors.KNeighborsTimeSeriesClassifier) | [KNN Regressor](https://tslearn.readthedocs.io/en/stable/gen_modules/neighbors/tslearn.neighbors.KNeighborsTimeSeriesRegressor.html#tslearn.neighbors.KNeighborsTimeSeriesRegressor) | [Dynamic Time Warping](https://tslearn.readthedocs.io/en/stable/gen_modules/metrics/tslearn.metrics.dtw.html#tslearn.metrics.dtw) | +| [Generators](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.generators.html#module-tslearn.generators) | [Piecewise](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.piecewise.html#module-tslearn.piecewise) | [KShape](https://tslearn.readthedocs.io/en/stable/gen_modules/clustering/tslearn.clustering.KShape.html#tslearn.clustering.KShape) | [TimeSeriesSVC](https://tslearn.readthedocs.io/en/stable/gen_modules/svm/tslearn.svm.TimeSeriesSVC.html#tslearn.svm.TimeSeriesSVC) | [TimeSeriesSVR](https://tslearn.readthedocs.io/en/stable/gen_modules/svm/tslearn.svm.TimeSeriesSVR.html#tslearn.svm.TimeSeriesSVR) | [Global Alignment Kernel](https://tslearn.readthedocs.io/en/stable/gen_modules/metrics/tslearn.metrics.gak.html#tslearn.metrics.gak) | +| Conversion([1](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.utils.html#module-tslearn.utils), [2](https://tslearn.readthedocs.io/en/stable/integration_other_software.html)) | | [KernelKmeans](https://tslearn.readthedocs.io/en/stable/gen_modules/clustering/tslearn.clustering.KernelKMeans.html#tslearn.clustering.KernelKMeans) | [LearningShapelets](https://tslearn.readthedocs.io/en/stable/gen_modules/shapelets/tslearn.shapelets.LearningShapelets.html) | [MLP](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.neural_network.html#module-tslearn.neural_network) | [Barycenters](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.barycenters.html#module-tslearn.barycenters) | +| | | | [Early Classification](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.early_classification.html#module-tslearn.early_classification) | | [Matrix Profile](https://tslearn.readthedocs.io/en/stable/gen_modules/tslearn.matrix_profile.html#module-tslearn.matrix_profile) | + + +## Documentation + +The documentation is hosted at [readthedocs](http://tslearn.readthedocs.io/en/stable/index.html). It includes an [API](https://tslearn.readthedocs.io/en/stable/reference.html), [gallery of examples](https://tslearn.readthedocs.io/en/stable/auto_examples/index.html) and a [user guide](https://tslearn.readthedocs.io/en/stable/user_guide/userguide.html). + +## Contributing + +If you would like to contribute to `tslearn`, please have a look at [our contribution guidelines](CONTRIBUTING.md). A list of interesting TODO's can be found [here](https://github.com/tslearn-team/tslearn/issues?utf8=✓&q=is%3Aissue%20is%3Aopen%20label%3A%22new%20feature%22%20). **If you want other ML methods for time series to be added to this TODO list, do not hesitate to [open an issue](https://github.com/tslearn-team/tslearn/issues/new/choose)!** + +## Referencing tslearn + +If you use `tslearn` in a scientific publication, we would appreciate citations: + +```bibtex +@article{JMLR:v21:20-091, + author = {Romain Tavenard and Johann Faouzi and Gilles Vandewiele and + Felix Divo and Guillaume Androz and Chester Holtz and + Marie Payne and Roman Yurchak and Marc Ru{\ss}wurm and + Kushal Kolar and Eli Woods}, + title = {Tslearn, A Machine Learning Toolkit for Time Series Data}, + journal = {Journal of Machine Learning Research}, + year = {2020}, + volume = {21}, + number = {118}, + pages = {1-6}, + url = {http://jmlr.org/papers/v21/20-091.html} +} +``` + +#### Acknowledgments +Authors would like to thank Mathieu Blondel for providing code for [Kernel k-means](https://gist.github.com/mblondel/6230787) and [Soft-DTW](https://github.com/mblondel/soft-dtw). + + +%prep +%autosetup -n tslearn-0.5.3.2 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-tslearn -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Apr 10 2023 Python_Bot - 0.5.3.2-1 +- Package Spec generated diff --git a/sources b/sources new file mode 100644 index 0000000..51ae98c --- /dev/null +++ b/sources @@ -0,0 +1 @@ +0e754b1b7290bc6701b02108fcb37a29 tslearn-0.5.3.2.tar.gz -- cgit v1.2.3