PlantMetWiki Full Dataset: 421-species enzyme-reaction graph with node embeddings and link-prediction splits
收藏资源简介:
The complete PlantMetWiki plant-metabolism knowledge graph (424 plant species), prepared for heterogeneous-graph link prediction. Task: predict (Protein, catalyzes, Interaction) edges ("this enzyme catalyses this reaction"), where the destination is always a Conversion-subtype node (the reaction itself). Three complementary train/val/test split strategies are included: a random 80/10/10 split, an organism-held-out split (tests cross-species generalisation), and a pathway-held-out split (tests generalisation to unseen biological contexts). Includes pre-computed node embeddings, already attached to the PyTorch Geometric HeteroData object as node features: MAP4 binary fingerprints for metabolites, ESM-C (esmc_300m) embeddings for proteins, and PlantCaduceus (l32) DNA embeddings for gene products. See README.md inside the archive for the full file list, coverage numbers, and loading code, and LICENSE.md for provenance of each embedding's source sequences. v3 changes (graph redesign, see notebooks/01_explore_graph.ipynb §9 and scripts/redesign_graph_v3.py): (1) generic DataNode/External nodes (42,493 + 70 of them) eliminated -- reclassified by ID-pattern heuristic into Metabolite/Protein/GeneProduct where possible (merged into an existing canonical node by suffix match, retyped in place otherwise), dropped if unclassifiable; (2) Inhibition/Stimulation/ComplexBinding-subtype Interaction nodes dropped entirely (out of scope for the catalysis-prediction task); (3) the reified TranscriptionTranslation interaction node collapsed into a direct, persisted (GeneProduct, encodes, Protein) edge (2,762 edges) -- the same treatment Catalysis already got in v2. Node counts after: Interaction 84,470, Metabolite 17,476, Protein 13,682, GeneProduct 6,480, Pathway 2,478, Organism 424 (no more DataNode/External). The organism-held-out split (splits_taxa.pt) was rebuilt again: widening the Protein pool diluted every organism's embedding-coverage score (the v2 fix's 50% minimum-coverage gate would have produced an empty test set), so the gate was recalibrated to 10%, giving 11 val / 69 test organisms. v2 changes (carried forward): the target edge's destination collapses through the reified Catalysis node directly to the Conversion node it controls, and splits_taxa.pt's organism selection was made embedding-coverage-aware (previously blind to it, landing held-out organisms at near-zero real signal). This version also bundles training/fulldata_baseline_common.py and training/fulldata_baseline_train.py (the HeteroConv-SAGE baseline that uses this target edge) as standalone reference code. See the README's Changelog section inside the archive for full details. This is the full-graph counterpart of the 2-species Learnathon subset (10.5281/zenodo.20736061) — same task and file format, complete species coverage instead of an A. thaliana / G. max slice.



