alan-turing-institute / Mlj.jl

Licence: other
A Julia machine learning framework

Programming Languages

julia
2034 projects

Projects that are alternatives of or similar to Mlj.jl

Mlr
Machine Learning in R
Stars: ✭ 1,542 (+57.03%)
Mutual labels:  data-science, statistics, classification, predictive-modeling, stacking, clustering, regression
Machine Learning With Python
Practice and tutorial-style notebooks covering wide variety of machine learning techniques
Stars: ✭ 2,197 (+123.73%)
Mutual labels:  jupyter-notebook, data-science, statistics, classification, clustering, regression
Automlpipeline.jl
A package that makes it trivial to create and evaluate machine learning pipeline architectures.
Stars: ✭ 223 (-77.29%)
Mutual labels:  data-science, classification, pipeline, ensemble-learning, stacking
Uci Ml Api
Simple API for UCI Machine Learning Dataset Repository (search, download, analyze)
Stars: ✭ 190 (-80.65%)
Mutual labels:  data-science, statistics, classification, clustering, regression
Smile
Statistical Machine Intelligence & Learning Engine
Stars: ✭ 5,412 (+451.12%)
Mutual labels:  data-science, statistics, classification, clustering, regression
Lightautoml
LAMA - automatic model creation framework
Stars: ✭ 196 (-80.04%)
Mutual labels:  data-science, classification, pipeline, stacking, regression
Mlbox
MLBox is a powerful Automated Machine Learning python library.
Stars: ✭ 1,199 (+22.1%)
Mutual labels:  data-science, classification, pipeline, stacking, regression
Openml R
R package to interface with OpenML
Stars: ✭ 81 (-91.75%)
Mutual labels:  jupyter-notebook, data-science, statistics, classification, regression
Interactive machine learning
IPython widgets, interactive plots, interactive machine learning
Stars: ✭ 140 (-85.74%)
Mutual labels:  jupyter-notebook, data-science, statistics, classification, regression
Pycaret
An open-source, low-code machine learning library in Python
Stars: ✭ 4,594 (+367.82%)
Mutual labels:  jupyter-notebook, data-science, clustering, regression, classification
Data Science Toolkit
Collection of stats, modeling, and data science tools in Python and R.
Stars: ✭ 169 (-82.79%)
Mutual labels:  data-science, statistics, classification, regression
Neuroflow
Artificial Neural Networks for Scala
Stars: ✭ 105 (-89.31%)
Mutual labels:  data-science, classification, clustering, regression
Tensorflow Book
Accompanying source code for Machine Learning with TensorFlow. Refer to the book for step-by-step explanations.
Stars: ✭ 4,448 (+352.95%)
Mutual labels:  jupyter-notebook, classification, clustering, regression
Orange3
🍊 📊 💡 Orange: Interactive data analysis
Stars: ✭ 3,152 (+220.98%)
Mutual labels:  data-science, classification, clustering, regression
Machine Learning From Scratch
Succinct Machine Learning algorithm implementations from scratch in Python, solving real-world problems (Notebooks and Book). Examples of Logistic Regression, Linear Regression, Decision Trees, K-means clustering, Sentiment Analysis, Recommender Systems, Neural Networks and Reinforcement Learning.
Stars: ✭ 42 (-95.72%)
Mutual labels:  jupyter-notebook, data-science, classification, regression
Stats Maths With Python
General statistics, mathematical programming, and numerical/scientific computing scripts and notebooks in Python
Stars: ✭ 381 (-61.2%)
Mutual labels:  jupyter-notebook, data-science, statistics, clustering
Ml
A high-level machine learning and deep learning library for the PHP language.
Stars: ✭ 1,270 (+29.33%)
Mutual labels:  data-science, classification, clustering, regression
Metriculous
Measure and visualize machine learning model performance without the usual boilerplate.
Stars: ✭ 71 (-92.77%)
Mutual labels:  data-science, statistics, classification, regression
Ml Dl Scripts
The repository provides usefull python scripts for ML and data analysis
Stars: ✭ 119 (-87.88%)
Mutual labels:  jupyter-notebook, statistics, classification, clustering
Dat8
General Assembly's 2015 Data Science course in Washington, DC
Stars: ✭ 1,516 (+54.38%)
Mutual labels:  jupyter-notebook, data-science, ensemble-learning, clustering
MLJ

