An open-source library of algorithms to analyse time series in GPU and CPU.

Overview

Khiva

License: MPL 2.0 Gitter chat

Build Documentation Build Linux and Mac OS Build Windows Code Coverage
Documentation Status Build Status Build status Coverage Status

Khiva is an open-source library of efficient algorithms to analyse time series in GPU and CPU. It can be used to extract insights from one or a group of time series. The large number of available methods allow us to understand the nature of each time series. Based on the results of this analysis, users can reduce dimensionality, find out recurrent motifs or discords, understand the seasonality or trend from a given time series, forecasting and detect anomalies.

Khiva provides a mean for time series analytics at scale. These analytics can be exploited in a wide range of use cases across several industries, like energy, finance, e-health, IoT, music industry, etc.

Khiva is inspired by other time series libraries as tsfresh, tslearn and hctsa among others.

Other Matrix Profile implementations

License

This project is licensed under MPL-v2.

Installation

Currently, khiva is supported on Windows, Linux and MacOs, if you need to install the library follow the installation guide.

Contributing

The rules to contribute to this project are described here.

Builds

We have a first approach to generate a build and execute the set of tests on every pull request to the master branch. This process uses travis and appveyor. The status badges of the builds are contained at the beginning of this file.

Referencing Khiva

If you use Khiva in a scientific publication, we would appreciate citations:

