Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
a503600
Add GCMF model family (GCMF, PGCMF, RGCMF, PRGCMF)
PascalIversen Jun 23, 2026
aa6e5a0
GCMF: drop vendored resources, neutralize naming/docstrings, add rela…
PascalIversen Jul 16, 2026
8f3fdf4
Merge remote-tracking branch 'origin/development' into feat/gcmf-geom…
PascalIversen Jul 16, 2026
7be6f22
GCMF: cast base-graph fallback to Tensor to satisfy mypy
PascalIversen Jul 16, 2026
e57fe71
GCMF: fail loud on missing relations instead of falling back
PascalIversen Jul 17, 2026
c3ba266
GCMF: test against the real drug relations from the meta bundle
PascalIversen Aug 5, 2026
fd75612
GCMF: exercise the real cell relations too, and guard their gene lists
PascalIversen Aug 5, 2026
d835a99
GCMF: join drug relations on pubchem_id instead of matching drug names
PascalIversen Aug 5, 2026
1a46b19
GCMF: make the Kendall CNV similarity independent of the cohort
PascalIversen Aug 5, 2026
5633025
GCMF: document the ValueError raised for a relation table with no fea…
PascalIversen Aug 5, 2026
e5a6865
GCMF: train the smoke test on the measured TOYv1 responses, not rando…
PascalIversen Aug 5, 2026
c883079
Label the GCMF family as new models instead of published ones
PascalIversen Aug 6, 2026
a98f4d1
Run the GCMF family through the global model pipeline test
PascalIversen Aug 6, 2026
7dc88d9
Build RGCMF cell graphs from the features passed to train so the rand…
PascalIversen Aug 6, 2026
43d5f18
Compute Kendall similarity from contingency tables and drop the on-di…
PascalIversen Aug 7, 2026
5894f7b
Rephrase GCMF comments to state current invariants instead of past ch…
PascalIversen Aug 7, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions docs/drevalpy.models.GCMF.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
GCMF
============================

GCMF family (GCMF, RGCMF, PGCMF, PRGCMF)
----------------------------------------

.. automodule:: drevalpy.models.GCMF.gcmf
:members:
:undoc-members:
:show-inheritance:
1 change: 1 addition & 0 deletions docs/drevalpy.models.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ Implemented models

drevalpy.models.DIPK
drevalpy.models.DrugGNN
drevalpy.models.GCMF
drevalpy.models.MOLIR
drevalpy.models.PharmaFormer
drevalpy.models.Precily
Expand Down
11 changes: 9 additions & 2 deletions docs/usage.rst
Original file line number Diff line number Diff line change
Expand Up @@ -248,7 +248,7 @@ needing separate model classes. By default they use gene expression and fingerpr
See the sklearn model :ref:`flexible-inputs` or the SimpleNeuralNetwork :ref:`flexible-inputs-simplenn` for details.

+---------------------------------+----------------------------+--------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Model Name | Baseline / Published Model | Multi-Drug Model / Single-Drug Model | Description |
| Model Name | Baseline / Published / New | Multi-Drug Model / Single-Drug Model | Description |
+=================================+============================+======================================+============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+
| NaivePredictor | Baseline Method | Multi-Drug Model | Most simple method. Predicts the mean response of all drugs in the training set. |
+---------------------------------+----------------------------+--------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
Expand Down Expand Up @@ -302,7 +302,14 @@ See the sklearn model :ref:`flexible-inputs` or the SimpleNeuralNetwork :ref:`fl
+---------------------------------+----------------------------+--------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Precily | Published Model | Multi-Drug Model | `Precily <https://doi.org/10.1038/s41467-022-33291-z>`_ from Chawla et al. Uses GSVA pathway-activity scores with SMILESVec drug embeddings. Features are concatenated and passed through multiple linear layers with ReLU and Dropout. |
+---------------------------------+----------------------------+--------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

| GCMF | New Model | Multi-Drug Model | Graph-convolutional matrix factorization. Predicts the response matrix as a dot product of cell-line and drug latent factors that are learned end-to-end by graph convolutions over a k-NN gene-expression similarity graph (cell lines) and a Morgan-fingerprint Tanimoto graph (drugs); each convolution smooths a node's embedding over its graph neighbours. Adds per-cell/per-drug biases and an optional MLP interaction head. |
+---------------------------------+----------------------------+--------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| RGCMF | New Model | Multi-Drug Model | Relational, multi-graph GCMF: several similarity or prior-knowledge graphs per side (multi-omics cell graphs; pathway and bioassay drug relations) are fused by a relational graph convolution. Strongest single variant on leave-cell-out in our experiments. |
+---------------------------------+----------------------------+--------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| PGCMF | New Model | Multi-Drug Model | Probabilistic GCMF with a heteroscedastic Gaussian negative-log-likelihood head that emits a calibrated per-prediction aleatoric uncertainty; point accuracy on par with the deterministic GCMF. |
+---------------------------------+----------------------------+--------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| PRGCMF | New Model | Multi-Drug Model | Probabilistic RGCMF: the relational variant combined with the heteroscedastic Gaussian-NLL uncertainty head. |
+---------------------------------+----------------------------+--------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

Available Datasets
------------------
Expand Down
5 changes: 5 additions & 0 deletions drevalpy/models/GCMF/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
"""Module for the GCMF (Graph Convolutional Matrix Factorization) model."""

from .gcmf import GCMF, PGCMF, PRGCMF, RGCMF

__all__ = ["GCMF", "PGCMF", "RGCMF", "PRGCMF"]
Loading
Loading