Atom-JEPA: Joint-Embedding Predictive Architecture for 3D Atomistic Systems
Organizations: Department of Applied Mathematics and Computer Science Technical University of Denmark
Abstract
Large-scale self-supervised pretraining has reshaped modern machine learning, substantially advancing the ability of language and vision models to generalize across downstream tasks. While deep learning has driven considerable progress in modeling atomistic systems in recent years, self-supervised pretraining in this domain has not yet achieved comparable downstream generalization. To address this, we introduce Atom-JEPA, a self-supervised pretraining framework that learns latent representations from unlabeled 3D structures through complementary atom-level and substructure-level objectives inspired by joint-embedding predictive architectures. We pretrain Atom-JEPA on large-scale molecular and crystalline datasets and evaluate its transfer performance by fine-tuning on a diverse set of downstream property prediction tasks. Atom-JEPA achieves state-of-the-art performance on molecular ADMET and quantum-chemical property prediction tasks, and is highly competitive in predicting the physical properties of crystalline materials. These results demonstrate the potential of latent-space predictive pretraining to support broad downstream generalization from structural data alone. Code and pretrained model checkpoints are publicly available at https://github.com/khelverskovp/atom-jepa
Figures & tables
| Biogen (6) | ChEMBL MT (25) | ExpansionRx (9) | |||||
| Model | Best / Indist. | Sum | Best / Indist. | Sum | Best / Indist. | Sum | Total (40) |
| Atom-JEPA 10 conf | 3 / 3 | 6 | 6 / 10 | 16 | 7 / 2 | 9 | 31 |
| Atom-JEPA | 0 / 6 | 6 | 0 / 15 | 15 | 0 / 9 | 9 | 30 |
| CKERMT ( Xue et al., 2026 ) | 0 / 6 | 6 | 11 / 8 | 19 | 1 / 3 | 4 | 29 |
| KERMT * ( Adrian et al., 2025 ) | 1 / 1 † | 2 | 3 / 9 | 12 | 0 / 1 | 1 | 15 † |
| Chemprop ( Graff et al., 2026 ) | 1 / 3 | 4 | 0 / 12 | 12 | 0 / 1 | 1 | 17 |
| Task | ZPVE | |||||||||||
| Units | meV | meV | meV | mD | meV | meV | meV | meV | meV | |||
| No pretraining | ||||||||||||
| MACE ( Batatia et al., 2022 ) | 38 | 42 | 22 | 19 | 15 | 21 | 5.5 | 4.7 | 210 | 4.1 | 4.1 | 1.23 |
| Equiformer ( Liao et al., 2024 ) | 47 | 29.0 | 14.4 | 13.3 | 9.9 | 23 | 7.57 | 6.22 | 186 | 6.49 | 6.17 | 1.47 |
| GotenNet L ( Aykent and Xia, 2025 ) | 28 | 19.8 | 13.4 | 12.2 | 6.7 | 19 | 4.98 | 3.30 | 24 | 3.41 | 3.37 | 1.08 |
| Supervised pretraining | ||||||||||||
| Tasks | Phonons | Dielectric | Log GVRH | Log KVRH | Perovskites | MP Gap | MP E Form | MP Is Metal |
| Units | cm -1 | – | (GPa) | (GPa) | meV | eV | meV/atom | F1 |
| #Samples | 1,265 | 4,764 | 10,987 | 10,987 | 18,928 | 106,113 | 132,752 | 106,113 |
| No pretraining | ||||||||
| CGCNN ( Xie and Grossman, 2018 ) | 57.8{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm 12.3} | .599{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.083} | .090{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.002} | .071{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.003} | 45.2{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.7} | .297{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.004} | 33.7{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.6} | \mathbf{.946}{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.008} |
| ALIGNN ( Choudhary and DeCost, 2021 ) | 29.5{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm 2.1} | .345{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.087} | .072{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.001} | .057{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.003} | 28.8{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.9} | .186{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.003} | 21.5{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.5} | .902{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.002} |
| coGN ( Ruff et al., 2024 ) | 29.7{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm 2.0} | .309{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.086} | .069{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.001} | .054{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.003} | 26.9{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.8} | .156{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.002} | 17.0{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.3} | .901{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.003} |
| Task (Units) | #Samples | No pretraining | Atom-JEPA | (rel.) | Impr.. | |
| ADMET datasets | ||||||
| Biogen | 3,521 | 6/6 | ||||
| ExpansionRX | 7,608 | 9/9 | ||||
| ChEMBL-MT | 114,112 | .4567 | 12/25 | .57 | ||
| Matbench | ||||||
| Phonons (cm -1 ) | 1,265 | 26.9{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm 4.0} | \mathbf{23.3}{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm 4.5} | 5/5 | ||
Appendix figures & tables40 assets
Supplementary material from the paper’s appendix.
Appendix
| Dataset | Samples | Tasks | Description |
| Large-scale pretraining datasets | |||
| Uni-Mol ( Zhou et al., 2023 ) | 18,837,320 | – | 3D molecular conformers |
| Alexandria PBE ( Cavignac et al., 2026 ) | 1,696,344 | – | DFT-relaxed inorganic crystals |
| Downstream evaluation datasets | |||
| ChEMBL-MT ( Adrian et al., 2025 ) | 114,000 | 25 | Multi-task ADMET |
| ExpansionRx ( MacDermott-Opeskin and Castellanos, 2026 ) | 7,608 | 10 | Multi-task ADMET |
| Evaluation dataset | Unique molecules | Found in Uni-Mol | Overlap (%) | |||
| Exact | Parent | Broad parent | Murcko scaffold | |||
| ChEMBL-MT | 23,213 | 11,964 | 52 | 52 | 73 | 90 |
| CL Microsome Human | 968 | 632 | 65 | 67 | 73 | 88 |
| CL Microsome Mouse | 136 | 84 | 62 | 66 | 69 | 92 |
| CL Microsome Rat | 341 | 226 | 66 | 66 | 69 | 87 |
| CL Total Dog | 90 | 54 | 60 | 71 | 94 | 97 |
| Evaluation dataset | Unique molecules | Found in Uni-Mol | Overlap (%) | |||
| Exact | Parent | Broad parent | Murcko scaffold | |||
| QM9 | 128,822 | 4,742 | 4 | 4 | 5 | 9 |
| Evaluation dataset | Unique structures | Found in Alexandria | Overlap (%) | |||
| Strict | Relaxed | Prototype | Composition | |||
| Matbench | 151,731 | 59,032 | 39 | 44 | 76 | 59 |
| Phonons | 1,265 | 1,190 | 94 | 96 | 100 | 99 |
| Dielectric | 4,764 | 3,399 | 71 | 80 | 93 | 92 |
| Log GVRH | 10,987 | 8,697 | 79 | 83 | 99 | 93 |
| Log KVRH | 10,987 | 8,697 | 79 | 83 | 99 | 93 |
| Neighbor selection | Same space group |
| Embedding neighbors | 69.7% |
| Composition-only neighbors | 14.4% |
| Random crystals with matching atom count | 12.4% |
| Unmatched random crystals | 4.9% |
| Predictor | Log-volume-per-atom | Coordination |
| Composition + atom count | .942 | .794 |
| Embeddings | .854 | .814 |
| Both together | .973 | .894 |
| Predictor | Energy above hull | Formation energy | Indirect band gap |
| Composition + size | .072 | .821 | .493 |
| Composition + size + geometry | .079 | .861 | .507 |
| Embeddings | .109 | .712 | .446 |
| Embeddings + composition + size + geometry | .136 | .908 | .542 |
| Input | Ring count | Aromatic fraction | Radius of gyration |
| Composition + size | .706 | .642 | .615 |
| Embeddings | .909 | .848 | .964 |
| Combined | .958 | .856 | .969 |
| Input | Mean average precision | Mean AUROC |
| Composition + size | .186 | .874 |
| Embeddings | .547 | .964 |
| Combined | .554 | .966 |
| Model | ZPVE | |||||||||||
| eV | eV | eV | D | eV | eV | eV | eV | eV | ||||
| Training-set mean | 6.343 | 1.077 | .434 | 1.055 | 1.165 | 3.195 | 7.511 | 8.304 | 203.364 | 8.244 | 8.170 | .720 |
| All layers | ||||||||||||
| Atom-JEPA | .091 | .095 | .061 | .064 | .032 | .031 | .013 | .012 | .419 | .012 | .012 | .001 |
| Random initialization | .371 | .279 | .171 | .221 | .039 | .108 | .091 | .089 | 1.850 | .089 | .091 | .004 |
| Last layer | ||||||||||||
| Model | Biogen | ChEMBL-MT | ExpansionRx | Mean rank across endpoints | Group |
| Residual correlation to peers (lower is more distinct) | |||||
| Atom-JEPA 10 conf | [1.66, 2.34] | a | |||
| Chemprop | [2.02, 2.88] | ab | |||
| Mol-JEPA modalities | [2.42, 3.14] | b | |||
| Morgan + RDKit LGBM | [2.59, 3.31] | b | |||
| CKERMT | [4.48, 4.86] | c | |||
| Model | Caco2 | HIA | P-gp | Bioav. | Lipo. | Solub. |
| Unit | MAE | AUROC | AUROC | AUROC | MAE | MAE |
| GBDT models | ||||||
| Morgan | .3530{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0370} | .8170{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0300} | .8650{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0230} | .5690{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0730} | .6060{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0170} | .9700{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0060} |
| RDKit | .3020{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0110} | .8900{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0500} | .8690{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0190} | .5800{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0430} | .5690{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0110} | .7630{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0110} |
| Morgan + RDKit | .2950{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0060} | .8940{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0400} | .8590{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0080} | .5960{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0550} | .5420{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0050} | .7760{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0280} |
| Morgan + RDKit + Avalon + ErG | .3290{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0150} | .9410{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0170} | .8690{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0160} | .5790{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0770} | .5400{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0110} | .8030{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0050} |
| Model | BBB | PPBR | VDss |
| Unit | AUROC | MAE | Spear |
| GBDT models | |||
| Morgan | .8300{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0110} | 8.6780{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.1380} | .6070{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0230} |
| RDKit | .8770{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0150} | 7.5460{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.1110} | .6220{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0090} |
| Morgan + RDKit | .8600{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0140} | 7.5100{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0980} | .6250{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0260} |
| Morgan + RDKit + Avalon + ErG | .8600{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0260} | 8.1450{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.3010} | .5750{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0230} |
| Model | 2C9-I | 2D6-I | 3A4-I | 2C9-S | 2D6-S | 3A4-S |
| Unit | AUPRC | AUPRC | AUPRC | AUPRC | AUPRC | AUROC |
| GBDT models | ||||||
| Morgan | .6730{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0590} | .5300{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0100} | .7800{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0050} | .2810{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0000} | .4660{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0960} | .5990{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0190} |
| RDKit | .7110{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0090} | .5880{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0150} | .7840{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0100} | .2970{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0250} | .5420{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.1280} | .6170{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0280} |
| Morgan + RDKit | .7120{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0100} | .6000{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0110} | .8090{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0060} | .2810{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0090} | .5560{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0500} | .6310{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0090} |
| Morgan + RDKit + Avalon + ErG | .6930{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0120} | .5630{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0290} | .8100{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0110} | .2930{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0150} | .5140{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.1230} | .6210{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0300} |
| Model | Half-life | Cl-Mic | Cl-Hep |
| Unit | Spear | Spear | Spear |
| GBDT models | |||
| Morgan | .4130{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0430} | .4670{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0290} | .3690{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0250} |
| RDKit | .3520{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0350} | .5710{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0310} | .4030{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0480} |
| Morgan + RDKit | .4150{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0370} | .5510{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0190} | .4270{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0330} |
| Morgan + RDKit + Avalon + ErG | .3810{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0440} | .4620{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0680} | .3750{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0190} |
| Model | hERG | AMES | DILI | LD50 |
| Unit | AUROC | AUROC | AUROC | MAE |
| GBDT models | ||||
| Morgan | .8100{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0180} | .7690{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0170} | .8640{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0170} | .6750{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0170} |
| RDKit | .7910{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0220} | .8050{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0050} | .8920{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0230} | .6370{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0120} |
| Morgan + RDKit | .8120{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0170} | .8160{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0100} | .8870{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0180} | .6500{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0090} |
| Morgan + RDKit + Avalon + ErG | .7680{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0530} | .8050{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0130} | .8300{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0470} | .6400{\color[rgb]{0.5,0.5,0.5}\scriptstyle\pm.0130} |
| Task | ZPVE | |||||||||||
| Units | meV | meV | meV | mD | meV | meV | meV | meV | meV | |||
| Pretrained on QM9 (130k) | ||||||||||||
| atom+sub | 115 | 130.6 | 86.1 | 88.0 | 56.0 | 40.8 | 22.3 | 22.9 | 396 | 22.6 | 22.1 | 1.8 |
| atom-only | 97 | 114.4 | 69.6 | 81.4 | 49.4 | 32.4 | 18.4 | 18.4 | 398 | 18.4 | 18.6 | 1.5 |
| sub-only | 104 | 131.6 | 90.0 | 80.2 | 82.3 | 42.7 | 23.0 | 22.7 | 420 | 22.5 | 22.4 | 1.9 |
| Pretrained on Uni-Mol (19M) | ||||||||||||
| Hyperparameter | Uni-Mol | Alexandria | QM9 |
| Encoder | |||
| Maximum degree | 2 | 2 | 6 |
| Maximum order | 2 | 2 | 2 |
| Number of Transformer blocks | 8 | 8 | 8 |
| Embedding dimension | |||
| Attention hidden dimension | |||
| Processor Hyperparameter | Interval | Prior |
| MLP | ||
| Learning rate | Log-uniform | |
| Epochs | Log-uniform | |
| Weight decay | Log-uniform | |
| Head dropout | Uniform | |
| Head hidden units | Log-uniform | |
| Feature Hyperparameter | Interval | Prior |
| Morgan | ||
| Radius | Categorical | |
| Number of bits | Categorical | |
| Use Counts | Boolean | |
| RDKit | ||
| – | – | – |
| Dataset | Fragmented | Fragmented (%) | Extra atoms (%) | |
| Caco2 Wang | 906 | 9 | 1.0 | 4.6 |
| HIA Hou | 578 | 0 | 0.0 | 0.0 |
| Pgb Broccatelli | 1212 | 0 | 0.0 | 0.0 |
| Bioavailability Ma | 640 | 1 | 0.2 | 52.5 |
| Lipophilicity AstraZeneca | 4200 | 1 | 0.0 | 4.9 |
| Solubility AqSolDB | 9982 | 1098 | 11.0 | 30.2 |
| Hyperparameter | Biogen ADME | ChEMBL-MT | ExpansionRX |
| Prediction Head | |||
| Number of tasks | 6 | 25 | 9 |
| Trunk Architecture | Linear SiLU Dropout | ||
| Per Task Head Architecture | Linear SiLU Linear | ||
| Shared Trunk dropout | .1 | ||
| Pooling readout | Mean | ||
| Hyperparameter | All targets |
| Optimization | |
| Optimizer | AdamW |
| Adam | |
| Maximum training epochs | 1,000 |
| Batch size | 32 |
| Encoder base learning rate | |
| Hyperparameter | Small-to-medium tasks | Large tasks |
| Optimization | ||
| Optimizer | AdamW | AdamW |
| Adam coefficients | ||
| Adam | ||
| Number of epochs | 100 | 12 |
| Training batch size | 4 | 32 |