Knowledge-aware machine learning from multiple sources in Python
Project description
PyKale
Getting Started | Documentation | Contributing | Discussions
PyKale is a machine learning library that leverages knowledge from multiple sources for accurate and interpretable prediction. It supports graphs, images, and videos now. It is based on PyTorch and several other libraries but differs from existing ones by adopting a unified pipeline-based APIs design and incorporating key recent developments. See the Trello board for an overview.
PyKale also aims to facilitate interdisciplinary research on knowledge-aware machine learning for graphs, images, and videos in computer vision, graph analysis, and medical imaging applications. Key machine learning areas of interests include dimensionality reduction, deep learning, multimodal learning, and transfer learning.
Pipeline-based modules (core, generic, and reusable)
loaddata
load data from disk or online resources as in inputprepdata
preprocess data to fit machine learning modules below (transforms)embed
embed data in a new space to learn a new representation (feature extraction/selection)predict
predict a desired outputevaluate
evaluate the performance using some metricsinterpret
interpret the features and outputs via post-prediction analysis mainly via visualisationpipeline
specify a machine learning workflow by combining several other modules
Dataset-specific modules
examples
: Real-application on particular datasets.
Installation
Requirements:
- Python >= 3.6
- PyTorch >= 1.7
Install PyKale using pip
or conda
:
pip install pykale
conda install -c pykale pykale
You need to first install PyTorch Lightning for kale.embed.pipeline
and PyTorch Geometric to work on graphs.
To upgrade to the latest (unstable) version, run
pip install --upgrade git+https://github.com/pykale/pykale.git
To run the unit tests:
python -m unittest
Examples, Tutorials, and Discussions
See our numerous examples (and tutorials) on how to perform prediction tasks in PyKale.
Ask and answer questions over on PyKale's GitHub Discussions tab.
Contributing
PyKale is under active development. Please star and fork PyKale to follow the latest update. Welcome to contribute and join / contact us via email. The participation in this open source project is subject to Code of Conduct.
The Team
PyKale is primarily maintained by a group of researchers at the University of Sheffield: Haiping Lu, Raivo Koot, Xianyuan Liu, Shuo Zhou, and Peizhen Bai.
We would like to thank our other contributors including (but not limited to) David Jones, and Will Furnass.
Citation
@Misc{pykale2021,
author = {Haiping Lu and Raivo Koot and Xianyuan Liu and Shuo Zhou and Peizhen Bai},
title = {{PyKale}: Knowledge-aware machine learning from multiple sources in Python},
howpublished = {\url{https://github.com/pykale/pykale}},
year = {2021}
}
Acknowledgements
The development of PyKale is partially supported by the following project(s).
- Wellcome Trust Innovator Awards: Digital Technologies Ref 215799/Z/19/Z "Developing a Machine Learning Tool to Improve Prognostic and Treatment Response Assessment on Cardiac MRI Data".
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pykale-0.1.0a1.tar.gz
.
File metadata
- Download URL: pykale-0.1.0a1.tar.gz
- Upload date:
- Size: 86.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4ac624b6616b45dff4b129eb544533345b0cf7e939ba9718e335b3fc2330fab |
|
MD5 | e8b170ba2deefe15bc38f2de4220079f |
|
BLAKE2b-256 | 20a68047dcb0a6e09aa20c0533a7aa78a5ffca3a4ca9916f7abd44d5631c8d2a |
File details
Details for the file pykale-0.1.0a1-py2.py3-none-any.whl
.
File metadata
- Download URL: pykale-0.1.0a1-py2.py3-none-any.whl
- Upload date:
- Size: 106.2 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c5a2562de9922fde38fd88901285fec8891e6efe10eb1873dfe4cdf962e018ea |
|
MD5 | ec23389b57cc27ab6044c5631e97a35b |
|
BLAKE2b-256 | 29bcadd57166cb5dee2365fe0bf470747d1693e94d0e41e443370db17b3e6f85 |