A Machine Learning Framework for Julia

Build Status #mlj Documentation Binder DOI

New to MLJ? Start here.

Wanting to integrate an existing machine learning model into the MLJ framework? Start here.

The remaining information on this page will be of interest primarily to developers interested in contributing to core packages in the MLJ ecosystem, whose organization is described further below.

MLJ (Machine Learning in Julia) is a toolbox written in Julia providing a common interface and meta-algorithms for selecting, tuning, evaluating, composing and comparing over 150 machine learning models written in Julia and other languages. MLJ is released under the MIT licensed and sponsored by the Alan Turing Institute.


MLJ Universe  •  Known Issues  •  Customizing Behavior  •  Citing MLJ

The MLJ Universe

The functionality of MLJ is distributed over a number of repositories illustrated in the dependency chart below.


Contributing  •  Code Organization  •  Road Map
MLJ  •  MLJBase  •  MLJModelInterface  •  MLJModels  •  MLJTuning  •  MLJLinearModels  •  MLJFlux
MLJTutorials  •  MLJScientificTypes  •  ScientificTypes


Dependency Chart

Dependency chart for MLJ repositories. Repositories with dashed connections do not currently exist but are planned/proposed.

Known Issues

ScikitLearn/MKL issue

For users of Mac OS using Julia 1.3 or higher, using ScikitLearn models can lead to unexpected MKL errors due to an issue not related to MLJ. See this Julia Discourse discussion and this issue for context.

A temporary workaround for this issue is to force the installation of an older version of the OpenSpecFun_jll library. To install an appropriate version, activate your MLJ environment and run

  using Pkg;
  Pkg.add(PackageSpec(url="https://github.com/tlienart/OpenSpecFun_jll.jl"))

Serialization for composite models with component models with custom serialization

See here. Workaround: Instead of XGBoost models (the chief known case) use models from the pure Julia package EvoTrees.

Customizing behavior

To customize behaviour of MLJ you will need to clone the relevant component package (e.g., MLJBase.jl) - or a fork thereof - and modify your local julia environment to use your local clone in place of the official release. For example, you might proceed something like this:

using Pkg
Pkg.activate("my_MLJ_enf", shared=true)
Pkg.develop("path/to/my/local/MLJBase")

To test your local clone, do

Pkg.test("MLJBase")

For more on package management, see https://julialang.github.io/Pkg.jl/v1/ .

Citing MLJ

DOI

@article{Blaom2020,
  doi = {10.21105/joss.02704},
  url = {https://doi.org/10.21105/joss.02704},
  year = {2020},
  publisher = {The Open Journal},
  volume = {5},
  number = {55},
  pages = {2704},
  author = {Anthony D. Blaom and Franz Kiraly and Thibaut Lienart and Yiannis Simillides and Diego Arenas and Sebastian J. Vollmer},
  title = {{MLJ}: A Julia package for composable machine learning},
  journal = {Journal of Open Source Software}
}

Contributors

Core design: A. Blaom, F. Kiraly, S. Vollmer

Active maintainers: A. Blaom, T. Lienart, S. Okon

Active collaborators: D. Arenas, D. Buchaca, J. Hoffimann, S. Okon, J. Samaroo, S. Vollmer

Past collaborators: D. Aluthge, E. Barp, G. Bohner, M. K. Borregaard, V. Churavy, H. Devereux, M. Giordano, M. Innes, F. Kiraly, M. Nook, Z. Nugent, P. Oleśkiewicz, A. Shridar, Y. Simillides, A. Sengupta, A. Stechemesser.

License

MLJ is supported by the Alan Turing Institute and released under the MIT "Expat" License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].