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 |
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
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")
If you use PredictMD in research, please cite the software using the following DOI:
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
The PredictMD documentation contains useful information, including instructions for use, example code, and a description of PredictMD's internals.
- 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
If you would like to contribute to the PredictMD source code, please read the instructions in CONTRIBUTING.md.
- 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.