@misc{khiva,
 title={Khiva: Accelerated time-series analytics on GPUs and CPU multicores},
 author={Ruiz-Ferrer, Justo and Vilches, Antonio and Torreno, Oscar and Cuesta, David},
 year={2018},
 note={\url{https://github.com/shapelets/khiva}}
}
Issues
  • Tests fail with invalid pointer on free during make

    Tests fail with invalid pointer on free during make

    Not sure if this is on my end or in one of my shared libraries causing the problem.

    Here's the error during the build. https://gist.github.com/zpzim/a7added1e63587e162f871383e33b1dc

    It might be related to Intel TBB. I get this error even when I comment out the entire test function

    opened by zpzim 5
  • Linking against gtest: conan builds vs regular cmake builds

    Linking against gtest: conan builds vs regular cmake builds

    Describe the bug Linking errors raise when building the project and linking against the libraries installed by conan. Errors sample:

    CMakeFiles/features.dir/featuresTest.cpp.o: In function `testing::AssertionResult testing::internal::CmpHelperEQFailure<long long, int>(char const*, char const*, long long const&, int const&)':
    /home/asem/.conan/data/gtest/1.8.1/bincrafters/stable/package/4a8c5b4cd3b4d45b83fff85d53160ea02ae5fa2d/include/gtest/gtest.h:1435: undefined reference to `testing::internal::EqFailure(char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)'
    

    The linking issue is fixed when linking the khiva tests against the same gtest version 1.8.0 that is built from its main repository.

    Sample from CMakeCache.txt before fixing

    //Path to a file.
    GTEST_INCLUDE_DIRS:PATH=/home/asem/.conan/data/gtest/1.8.1/bincrafters/stable/package/4a8c5b4cd3b4d45b83fff85d53160ea02ae5fa2d/include
    
    //Path to a library.
    GTEST_LIBRARIES:FILEPATH=/home/asem/.conan/data/gtest/1.8.1/bincrafters/stable/package/4a8c5b4cd3b4d45b83fff85d53160ea02ae5fa2d/lib/libgtest.a
    
    //Path to a library.
    GTEST_MAIN_LIBRARIES:FILEPATH=/home/asem/.conan/data/gtest/1.8.1/bincrafters/stable/package/4a8c5b4cd3b4d45b83fff85d53160ea02ae5fa2d/lib/libgtest_main.a
    

    After fixing

    //Path to a file.
    GTEST_INCLUDE_DIRS:PATH=/opt/gtest/include
    
    //Path to a library.
    GTEST_LIBRARIES:FILEPATH=/opt/gtest/lib/libgtest.a
    
    //Path to a library.
    GTEST_MAIN_LIBRARIES:FILEPATH=/opt/gtest/lib/libgtest_main.a
    

    I am just reporting this case since it costed me a lot of time! Couldn't expect that conan might be the reason.

    opened by A-Alaa 3
  • Fixing PAA to work with non divisible number of points.

    Fixing PAA to work with non divisible number of points.

    Make sure you have checked all steps below.

    Description

    • [ ] Here are some details about my PR, including screenshots of any UI changes:

    Tests

    • [ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

    Benchmarks

    • [ ] My PR adds the following micro benchmarks OR does not need benchmarks for this extremely good reason:

    Commits

    • [ ] My commits have been squashed if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
      1. Subject is separated from body by a blank line
      2. Subject is limited to 50 characters
      3. Subject does not end with a period
      4. Subject uses the imperative mood ("add", not "adding")
      5. Body wraps at 72 characters
      6. Body explains "what" and "why", not "how"

    License

    Documentation

    • [ ] In case of new functionality, my PR adds documentation that describes how to use it.
    opened by avilchess 3
  • Update CMakeLists for Windows

    Update CMakeLists for Windows

    Description

    CMakeLists update for Windows systems

    Tests

    No tests, just build system

    Benchmarks

    Commits

    License

    Documentation

    opened by raulbocanegra 3
  • Fix/operation array

    Fix/operation array

    Make sure you have checked all steps below.

    Description

    • [ ] Here are some details about my PR, including screenshots of any UI changes:

    Tests

    • [ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

    Benchmarks

    • [ ] My PR adds the following micro benchmarks OR does not need benchmarks for this extremely good reason:

    Commits

    • [ ] My commits have been squashed if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
      1. Subject is separated from body by a blank line
      2. Subject is limited to 50 characters
      3. Subject does not end with a period
      4. Subject uses the imperative mood ("add", not "adding")
      5. Body wraps at 72 characters
      6. Body explains "what" and "why", not "how"

    License

    Documentation

    • [ ] In case of new functionality, my PR adds documentation that describes how to use it.
    opened by avilchess 2
  • Improving visvalingam performance by 3x.

    Improving visvalingam performance by 3x.

    Make sure you have checked all steps below.

    Description

    • [ ] Here are some details about my PR, including screenshots of any UI changes:

    Tests

    • [ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

    Benchmarks

    • [ ] My PR adds the following micro benchmarks OR does not need benchmarks for this extremely good reason:

    Commits

    • [ ] My commits have been squashed if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
      1. Subject is separated from body by a blank line
      2. Subject is limited to 50 characters
      3. Subject does not end with a period
      4. Subject uses the imperative mood ("add", not "adding")
      5. Body wraps at 72 characters
      6. Body explains "what" and "why", not "how"

    License

    Documentation

    • [ ] In case of new functionality, my PR adds documentation that describes how to use it.
    opened by avilchess 2
  • Ruby bindings

    Ruby bindings

    Hi, also wanted to let you know there are now Ruby bindings for Khiva. It's modeled after the Python bindings (with some minor changes to make it more Ruby-like). The C API was really nice to use and easy to follow.

    If you have any feedback, feel free to let me know here or create an issue in the project. Thanks!

    opened by ankane 2
  • Feature/headers bindings

    Feature/headers bindings

    Description

    • Added headers guards for avoid double inclusions.

    Tests

    • My PR does not need testing because it does not add any functional feature

    Benchmarks

    • [ ] My PR does not need benchmarks because are only changes in include for avoid double inclusions.

    Commits

    • Add headers guards in bindings includes for C and Java.

    License

    opened by ghost 2
  • Make explicit Arrayfire use config files

    Make explicit Arrayfire use config files

    Make sure you have checked all steps below.

    Description

    • [x] Here are some details about my PR, including screenshots of any UI changes:

    Tests

    • [x] My PR adds the following unit tests OR does not need testing for this extremely good reason:

    Benchmarks

    • [x] My PR adds the following micro benchmarks OR does not need benchmarks for this extremely good reason:

    Commits

    • [ ] My commits have been squashed if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
      1. Subject is separated from body by a blank line
      2. Subject is limited to 50 characters
      3. Subject does not end with a period
      4. Subject uses the imperative mood ("add", not "adding")
      5. Body wraps at 72 characters
      6. Body explains "what" and "why", not "how"

    License

    Documentation

    • [ ] In case of new functionality, my PR adds documentation that describes how to use it.
    opened by raulbocanegra 2
  • Feature/scamp chains

    Feature/scamp chains

    Make sure you have checked all steps below.

    Description

    • [ ] Here are some details about my PR, including screenshots of any UI changes:

    Tests

    • [ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

    Benchmarks

    • [ ] My PR adds the following micro benchmarks OR does not need benchmarks for this extremely good reason:

    Commits

    • [ ] My commits have been squashed if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
      1. Subject is separated from body by a blank line
      2. Subject is limited to 50 characters
      3. Subject does not end with a period
      4. Subject uses the imperative mood ("add", not "adding")
      5. Body wraps at 72 characters
      6. Body explains "what" and "why", not "how"

    License

    Documentation

    • [ ] In case of new functionality, my PR adds documentation that describes how to use it.
    opened by jrecuerda 2
  • Visvalingam runs on both 64 and 32 floats.

    Visvalingam runs on both 64 and 32 floats.

    Description

    Visvalingam now runs transparently for float64 and float32 types.

    Tests

    Added DimensionalityTests.VisvalingamAF to test both scenarios.

    Benchmarks

    N/A

    opened by justoruiz 0
  • Update .appveyor.yml

    Update .appveyor.yml

    Make sure you have checked all steps below.

    Description

    • [ ] Here are some details about my PR, including screenshots of any UI changes:

    Tests

    • [ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

    Benchmarks

    • [ ] My PR adds the following micro benchmarks OR does not need benchmarks for this extremely good reason:

    Commits

    • [ ] My commits have been squashed if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
      1. Subject is separated from body by a blank line
      2. Subject is limited to 50 characters
      3. Subject does not end with a period
      4. Subject uses the imperative mood ("add", not "adding")
      5. Body wraps at 72 characters
      6. Body explains "what" and "why", not "how"

    License

    Documentation

    • [ ] In case of new functionality, my PR adds documentation that describes how to use it.
    opened by avilchess 0
  • Fix broken test ClusteringTests.KShapeDouble

    Fix broken test ClusteringTests.KShapeDouble

    18/211 Test  #18: ClusteringTests.KShapeDouble .....................................***Failed   18.02 sec
    Running main() from C:\dev\vcpkg\buildtrees\gtest\src\ase-1.10.0-9cde347ce0.clean\googletest\src\gtest_main.cc
    Note: Google Test filter = ClusteringTests.KShapeDouble
    [==========] Running 1 test from 1 test suite.
    [----------] Global test environment set-up.
    [----------] 1 test from ClusteringTests
    [ RUN      ] ClusteringTests.KShapeDouble
    ←[32m[----------]←[0m CPU backend, device: Intel CPU
    [----------] CUDA backend, device: GeForce_RTX_2060
    ←[32m[----------]←[0m OPENCL backend, device: GeForce_RTX_2060
    ←[32m[----------]←[0m OPENCL backend, device: Intel(R)_UHD_Graphics
    unknown file: error: C++ exception with description "ArrayFire Exception (Internal error:998):
    OpenCL Error (-59): Invalid Operation when calling clEnqueueMapBuffer
    In function class af::array __cdecl af::matmul(const class af::array &,const class af::array &,const af_mat_prop,const af_mat_prop)
    In file src\api\cpp\blas.cpp:20" thrown in the test body.
    [  FAILED  ] ClusteringTests.KShapeDouble (17741 ms)
    [----------] 1 test from ClusteringTests (17741 ms total)
    
    [----------] Global test environment tear-down
    [==========] 1 test from 1 test suite ran. (17741 ms total)
    [  PASSED  ] 0 tests.
    [  FAILED  ] 1 test, listed below:
    [  FAILED  ] ClusteringTests.KShapeDouble
    
     1 FAILED TEST
    
    opened by marregui 0
  • Fix broken test ClusteringTests.KShapeFloat

    Fix broken test ClusteringTests.KShapeFloat

    17/211 Test  #17: ClusteringTests.KShapeFloat ......................................***Failed   18.88 sec
    Running main() from C:\dev\vcpkg\buildtrees\gtest\src\ase-1.10.0-9cde347ce0.clean\googletest\src\gtest_main.cc
    Note: Google Test filter = ClusteringTests.KShapeFloat
    [==========] Running 1 test from 1 test suite.
    [----------] Global test environment set-up.
    [----------] 1 test from ClusteringTests
    [ RUN      ] ClusteringTests.KShapeFloat
    ←[32m[----------]←[0m CPU backend, device: Intel CPU
    [----------] CUDA backend, device: GeForce_RTX_2060
    ←[32m[----------]←[0m OPENCL backend, device: GeForce_RTX_2060
    ←[32m[----------]←[0m OPENCL backend, device: Intel(R)_UHD_Graphics
    unknown file: error: C++ exception with description "ArrayFire Exception (Internal error:998):
    OpenCL Error (-59): Invalid Operation when calling clEnqueueMapBuffer
    In function class af::array __cdecl af::matmul(const class af::array &,const class af::array &,const af_mat_prop,const af_mat_prop)
    In file src\api\cpp\blas.cpp:20" thrown in the test body.
    [  FAILED  ] ClusteringTests.KShapeFloat (18594 ms)
    [----------] 1 test from ClusteringTests (18594 ms total)
    
    [----------] Global test environment tear-down
    [==========] 1 test from 1 test suite ran. (18594 ms total)
    [  PASSED  ] 0 tests.
    [  FAILED  ] 1 test, listed below:
    [  FAILED  ] ClusteringTests.KShapeFloat
    
     1 FAILED TEST
    
    opened by marregui 0
  • Fix broken test MatrixTests.FindBestDiscordsMultipleProfiles

    Fix broken test MatrixTests.FindBestDiscordsMultipleProfiles

    166/211 Test #166: MatrixTests.FindBestDiscordsMultipleProfiles .....................***Failed   19.85 sec
    Running main() from C:\dev\vcpkg\buildtrees\gtest\src\ase-1.10.0-9cde347ce0.clean\googletest\src\gtest_main.cc
    Note: Google Test filter = MatrixTests.FindBestDiscordsMultipleProfiles
    [==========] Running 1 test from 1 test suite.
    [----------] Global test environment set-up.
    [----------] 1 test from MatrixTests
    [ RUN      ] MatrixTests.FindBestDiscordsMultipleProfiles
    ←[32m[----------]←[0m CPU backend, device: Intel CPU
    [----------] CUDA backend, device: GeForce_RTX_2060
    C:\Users\MiguelArregui\workspace\khiva\test\matrixTest.cpp(1148): error: Expected equality of these values:
      subsequenceIndicesHost[0]
        Which is: 10
      0
    ←[32m[----------]←[0m OPENCL backend, device: GeForce_RTX_2060
    ←[32m[----------]←[0m OPENCL backend, device: Intel(R)_UHD_Graphics
    ←[32m[----------]←[0m OPENCL backend, device: Intel(R)_Core(TM)_i7-10875H_CPU @ 2.30GHz
    [  FAILED  ] MatrixTests.FindBestDiscordsMultipleProfiles (19597 ms)
    [----------] 1 test from MatrixTests (19597 ms total)
    
    [----------] Global test environment tear-down
    [==========] 1 test from 1 test suite ran. (19597 ms total)
    [  PASSED  ] 0 tests.
    [  FAILED  ] 1 test, listed below:
    [  FAILED  ] MatrixTests.FindBestDiscordsMultipleProfiles
    
     1 FAILED TEST
    
    opened by marregui 0
  • Fix broken test due to fltpt precission FeaturesTests.FftAggregated

    Fix broken test due to fltpt precission FeaturesTests.FftAggregated

    74/211 Test  #74: FeaturesTests.FftAggregated ......................................***Failed   11.05 sec
    Running main() from C:\dev\vcpkg\buildtrees\gtest\src\ase-1.10.0-9cde347ce0.clean\googletest\src\gtest_main.cc
    Note: Google Test filter = FeaturesTests.FftAggregated
    [==========] Running 1 test from 1 test suite.
    [----------] Global test environment set-up.
    [----------] 1 test from FeaturesTests
    [ RUN      ] FeaturesTests.FftAggregated
    ←[32m[----------]←[0m CPU backend, device: Intel CPU
    [----------] CUDA backend, device: GeForce_RTX_2060
    ←[32m[----------]←[0m OPENCL backend, device: GeForce_RTX_2060
    ←[32m[----------]←[0m OPENCL backend, device: Intel(R)_UHD_Graphics
    ←[32m[----------]←[0m OPENCL backend, device: Intel(R)_Core(TM)_i7-10875H_CPU @ 2.30GHz
    C:\Users\MiguelArregui\workspace\khiva\test\featuresTest.cpp(481): error: The difference between fft[3] and f4 is 1.1920928955078125e-06, which exceeds EPSILON, where
    fft[3] evaluates to 3.642664909362793,
    f4 evaluates to 3.6426661014556885, and
    EPSILON evaluates to 9.9999999999999995e-07.
    [  FAILED  ] FeaturesTests.FftAggregated (10790 ms)
    [----------] 1 test from FeaturesTests (10790 ms total)
    
    [----------] Global test environment tear-down
    [==========] 1 test from 1 test suite ran. (10790 ms total)
    [  PASSED  ] 0 tests.
    [  FAILED  ] 1 test, listed below:
    [  FAILED  ] FeaturesTests.FftAggregated
    
    1 FAILED TEST
    
    opened by marregui 0
  • will it work for multivariate time series

    will it work for multivariate time series

    great code thanks may you clarify : will it work for multivariate time series 1 where all values are continues values 2 or even will it work for multivariate time series where values are mixture of continues and categorical values for example 2 dimensions have continues values and 3 dimensions are categorical values

    color        weight     gender  height  age  
    

    1 black 56 m 160 34 2 white 77 f 170 54 3 yellow 87 m 167 43 4 white 55 m 198 72 5 white 88 f 176 32

    opened by Sandy4321 1
  • Segfault and error on Mac with OpenCL and different array types

    Segfault and error on Mac with OpenCL and different array types

    Describe the bug

    Hi, I'm seeing a segfault and error on Mac with OpenCL and different array data types.

    • f32 - success
    • f64 - segfault
    • s32 - error (stack trace below)
      File "/usr/local/lib/python3.9/site-packages/khiva/matrix.py", line 231, in stomp_self_join
        raise Exception(str(error_message.value.decode()))
    Exception: stomp_self_join: ArrayFire Exception (Internal error:998):
    In function cl::Program opencl::buildProgram(const vector<std::__1::string> &, const vector<std::__1::string> &)
    In file src/backend/opencl/compile_module.cpp:128
    OpenCL Device: Intel(R) Iris(TM) 
    

    To Reproduce

    It's easiest to reproduce with the Python library (but think it's probably related to the C++ code).

    from khiva.array import Array, dtype
    from khiva.library import get_backend_info, set_backend, KHIVABackend
    from khiva.matrix import stomp_self_join
    
    # everything works with the CPU backend
    # set_backend(KHIVABackend.KHIVA_BACKEND_CPU)
    
    print(get_backend_info())
    
    # success
    a = Array.from_list([1, 2, 3, 4, 5], dtype.f32)
    stomp_self_join(a, 3)
    
    # segfault
    a = Array.from_list([1, 2, 3, 4, 5], dtype.f64)
    stomp_self_join(a, 3)
    
    # error
    a = Array.from_list([1, 2, 3, 4, 5], dtype.s32)
    stomp_self_join(a, 3)
    

    Expected behavior

    No segfault or error, like with the CPU backend.

    Environment information:

    • OS: Mac OS 11.1
    • Khiva Version: 0.5.0
    • Khiva dependencies versions: ArrayFire 3.7.3, Boost 1.74.0

    Here's the output of get_backend_info():

    ArrayFire v3.7.3 (OpenCL, 64-bit Mac OSX, build default)
    [0] APPLE: Intel(R) Iris(TM) Plus Graphics, 1536 MB
    

    Additional context

    Let me know if there's any I can do to help debug.

    bug 
    opened by ankane 6
  • Update README.md

    Update README.md

    Make sure you have checked all steps below.

    Description

    • [ ] Here are some details about my PR, including screenshots of any UI changes:

    Tests

    • [ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

    Benchmarks

    • [ ] My PR adds the following micro benchmarks OR does not need benchmarks for this extremely good reason:

    Commits

    • [ ] My commits have been squashed if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
      1. Subject is separated from body by a blank line
      2. Subject is limited to 50 characters
      3. Subject does not end with a period
      4. Subject uses the imperative mood ("add", not "adding")
      5. Body wraps at 72 characters
      6. Body explains "what" and "why", not "how"

    License

    Documentation

    • [ ] In case of new functionality, my PR adds documentation that describes how to use it.
    opened by avilchess 0
  • Adding safeguards to avoid failing corner cases in Visvalingam

    Adding safeguards to avoid failing corner cases in Visvalingam

    Make sure you have checked all steps below.

    Description

    • [ ] Here are some details about my PR, including screenshots of any UI changes:

    Tests

    • [ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

    Benchmarks

    • [ ] My PR adds the following micro benchmarks OR does not need benchmarks for this extremely good reason:

    Commits

    • [ ] My commits have been squashed if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
      1. Subject is separated from body by a blank line
      2. Subject is limited to 50 characters
      3. Subject does not end with a period
      4. Subject uses the imperative mood ("add", not "adding")
      5. Body wraps at 72 characters
      6. Body explains "what" and "why", not "how"

    License

    Documentation

    • [ ] In case of new functionality, my PR adds documentation that describes how to use it.
    opened by avilchess 0
Releases(v0.5.0)
Owner
Shapelets
Accelerated Time Series Analytics
Shapelets
Kats is a toolkit to analyze time series data, a lightweight, easy-to-use, and generalizable framework to perform time series analysis.

Kats, a kit to analyze time series data, a lightweight, easy-to-use, generalizable, and extendable framework to perform time series analysis, from understanding the key statistics and characteristics, detecting change points and anomalies, to forecasting future trends.

Facebook Research 3.4k Jan 20, 2022
Open source time series library for Python

PyFlux PyFlux is an open source time series library for Python. The library has a good array of modern time series models, as well as a flexible array

Ross Taylor 1.9k Jan 16, 2022
Nixtla is an open-source time series forecasting library.

Nixtla Nixtla is an open-source time series forecasting library. We are helping data scientists and developers to have access to open source state-of-

Nixtla 160 Jan 13, 2022
A python library for easy manipulation and forecasting of time series.

Time Series Made Easy in Python darts is a python library for easy manipulation and forecasting of time series. It contains a variety of models, from

Unit8 3.4k Jan 22, 2022
STUMPY is a powerful and scalable Python library for computing a Matrix Profile, which can be used for a variety of time series data mining tasks

STUMPY STUMPY is a powerful and scalable library that efficiently computes something called the matrix profile, which can be used for a variety of tim

TD Ameritrade 2k Jan 14, 2022
A statistical library designed to fill the void in Python's time series analysis capabilities, including the equivalent of R's auto.arima function.

pmdarima Pmdarima (originally pyramid-arima, for the anagram of 'py' + 'arima') is a statistical library designed to fill the void in Python's time se

alkaline-ml 1.1k Jan 14, 2022
A python library for Bayesian time series modeling

PyDLM Welcome to pydlm, a flexible time series modeling library for python. This library is based on the Bayesian dynamic linear model (Harrison and W

Sam 404 Dec 7, 2021
An open source framework that provides a simple, universal API for building distributed applications. Ray is packaged with RLlib, a scalable reinforcement learning library, and Tune, a scalable hyperparameter tuning library.

Ray provides a simple, universal API for building distributed applications. Ray is packaged with the following libraries for accelerating machine lear

null 18.8k Jan 14, 2022
DistML is a Ray extension library to support large-scale distributed ML training on heterogeneous multi-node multi-GPU clusters

DistML is a Ray extension library to support large-scale distributed ML training on heterogeneous multi-node multi-GPU clusters

null 24 Oct 16, 2021
Automatically build ARIMA, SARIMAX, VAR, FB Prophet and XGBoost Models on Time Series data sets with a Single Line of Code. Now updated with Dask to handle millions of rows.

Auto_TS: Auto_TimeSeries Automatically build multiple Time Series models using a Single Line of Code. Now updated with Dask. Auto_timeseries is a comp

AutoViz and Auto_ViML 377 Jan 21, 2022
A data preprocessing package for time series data. Design for machine learning and deep learning.

A data preprocessing package for time series data. Design for machine learning and deep learning.

Allen Chiang 112 Jan 10, 2022
MaD GUI is a basis for graphical annotation and computational analysis of time series data.

MaD GUI Machine Learning and Data Analytics Graphical User Interface MaD GUI is a basis for graphical annotation and computational analysis of time se

Machine Learning and Data Analytics Lab FAU 4 Jan 4, 2022
A collection of Scikit-Learn compatible time series transformers and tools.

tsfeast A collection of Scikit-Learn compatible time series transformers and tools. Installation Create a virtual environment and install: From PyPi p

Chris Santiago 0 Aug 21, 2021
A machine learning toolkit dedicated to time-series data

tslearn The machine learning toolkit for time series analysis in Python Section Description Installation Installing the dependencies and tslearn Getti

null 2k Jan 12, 2022
Tool for producing high quality forecasts for time series data that has multiple seasonality with linear or non-linear growth.

Prophet: Automatic Forecasting Procedure Prophet is a procedure for forecasting time series data based on an additive model where non-linear trends ar

Facebook 13.9k Jan 13, 2022
Automatic extraction of relevant features from time series:

tsfresh This repository contains the TSFRESH python package. The abbreviation stands for "Time Series Feature extraction based on scalable hypothesis

Blue Yonder GmbH 6.1k Jan 21, 2022
A unified framework for machine learning with time series

Welcome to sktime A unified framework for machine learning with time series We provide specialized time series algorithms and scikit-learn compatible

The Alan Turing Institute 4.8k Jan 15, 2022
A machine learning toolkit dedicated to time-series data

tslearn The machine learning toolkit for time series analysis in Python Section Description Installation Installing the dependencies and tslearn Getti

null 2k Jan 19, 2022
Probabilistic time series modeling in Python

GluonTS - Probabilistic Time Series Modeling in Python GluonTS is a Python toolkit for probabilistic time series modeling, built around Apache MXNet (

Amazon Web Services - Labs 2.4k Jan 12, 2022