Skip to main content

Epigenomic diagnosis of acute leukemia (research use only)

Project description

ALMA Classifier

DOI Nat Commun Downloads

Epigenomic diagnosis of acute leukemia and prognosis of AML.

Models

  1. ALMA Subtype: Classifies 27 subtypes of acute leukemia according to WHO 2022 + healthy control
  2. AML Epigenomic Risk (v0.1.4 only): Predicts 5-year mortality probability for AML patients
  3. 38CpG AML Signature: Risk stratification using targeted 38 CpG panel

What's New in v0.2.0

  • ALMA Subtype v2:
    • New diagnostic model using autoencoder-transformer architecture
    • Near-perfect accuracy in both methylation arrays and nanopore epigenomes
    • v0.1.4 (from the publication) remains available in pip and docker.

Installation

Docker (recommended)

docker pull fmarchi/alma-classifier:0.2.0

Python 3.11

pip install alma-classifier

Usage

Docker

Run demo:

docker run --rm -v "$(pwd)":/work -w /work fmarchi/alma-classifier:0.2.0 \
  alma-classifier --demo

Run using your data:

# Transfer your input data to current working directory
docker run --rm -v "$(pwd)":/work -w /work fmarchi/alma-classifier:0.2.0 \
  alma-classifier -i /work/your_data.pkl

Python 3.11 (CLI)

Run demo:

alma-classifier --demo

Run using your data:

alma-classifier -i path/to/your_data.pkl

Input Formats

Illumina Methylation450k or EPIC

Prepare a .pkl (or csv.gz) dataset with the following structure:

  • Rows: Samples
  • Columns: CpG sites
  • Values: Beta values (0-1)

Got .idat files? Use SeSAMe first.

Nanopore whole genome sequencing

Follow the standard bedMethyl format with these key columns:

  • Column 1: chrom - Chromosome name
  • Column 2: start_position - 0-based start position
  • Column 4: modified_base_code - Single letter code for modified base
  • Column 11: fraction_modified - Percentage of methylation (0-100)

Got .bam files? Use modkit first:

modkit pileup \
"$bam_file" \
"$bed_file" \
-t $threads \
--combine-strands \
--cpg \
--ignore h \
--ref ref/hg38.fna \
--no-filtering

CLI options

usage: alma-classifier [-h] [-i INPUT_DATA] [-o OUTPUT] [--download-models] [--demo] [--all_probs]

🩸🧬 ALMA Classifier  Epigenomic diagnosis of acute leukemia (research use only) 🧬🩸

options:
  -h, --help            show this help message and exit
  -i INPUT_DATA, --input_data INPUT_DATA
                        Input file: .pkl with β‑values, .csv/.csv.gz with β‑values, or .bed/.bed.gz nanopore file
  -o OUTPUT, --output OUTPUT
                        .csv output (default: alongside input data)
  --download-models     Download model weights from GitHub release
  --demo                Run demo with example dataset
  --all_probs           Include all subtype/class probabilities as separate columns in the output

Output

Results include subtype classification, risk prediction, and confidence scores.

Important limitations

  • The diagnostic model does not currently recognize: AML with Down Syndrome, juvenile myelomonocytic leukemia, transient abnormal myelopoiesis, low-risk MDS, or lymphomas. We need reference methylation data for these patient populations.
  • Follow preprocessing as instructed in "Input Formats" above. Different or erroneous preprocessing may lead to poor performance. This applies to bad wet-lab handling of samples.
  • The models will attempt to work with missing CpGs. Ideally, use Methylation Array 450k,EPIC or WGS Nanopore Seq with >5x coverage. Anything below that may compromise performance.

Citation

Marchi, F., Shastri, V.M., Marrero, R.J. et al. Epigenomic diagnosis and prognosis of Acute Myeloid Leukemia. Nat Commun 16, 6961 (2025). https://doi.org/10.1038/s41467-025-62005-4

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

alma_classifier-0.2.0.tar.gz (29.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

alma_classifier-0.2.0-py3-none-any.whl (31.2 kB view details)

Uploaded Python 3

File details

Details for the file alma_classifier-0.2.0.tar.gz.

File metadata

  • Download URL: alma_classifier-0.2.0.tar.gz
  • Upload date:
  • Size: 29.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.8

File hashes

Hashes for alma_classifier-0.2.0.tar.gz
Algorithm Hash digest
SHA256 417bf0a6e2a30ec78ae32ee4d98cff567ce04ae49fe22529352cea216a19a411
MD5 9bbfcaf49a726c1cc9f6aa137f0beeab
BLAKE2b-256 3ab640527c718b1cd3067d7934a5a46bb8c0f4da606792def2388673aafe75d4

See more details on using hashes here.

File details

Details for the file alma_classifier-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for alma_classifier-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aa1ec90680ff54c3fcba53931dd81ed63202830f33c0b44217da69ddb91fb417
MD5 07c6279d1cd70c9e03bf28365ca12d4a
BLAKE2b-256 d4259a6b033a1fa37a58e4a38f5827823805abbbef29a3ea901427097dbc6ebb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page