https://github.com/juliaai/learnapi.jl
A Julia interface for training and applying models in machine learning and statistics
https://github.com/juliaai/learnapi.jl
machine-learning-api
Last synced: 3 months ago
JSON representation
A Julia interface for training and applying models in machine learning and statistics
- Host: GitHub
- URL: https://github.com/juliaai/learnapi.jl
- Owner: JuliaAI
- License: mit
- Created: 2022-07-27T23:29:43.000Z (almost 3 years ago)
- Default Branch: dev
- Last Pushed: 2024-10-30T05:47:38.000Z (8 months ago)
- Last Synced: 2024-10-30T08:39:14.634Z (8 months ago)
- Topics: machine-learning-api
- Language: Julia
- Homepage:
- Size: 2.25 MB
- Stars: 34
- Watchers: 4
- Forks: 2
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Roadmap: ROADMAP.md
Awesome Lists containing this project
README
# LearnAPI.jl
A base Julia interface for machine learning and statistics
[](ROADMAP.md)
[](https://github.com/JuliaAI/LearnAPI.jl/actions)
[](https://codecov.io/gh/JuliaAI/LearnAPI.jl?branch=dev)
[](https://juliaai.github.io/LearnAPI.jl/dev/)
[](https://juliaai.github.io/LearnAPI.jl/stable/)New contributions welcome. See the [road map](ROADMAP.md).
## Synopsis
LearnAPI.jl provides for variations and elaborations on the following basic pattern in machine
learning and statistics:```julia
model = fit(learner, data)
predict(model, newdata)
```Here `learner` specifies the configuration the algorithm (the hyperparameters) while
`model` stores learned parameters and any byproducts of algorithm execution.LearnAPI.jl is mostly method stubs and lots of documentation. It does not provide
meta-algorithms, such as cross-validation, hyperparameter optimization, or model composition, but does aim to
support such algorithms.## Related packages
- [MLCore.jl](https://github.com/JuliaML/MLCore.jl): The default sub-sampling API (`getobs`/`numbobs`) for LearnAPI.jl implementations, which supports tables and arrays.
- [LearnTestAPI.jl](https://github.com/JuliaAI/LearnTestAPI.jl): Package to test implementations of LearnAPI.jl (but documented here)
- [LearnDataFrontEnds.jl](https://github.com/JuliaAI/LearnDataFrontEnds.jl): For including flexible, user-friendly, data front ends for LearnAPI.jl implementations ([docs](https://juliaai.github.io/LearnDataFrontEnds.jl/stable/))
- [StatisticalMeasures.jl](https://github.com/JuliaAI/StatisticalMeasures.jl): Package providing metrics, compatible with LearnAPI.jl
- [StatsModels.jl](https://github.com/JuliaStats/StatsModels.jl): Provides the R-style formula implementation of data preprocessing handled by [LearnDataFrontEnds.jl](https://github.com/JuliaAI/LearnDataFrontEnds.jl)
### Selected packages providing alternative API's
The following alphabetical list of packages provide public base API's. Some provide
additional functionality. PR's to add missing items welcome.- [AutoMLPipeline.jl](https://github.com/IBM/AutoMLPipeline.jl)
- [BetaML.jl](https://github.com/sylvaticus/BetaML.jl)
- [FastAI.jl](https://github.com/FluxML/FastAI.jl) (focused on deep learning)
- [LearnBase.jl](https://github.com/JuliaML/LearnBase.jl) (now archived but of historical interest)
- [MLJModelInterface.jl](https://github.com/JuliaAI/MLJModelInterface.jl)
- [MLUtils.jl](https://github.com/JuliaML/MLUtils.jl) (more than a base API, focused on deep learning)
- [ScikitLearn.jl](https://github.com/cstjean/ScikitLearn.jl) (an API in addition to being a wrapper for [scikit-learn](https://scikit-learn.org/stable/))
- [StatsAPI.jl](https://github.com/JuliaStats/StatsAPI.jl/tree/main) (specialized to needs of traditional statistical models)
## Credits
Created by Anthony Blaom, in cooperation with Cameron Bieganek and other [members of the
Julia
community](https://discourse.julialang.org/t/ann-learnapi-jl-proposal-for-a-basement-level-machine-learning-api/93048).