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}}
}
Comments
  • 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 7
  • 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
  • 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
  • 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
  • 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
  • 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
  • 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
  • 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
  • Change year

    Change year

    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
  • 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
  • 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
  • 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
Releases(v0.5.0)
Owner
Shapelets
Accelerated Time Series Analytics
Shapelets
Model Validation Toolkit is a collection of tools to assist with validating machine learning models prior to deploying them to production and monitoring them after deployment to production.

Model Validation Toolkit is a collection of tools to assist with validating machine learning models prior to deploying them to production and monitoring them after deployment to production.

FINRA 25 Dec 28, 2022
A framework for building (and incrementally growing) graph-based data structures used in hierarchical or DAG-structured clustering and nearest neighbor search

A framework for building (and incrementally growing) graph-based data structures used in hierarchical or DAG-structured clustering and nearest neighbor search

Nicholas Monath 31 Nov 03, 2022
Coursera Machine Learning - Python code

Coursera Machine Learning This repository contains python implementations of certain exercises from the course by Andrew Ng. For a number of assignmen

Jordi Warmenhoven 859 Dec 10, 2022
CorrProxies - Optimizing Machine Learning Inference Queries with Correlative Proxy Models

CorrProxies - Optimizing Machine Learning Inference Queries with Correlative Proxy Models

ZhihuiYangCS 8 Jun 07, 2022
UpliftML: A Python Package for Scalable Uplift Modeling

UpliftML is a Python package for scalable unconstrained and constrained uplift modeling from experimental data. To accommodate working with big data, the package uses PySpark and H2O models as base l

Booking.com 254 Dec 31, 2022
Python based GBDT implementation

Py-boost: a research tool for exploring GBDTs Modern gradient boosting toolkits are very complex and are written in low-level programming languages. A

Sberbank AI Lab 20 Sep 21, 2022
fastFM: A Library for Factorization Machines

Citing fastFM The library fastFM is an academic project. The time and resources spent developing fastFM are therefore justified by the number of citat

1k Dec 24, 2022
Gaussian Process Optimization using GPy

End of maintenance for GPyOpt Dear GPyOpt community! We would like to acknowledge the obvious. The core team of GPyOpt has moved on, and over the past

Sheffield Machine Learning Software 847 Dec 19, 2022
XGBoost-Ray is a distributed backend for XGBoost, built on top of distributed computing framework Ray.

XGBoost-Ray is a distributed backend for XGBoost, built on top of distributed computing framework Ray.

92 Dec 14, 2022
A high performance and generic framework for distributed DNN training

BytePS BytePS is a high performance and general distributed training framework. It supports TensorFlow, Keras, PyTorch, and MXNet, and can run on eith

Bytedance Inc. 3.3k Dec 28, 2022
Pandas DataFrames and Series as Interactive Tables in Jupyter

Pandas DataFrames and Series as Interactive Tables in Jupyter Star Turn pandas DataFrames and Series into interactive datatables in both your notebook

Marc Wouts 364 Jan 04, 2023
Lightning ⚡️ fast forecasting with statistical and econometric models.

Nixtla Statistical ⚡️ Forecast Lightning fast forecasting with statistical and econometric models StatsForecast offers a collection of widely used uni

Nixtla 2.1k Dec 29, 2022
Pydantic based mock data generation

This library offers powerful mock data generation capabilities for pydantic based models. It can also be used with other libraries that use pydantic as a foundation, for example SQLModel, Beanie and

Na'aman Hirschfeld 396 Dec 28, 2022
Factorization machines in python

Factorization Machines in Python This is a python implementation of Factorization Machines [1]. This uses stochastic gradient descent with adaptive re

Corey Lynch 892 Jan 03, 2023
A Python-based application demonstrating various search algorithms, namely Depth-First Search (DFS), Breadth-First Search (BFS), and A* Search (Manhattan Distance Heuristic)

A Python-based application demonstrating various search algorithms, namely Depth-First Search (DFS), Breadth-First Search (BFS), and the A* Search (using the Manhattan Distance Heuristic)

17 Aug 14, 2022
Python implementation of the rulefit algorithm

RuleFit Implementation of a rule based prediction algorithm based on the rulefit algorithm from Friedman and Popescu (PDF) The algorithm can be used f

Christoph Molnar 326 Jan 02, 2023
A data preprocessing and feature engineering script for a machine learning pipeline is prepared.

FEATURE ENGINEERING Business Problem: A data preprocessing and feature engineering script for a machine learning pipeline needs to be prepared. It is

Pinar Oner 7 Dec 18, 2021
Ml based project which uses regression technique to predict the price.

Price-Predictor Ml based project which uses regression technique to predict the price. I have used various regression models and finds the model with

Garvit Verma 1 Jul 09, 2022
A simple python program that draws a tree for incrementing values using the Collatz Conjecture.

Collatz Conjecture A simple python program that draws a tree for incrementing values using the Collatz Conjecture. Values which can be edited: Length

davidgasinski 1 Oct 28, 2021
XManager: A framework for managing machine learning experiments 🧑‍🔬

XManager is a platform for packaging, running and keeping track of machine learning experiments. It currently enables one to launch experiments locally or on Google Cloud Platform (GCP). Interaction

DeepMind 620 Dec 27, 2022