mml-core

Medical Meta Learner - Leveraging knowledge from previous tasks

https://github.com/imsy-dkfz/mml

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: ieee.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.5%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

Medical Meta Learner - Leveraging knowledge from previous tasks

Basic Info
  • Host: GitHub
  • Owner: IMSY-DKFZ
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 1.73 MB
Statistics
  • Stars: 3
  • Watchers: 3
  • Forks: 1
  • Open Issues: 3
  • Releases: 0
Created over 1 year ago · Last pushed 7 months ago
Metadata Files
Readme Changelog Contributing License Citation

README.md

# Medical Meta Learner ![](https://raw.githubusercontent.com/IMSY-DKFZ/mml/main/docs/source/_static/mml_logo.png) [![docs status](https://readthedocs.org/projects/mml/badge/?version=latest)](https://mml.readthedocs.io/en/latest/) ![CI status](https://github.com/IMSY-DKFZ/mml/actions/workflows/full-CI.yml/badge.svg) [![pypi Badge](https://img.shields.io/pypi/v/mml-core)](https://pypi.org/project/mml-core/) [![license](https://img.shields.io/badge/License-MIT-green.svg?labelColor=gray)](https://github.com/ashleve/lightning-hydra-template#license)
[![Python](https://img.shields.io/pypi/pyversions/mml-core.svg)](https://pypi.org/project/mml-core) [![pytorch](https://img.shields.io/badge/PyTorch_2.0+-ee4c2c?logo=pytorch&logoColor=white)](https://pytorch.org/get-started/locally/) [![lightning](https://img.shields.io/badge/-Lightning_2.0+-792ee5?logo=pytorchlightning&logoColor=white)](https://pytorchlightning.ai/) [![hydra](https://img.shields.io/badge/Config-Hydra_1.3-89b8cd)](https://hydra.cc/)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff) [![isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336)](https://pycqa.github.io/isort/)


About

mml is a research-oriented Python package which aims to provide an easy and scalable way of performing deep learning on multiple image tasks (see Meta-Learning).

It features: * a clear methodology to store, load, refer, modify and combine RGB image datasets across task types (classification, segmentation, ...) * a highly configurable CLI for the full deep learning pipeline * a dedicated file management system, capable of continuing aborted experiments, reuse previous results and parallelize runs * an api for interactive pre- and post-experiment exploration * smooth integration of latest deep learning libraries (lightning, hydra, optuna, ...) * easy expandability via plugins or directly hooking into runtime objects via scripts or notebooks * good documentation, broad testing and ambitious goals

Please read the official documentation page for more. Main author: Patrick Godau, Deutsches Krebsforschungszentrum (DKFZ) Heidelberg

Division of Intelligent Medical Systems

Contact: patrick.godau@dkfz-heidelberg.de

Setup

Create a virtual environment (e.g. using conda) as follows:

commandline conda create -n mml python=3.10 conda activate mml

Now install the core of mml via

commandline pip install mml-core

plugins

Plugins extend mml functionality. See here for a list of available plugins. They are installable exactly like the previous pip command, just replace mml-core with one of the plugins to install. Nevertheless, some plugins require additional setup steps. Check with the README of the specific plugin for details.

local environment variables

mml relies on a mml.env file for relevant environment variables. There are multiple possibilities to locate this:

  • within your project folder (e.g. for separation of mml installations),
  • within your home folder or similar (e.g. for shared mml configs across installations)

You can use mml-env-setup from the command line at the location you want to place your mml.env file:

commandline cd /path/to/your/config/location mml-env-setup

Now you only need to pinpoint mml to your mml.env file. This can be done via an environment variable MML_ENV_PATH that needs to be present in the environment before starting MML. If you use conda this simplifies to

```commandline conda env config vars set MMLENVPATH=/path/to/your/config/location/mml.env

if your file is located at the current working directory, you may instead use

pwd | conda env config vars set MMLENVPATH=$(</dev/stdin)/mml.env

either way this requires re-activation of environment

conda activate mml

test if the path is set

echo $MMLENVPATH ```

You should see your path printed - if yes, continue providing the actual variables:

  • open mml.env in your preferred editor
  • set MML_DATA_PATH to the path you want to store downloaded or generated datasets later on
  • set MML_RESULTS_PATH to be the location you want to save your experiments in later on (plots, trained network parameters, caluclated distances, etc.).
  • set MML_LOCAL_WORKERS to be the number of usable (virtual) cpu cores
  • all other variables are optional for now

Confirm installation

You can confirm that mml was installed successful via running mml in the terminal, which should result in a display of an MML logo.

License

This library is licensed under the permissive MIT license, which is fully compatible with both academic and commercial applications.

Copyright German Cancer Research Center (DKFZ) and contributors. Please make sure that your usage of this code is in compliance with its license. This project is/was supported by

If you use this code in a research paper, please cite:

@InProceedings{Godau2021TaskF, author="Godau, Patrick and Maier-Hein, Lena", editor="de Bruijne, Marleen and Cattin, Philippe C. and Cotin, St{\'e}phane and Padoy, Nicolas and Speidel, Stefanie and Zheng, Yefeng and Essert, Caroline", title="Task Fingerprinting for Meta Learning inBiomedical Image Analysis", booktitle="Medical Image Computing and Computer Assisted Intervention -- MICCAI 2021", year="2021", publisher="Springer International Publishing", pages="436--446" }

Owner

  • Name: IMSY
  • Login: IMSY-DKFZ
  • Kind: organization
  • Location: Heidelberg, Germany

Division of Intelligent Medical Systems

Citation (CITATION.cff)

cff-version: 1.2.0
title: Medical Meta Learner
message: If you use the mml framework, please also consider citing our corresponding publications.
type: software
authors:
  - given-names: Patrick
    family-names: Godau
    email: patrick.godau@dkfz-heidelberg.de
    affiliation: German Cancer Research Center (DKFZ)
    orcid: 'https://orcid.org/0000-0002-0365-7265'
identifiers:
  - type: doi
    value: 10.1007/978-3-030-87202-1_42
    description: Task fingerprinting
repository-code: "https://github.com/IMSY-DKFZ/mml"
url: 'https://fill-in-the-documentation.de'
abstract: >-
  Code for generating task fingerprints, working with
  various heterogeneous datasets and integration of timm,
  pytorch lightning and hydra libraries.
keywords:
  - Meta Learning
  - task fingerprinting
license: MIT
version: 1.0.4
date-released: '2025-05-02'

GitHub Events

Total
  • Create event: 25
  • Issues event: 3
  • Watch event: 3
  • Delete event: 12
  • Member event: 1
  • Issue comment event: 4
  • Public event: 1
  • Push event: 45
  • Pull request event: 25
  • Fork event: 1
Last Year
  • Create event: 25
  • Issues event: 3
  • Watch event: 3
  • Delete event: 12
  • Member event: 1
  • Issue comment event: 4
  • Public event: 1
  • Push event: 45
  • Pull request event: 25
  • Fork event: 1

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 2
  • Total pull requests: 30
  • Average time to close issues: about 1 month
  • Average time to close pull requests: about 1 month
  • Total issue authors: 2
  • Total pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.27
  • Merged pull requests: 18
  • Bot issues: 0
  • Bot pull requests: 17
Past Year
  • Issues: 2
  • Pull requests: 30
  • Average time to close issues: about 1 month
  • Average time to close pull requests: about 1 month
  • Issue authors: 2
  • Pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.27
  • Merged pull requests: 18
  • Bot issues: 0
  • Bot pull requests: 17
Top Authors
Issue Authors
  • DboyM (1)
  • godaup (1)
Pull Request Authors
  • dependabot[bot] (17)
  • godaup (15)
Top Labels
Issue Labels
bug (2)
Pull Request Labels
plugin (24) documentation (23) dependencies (17) github_actions (9) python (8)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 43 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 5
  • Total maintainers: 1
pypi.org: mml-core

This is the MML toolkit, targeting lifelong/continual/meta learning in Surgical Data Science.

  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 43 Last month
Rankings
Dependent packages count: 9.8%
Average: 32.6%
Dependent repos count: 55.3%
Maintainers (1)
Last synced: 7 months ago

Dependencies

.github/workflows/full-CI.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
  • actions/upload-artifact v4 composite
  • codecov/codecov-action v5 composite
  • docker/build-push-action 3b5e8027fcad23fda98b2e3ac259d8d67585f671 composite
.github/workflows/label.yml actions
  • actions/labeler v4 composite
.github/workflows/min-test.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v3 composite
.github/workflows/test-publish.yml actions
  • actions/checkout v4 composite
  • actions/download-artifact v4 composite
  • actions/setup-python v5 composite
  • actions/upload-artifact v4 composite
  • pypa/gh-action-pypi-publish release/v1 composite
Dockerfile docker
  • nvidia/cuda 11.7.1-base-ubuntu22.04 build
plugins/_template/pyproject.toml pypi
plugins/dimensionality/pyproject.toml pypi
plugins/drive/pyproject.toml pypi
plugins/lsf/pyproject.toml pypi
plugins/similarity/pyproject.toml pypi
plugins/sql/pyproject.toml pypi
plugins/suggest/pyproject.toml pypi
plugins/tags/pyproject.toml pypi
pyproject.toml pypi
.github/workflows/publish.yml actions
  • actions/checkout v4 composite
  • actions/download-artifact v4 composite
  • actions/setup-python v5 composite
  • actions/upload-artifact v4 composite
  • pypa/gh-action-pypi-publish release/v1 composite
plugins/tasks/pyproject.toml pypi