Skip to content

bcbi/PredictMD.jl

Repository files navigation

PredictMD - Uniform interface for machine learning in Julia

Zenodo

Documentation (stable) Documentation (development)

PkgEval Continuous integration (CI) Code coverage

PredictMD is a free and open-source Julia package that provides a uniform interface for machine learning.

PredictMD makes it easy to automate machine learning workflows and create reproducible machine learning pipelines.

It is the official machine learning framework of the Brown Center for Biomedical Informatics.

Table of Contents
1. Installation
2. Run the test suite after installing
3. Citing
4. Docker image
5. Documentation
6. Related Repositories
7. Contributing

Installation

PredictMD is registered in the Julia General registry. Therefore, to install PredictMD, simply open Julia and run the following four lines:

import Pkg
Pkg.activate("PredictMDEnvironment"; shared = true)
Pkg.add("PredictMDFull")
import PredictMDFull

Run the test suite after installing

After you install PredictMD, you should run the test suite to make sure that everything is working. You can run the test suite by running the following five lines in Julia:

import Pkg
Pkg.activate("PredictMDEnvironment"; shared = true)
Pkg.test("PredictMDExtra")
Pkg.test("PredictMDFull")
Pkg.test("PredictMD")

Citing

If you use PredictMD in research, please cite the software using the following DOI:

Docker image

Alternatively, you can use the PredictMD Docker image for easy installation. Download and start the container by running the following line:

docker run --name predictmd -it dilumaluthge/predictmd /bin/bash

Once you are inside the container, you can start Julia by running the following line:

julia

In Julia, run the following line to load PredictMD:

import PredictMDFull

You can run the test suite by running the following four lines in Julia:

import Pkg
Pkg.test("PredictMDExtra")
Pkg.test("PredictMDFull")
Pkg.test("PredictMD")

After you have exited the container, you can return to it by running the following line:

docker start -ai predictmd

To delete your container, run the following line:

docker container rm -f predictmd

To also delete the downloaded image, run the following line:

docker image rm -f dilumaluthge/predictmd

Documentation

The PredictMD documentation contains useful information, including instructions for use, example code, and a description of PredictMD's internals.

Related Repositories

  • BCBIRegistry - Julia package registry for the Brown Center for Biomedical Informatics (BCBI)
  • ClassImbalance.jl - Sampling-based methods for correcting for class imbalance in two-category classification problems
  • OfflineRegistry - Generate a custom Julia package registry, mirror, and depot for use on workstations without internet access
  • PredictMD-docker - Docker and Singularity images for PredictMD
  • PredictMD-roadmap - Roadmap for the PredictMD machine learning pipeline
  • PredictMD.jl - Uniform interface for machine learning in Julia
  • PredictMDAPI.jl - Provides the abstract types and generic functions that define the PredictMD application programming interface (API)
  • PredictMDExtra.jl - Install all of the dependencies of PredictMD (but not PredictMD itself)
  • PredictMDFull.jl - Install PredictMD and all of its dependencies
  • PredictMDSanitizer.jl - Remove potentially sensitive data from trained machine learning models

Contributing

If you would like to contribute to the PredictMD source code, please read the instructions in CONTRIBUTING.md.

Acknowledgements

  • This work was supported in part by National Institutes of Health grants U54GM115677, R01LM011963, and R25MH116440. The content is solely the responsibility of the authors and does not necessarily represent the official views of the National Institutes of Health.
  • PredictMD was created by Dilum P. Aluthge and Ishan Sinha.