Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/JuliaAI/MLJModels.jl
Home of the MLJ model registry and tools for model queries and mode code loading
https://github.com/JuliaAI/MLJModels.jl
julia machine-learning mlj
Last synced: 12 days ago
JSON representation
Home of the MLJ model registry and tools for model queries and mode code loading
- Host: GitHub
- URL: https://github.com/JuliaAI/MLJModels.jl
- Owner: JuliaAI
- License: mit
- Created: 2019-01-31T22:22:30.000Z (almost 6 years ago)
- Default Branch: dev
- Last Pushed: 2024-05-01T11:19:18.000Z (6 months ago)
- Last Synced: 2024-05-02T01:23:19.017Z (6 months ago)
- Topics: julia, machine-learning, mlj
- Language: Julia
- Homepage:
- Size: 1.75 MB
- Stars: 77
- Watchers: 9
- Forks: 27
- Open Issues: 33
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# MLJModels
[![Build Status](https://github.com/JuliaAI/MLJModels.jl/workflows/CI/badge.svg)](https://github.com/JuliaAI/MLJModels.jl/actions)
Repository of the "built-in" models available for use in the
[MLJ](https://github.com/JuliaAI/MLJ.jl) MLJ machine
learning framework; and the home of the MLJ model registry.For instructions on integrating a new model with MLJ visit
[here](https://JuliaAI.github.io/MLJ.jl/dev/adding_models_for_general_use/)### Contents
- [Who is this repo for?](#who-is-this-repo-for)
- [What is provided here?](#what-is-provided-here)
- [Instructions for updating the MLJ model registry](#instructions-for-updating-the-mlj-model-registry)## Who is this repo for?
General users of the MLJ machine learning platform should refer to
[MLJ home page](https://JuliaAI.github.io/MLJ.jl/dev/)
for usage and installation instructions. MLJModels is a dependency of
MLJ that the general user can ignore.This repository is for developers wishing to
[register](#instructions-for-updating-the-mlj-model-registry) new MLJ
model interfaces, whether they be:- implemented **natively** in a
package providing the core machine learning algorithm, as in
[`EvoTrees.jl`](https://github.com/Evovest/EvoTrees.jl/blob/master/src/MLJ.jl); or
- implemented in a separate **interface package**, such as
[MLJDecisionTreeInterface.jl](https://github.com/JuliaAI/MLJDecisionTreeInterface.jl).It also a place for developers to add models (mostly transformers)
such as `OneHotEncoder`, that are exported for "built-in" use in
MLJ. (In the future these models may live in a separate package.)To list *all* model interfaces currently registered, do `using MLJ` or
`using MLJModels` and run:- `localmodels()` to list built-in models (updated when external models are loaded with `@load`)
- `models()` to list all registered models, or see [this list](/src/registry/Models.toml).
Recall that an interface is loaded from within MLJ, together with the
package providing the underlying algorithm, using the syntax `@load
RidgeRegressor pkg=GLM`, where the `pkg` keyword is only necessary in
ambiguous cases.## What is provided here?
MLJModels contains:
- transformers to be pre-loaded into MLJ, located at
[/src/builtins](/src/builtins), such as `OneHotEncoder`
and `ConstantClassifier`.- the MLJ [model registry](src/registry/Metadata.toml), listing all
models that can be called from MLJ using `@load`. Package developers
can register new models by implementing the MLJ interface in their
package and following [these
instructions](https://JuliaAI.github.io/MLJ.jl/dev/adding_models_for_general_use/).
## Instructions for updating the MLJ model registry
Generally model registration is performed by administrators. If you
have an interface you would like registered, open an issue
[here](https://github.com/JuliaAI/MLJ.jl/issues).**Administrator instructions.** These are given in the
`MLJModels.@update` document string. After registering the model, make a PR to MLJ
updating [this dictionary of model descriptors](https://github.com/JuliaAI/MLJ.jl/blob/dev/docs/ModelDescriptors.toml)
to ensure the new models appear in the right places in MLJ's [Model Browser](https://JuliaAI.github.io/MLJ.jl/dev/model_browser/#Model-Browser)