Type annotation is not necessary in the code but it makes the code readable. Type inference is the process of identifying the types of the arguments to dispatch the right method. The multiple dispatch Julia feature make programs more efficient.
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 machine learning models written in Julia and other languages. MLJ is released under the MIT licensed and sponsored by the Alan Turing Institute.
The functionality of MLJ is distributed over a number of repositories illustrated in the dependency chart below.
MLJ * MLJBase * MLJModelInterface * MLJModels * MLJTuning * MLJLinearModels * MLJFlux * MLJTutorials * MLJScientificTypes * ScientificTypes
Dependency chart for MLJ repositories. Repositories with dashed connections do not currently exist but are planned/proposed.