mOWL: A machine learning library with ontologies


Keywords
machine-learning, ontologies
License
BSD-3-Clause
Install
pip install mowl-borg==0.3.0

Documentation

mOWL: Machine Learning Library with Ontologies

mOWL is a library that provides different machine learning methods in which ontologies are used as background knowledge. mOWL is developed mainly in Python, but we have integrated the functionalities of OWLAPI, which is written in Java, for which we use JPype to bind Python with the Java Virtual Machine (JVM).

Table of contents

Installation

System dependencies

  • JDK version >= 11
  • Python version: 3.8, 3.9, 3.10, 3.11
  • Conda version >= 4.x.x

Python requirements

  • Gensim >= 4.x.x
  • PyTorch >= 1.12.x
  • PyKEEN >= 1.10.1

Install from PyPi

pip install mowl-borg

Build from source

Installation can be done with the following commands:

git clone https://github.com/bio-ontology-research-group/mowl.git

cd mowl

conda env create -f envs/environment_3_8.yml
conda activate mowl

./build_jars.sh

python setup.py install

The line ./build_jars.sh will generate the necessary jar files to bind Python with the code that runs in the JVM. After building, a .tar.gz file will be generated under dist and can be used to install mOWL.

List of contributors

License

This software library is distributed under the BSD-3-Clause license

Documentation

Full documentation and API reference can be found in our ReadTheDocs website.

ChangeLog

ChangeLog is available in our changelog file and also in the release section.

Citation

If you used mOWL in your work, please consider citing this article:

@article{10.1093/bioinformatics/btac811,
    author = {Zhapa-Camacho, Fernando and Kulmanov, Maxat and Hoehndorf, Robert},
    title = "{mOWL: Python library for machine learning with biomedical ontologies}",
    journal = {Bioinformatics},
    year = {2022},
    month = {12},
    issn = {1367-4803},
    doi = {10.1093/bioinformatics/btac811},
    url = {https://doi.org/10.1093/bioinformatics/btac811},
    note = {btac811},
    eprint = {https://academic.oup.com/bioinformatics/advance-article-pdf/doi/10.1093/bioinformatics/btac811/48438324/btac811.pdf},
}