Quick Start MLHub
See the Platform Guide for getting started in Ubuntu. Then get started with MLHub:
$ pip3 install mlhub
After this completes the ml command should be available. Type ml at the prompt, then enter. If the command is not found you may need to log out and back in again or even reboot. If the command is still not found then try the following to ensure the path is setup properly and then login in again:
$ echo 'PATH=~/.local/bin:$PATH' >> ~/.bashrc
Once you have a working ml command you can configure the command itself and check what packages are available.
$ ml configure
$ ml available
Once working you will be able to run the Hello World example which is the rain model. This uses the free and open source R statistical software package. You’ll need Python3 installed too, but you will probably already have it if you were able to run the pip3 command above.
The TL;DR version is below. Note that you type the command
ml ... and that everything from the
# to the end of the line is ignored (it’s a comment):
$ ml install rain # Install the model named 'rain'. $ ml demo rain # Run the demonstration of the pre-built model. $ ml display rain # Graphical display of pre-built model. $ ml score rain # Interact with the model to predict rain.
The following lists the commands generally available for each package and a brief description of each:
$ ml # Show a usage message. $ ml available # List of pre-buld models on the MLHub. $ ml installed # List of pre-built models installed locally $ ml install rain # Install the pre-built model named 'rain'. $ ml remove rain # Remove locally installed pre-built model. $ ml remove # Remove the local MLHub folder. $ ml readme rain # View background information about the model. $ ml configure rain # Install any required packages. $ ml commands rain # List of commands supported by the model. $ ml demo rain # Run the demonstration of the pre-built model $ ml print rain # Textual summary of the pre-built model. $ ml display rain # Graphical display of pre-built model. $ ml score rain # Interactive model or run model on own data. $ ml train rain # Supply own data and re-fit a model.
Different pre-built model packages will have different system dependencies and these will be installed by the configure command.
Install From MLHub Catalogue
The simplest examples of installing models is to install from the mlhub.ai catalogue. The available packages are listed using the available command. Choose one of the available packages by name and install it. MLHub will know from where to obtain the package.
$ ml install rain
Install Driect from GitHub
We can also install a MLHub package direct from github. In this way a package developer simply adds MLHUB.yaml and the appropriate Python or R scripts to their github repository to turn their repo into a MLHub package. The example below will access https://github.com/gjwgit/rain. Currently only github is supported though contributions (pull requests) to https://github.com/mlhubber/mlhub are welcome to support bitbucket and gitlab and git repositories in general.
$ ml install gjwgit/rain
A git repository may contain multiple MLHub packages, like the Microsoft Recommenders best practice repository at https://github.com/gjwgit/recommenders. In this case we point mlhub to the specific configuration files.
$ ml install gjwgit/recommenders:mlhub/sar.yaml
$ ml readme sar
$ ml install gjwgit/recommenders:mlhub/rbm.yaml
$ ml readme rbm
Commands Auto Completion
The bash shell on Linux supports command line auto-completion which is pretty handy. You can download ml.bash from the MLHub and place the file into /etc/bash_completion.d/ or for later versoins of bash, into ~/.local/share/bash-completion/completions/
$ wget https://mlhub.ai/ml.bash
$ sudo install -m 0644 ml.bash /etc/bash_completion.d/
OR (for bash --version > 4.3)
$ mkdir -p ~/.local/share/bash-completion/completions/
$ mv ml.bash ~/.local/share/bash-completion/completions/
Restart the shell for the auto-completion to take effect. Then type ‘ml ‘ then the beginnings of a command, like ‘a’, and then TAB to auto-complete. Auto-completion also works for model names.