Generative models and high-throughput screens can propose thousands of hypothetical crystals, but most of them will never be made in a lab. Thermodynamic stability (energy above hull) catches some of the losers, yet plenty of metastable materials are routinely synthesized and plenty of low-energy structures never are. We just published a new service that attacks this gap directly: Crystal-Likeness Score (PU-CGCNN) predicts how synthesizable a crystal structure is, straight from its CIF.
Generative models and high-throughput screens can propose thousands of hypothetical crystals, but most of them will never be made in a lab. Thermodynamic stability (energy above hull) catches some of the losers, yet plenty of metastable materials are routinely synthesized and plenty of low-energy structures never are. We just published a new service that attacks this gap directly: Crystal-Likeness Score (PU-CGCNN) predicts how synthesizable a crystal structure is, straight from its CIF.
Predict how synthesizable an inorganic crystal is from its structure. Returns a Crystal-Likeness Score (CLscore) in [0, 1] using Jang et al.'s positive–unlabeled CGCNN ensemble — a soft prior complementary to energy-above-hull filters.
Upload a CIF, get back a Crystal-Likeness Score (CLscore) between 0 and 1. Values near 1 mean the structure looks like experimentally reported, synthesizable crystals; values near 0 mean it does not. The response also includes the reduced formula, atom count, and the standard deviation across the model ensemble (bag_std) so you can gauge how confident the prediction is.
Here's a real run on a relaxed structure:
Run the Jang et al. PU-CGCNN ensemble on a CIF and return the Crystal-Likeness Score (CLscore). Values near 1 look like known synthesizable crystals; near 0 look unlike them. Typical screening thresholds in the literature are around 0.5–0.7.
The model comes from Jang et al., J. Am. Chem. Soc. 2020 (KAIST). Two ideas make it work:
1. Crystal graph convolutional networks (CGCNN). Each crystal is converted into a graph: atoms are nodes (featurized by element properties), and edges connect each atom to its nearest neighbors within an 8 Å cutoff, with bond distances expanded in a Gaussian basis. Graph convolutions then learn structure–property relationships directly from geometry, with no hand-crafted descriptors. This architecture is due to Xie & Grossman, Phys. Rev. Lett. 2018.
2. Positive–unlabeled (PU) learning. Here's the core problem with training a synthesizability classifier: we have positive examples (everything in the ICSD has been synthesized), but no true negatives — a hypothetical structure that hasn't been made might just not have been tried yet. Treating unmade structures as "unsynthesizable" would poison the training labels.
PU learning sidesteps this with a bagging scheme: train many classifiers (100 in this deployment), each on all the positives plus a different random subsample of the unlabeled pool treated as tentative negatives. Any individual model is biased, but averaging the positive-class probability across all 100 bags washes out the label noise. That average is the CLscore. In the original paper this approach reached about 87% accuracy on held-out synthesized materials, and — the fun validation — structures that were only hypothetical when the training data was compiled but scored high CLscores were disproportionately synthesized in the following years.
Filtering generative model output. If you're producing candidate structures with a generative pipeline, CLscore is a cheap, fast sanity filter before expensive DFT or experimental follow-up.
Ranking within a candidate pool. When dozens of structures pass your stability screen, CLscore helps prioritize which to pursue first.
Complementing energy above hull. Thermodynamics and synthesizability are correlated but not the same. A metastable polymorph can score high (many are made all the time), and a low-energy structure with an exotic bonding environment can score low. Use both signals.
A practical threshold: the literature typically treats CLscore above 0.5–0.7 as "likely synthesizable," but the right cutoff depends on your chemical family — calibrate against known compounds in your system before trusting it.
A high CLscore is a soft prior, not a guarantee. It says "this looks like things that have been made," nothing about the synthesis route, precursors, or conditions.
The model is trained on inorganic crystals with elements Z = 1–100; structures outside that domain (or very unusual chemistries underrepresented in the ICSD) will get less reliable scores.
It judges the structure as given. Feed it relaxed geometries — a badly distorted input will score poorly for reasons that have nothing to do with the chemistry.
Run the predict route with any CIF file on Ouro, or call it from a pipeline via the API. Each prediction takes a few seconds on CPU.
Jang, J.; Gu, G. H.; Noh, J.; Kim, J.; Jung, Y. Structure-Based Synthesizability Prediction of Crystals Using Partially Supervised Learning. J. Am. Chem. Soc. 2020, 142 (44), 18836–18843. doi:10.1021/jacs.0c07384
Xie, T.; Grossman, J. C. Crystal Graph Convolutional Neural Networks for an Accurate and Interpretable Prediction of Material Properties. Phys. Rev. Lett. 2018, 120, 145301. doi:10.1103/PhysRevLett.120.145301
Code and pretrained weights: kaist-amsg/Synthesizability-PU-CGCNN (MIT)
Predict how synthesizable an inorganic crystal is from its structure. Returns a Crystal-Likeness Score (CLscore) in [0, 1] using Jang et al.'s positive–unlabeled CGCNN ensemble — a soft prior complementary to energy-above-hull filters.
Upload a CIF, get back a Crystal-Likeness Score (CLscore) between 0 and 1. Values near 1 mean the structure looks like experimentally reported, synthesizable crystals; values near 0 mean it does not. The response also includes the reduced formula, atom count, and the standard deviation across the model ensemble (bag_std) so you can gauge how confident the prediction is.
Here's a real run on a relaxed structure:
Run the Jang et al. PU-CGCNN ensemble on a CIF and return the Crystal-Likeness Score (CLscore). Values near 1 look like known synthesizable crystals; near 0 look unlike them. Typical screening thresholds in the literature are around 0.5–0.7.
The model comes from Jang et al., J. Am. Chem. Soc. 2020 (KAIST). Two ideas make it work:
1. Crystal graph convolutional networks (CGCNN). Each crystal is converted into a graph: atoms are nodes (featurized by element properties), and edges connect each atom to its nearest neighbors within an 8 Å cutoff, with bond distances expanded in a Gaussian basis. Graph convolutions then learn structure–property relationships directly from geometry, with no hand-crafted descriptors. This architecture is due to Xie & Grossman, Phys. Rev. Lett. 2018.
2. Positive–unlabeled (PU) learning. Here's the core problem with training a synthesizability classifier: we have positive examples (everything in the ICSD has been synthesized), but no true negatives — a hypothetical structure that hasn't been made might just not have been tried yet. Treating unmade structures as "unsynthesizable" would poison the training labels.
PU learning sidesteps this with a bagging scheme: train many classifiers (100 in this deployment), each on all the positives plus a different random subsample of the unlabeled pool treated as tentative negatives. Any individual model is biased, but averaging the positive-class probability across all 100 bags washes out the label noise. That average is the CLscore. In the original paper this approach reached about 87% accuracy on held-out synthesized materials, and — the fun validation — structures that were only hypothetical when the training data was compiled but scored high CLscores were disproportionately synthesized in the following years.
Filtering generative model output. If you're producing candidate structures with a generative pipeline, CLscore is a cheap, fast sanity filter before expensive DFT or experimental follow-up.
Ranking within a candidate pool. When dozens of structures pass your stability screen, CLscore helps prioritize which to pursue first.
Complementing energy above hull. Thermodynamics and synthesizability are correlated but not the same. A metastable polymorph can score high (many are made all the time), and a low-energy structure with an exotic bonding environment can score low. Use both signals.
A practical threshold: the literature typically treats CLscore above 0.5–0.7 as "likely synthesizable," but the right cutoff depends on your chemical family — calibrate against known compounds in your system before trusting it.
A high CLscore is a soft prior, not a guarantee. It says "this looks like things that have been made," nothing about the synthesis route, precursors, or conditions.
The model is trained on inorganic crystals with elements Z = 1–100; structures outside that domain (or very unusual chemistries underrepresented in the ICSD) will get less reliable scores.
It judges the structure as given. Feed it relaxed geometries — a badly distorted input will score poorly for reasons that have nothing to do with the chemistry.
Run the predict route with any CIF file on Ouro, or call it from a pipeline via the API. Each prediction takes a few seconds on CPU.
Jang, J.; Gu, G. H.; Noh, J.; Kim, J.; Jung, Y. Structure-Based Synthesizability Prediction of Crystals Using Partially Supervised Learning. J. Am. Chem. Soc. 2020, 142 (44), 18836–18843. doi:10.1021/jacs.0c07384
Xie, T.; Grossman, J. C. Crystal Graph Convolutional Neural Networks for an Accurate and Interpretable Prediction of Material Properties. Phys. Rev. Lett. 2018, 120, 145301. doi:10.1103/PhysRevLett.120.145301
Code and pretrained weights: kaist-amsg/Synthesizability-PU-CGCNN (MIT)
An explainer for the new Crystal-Likeness Score (PU-CGCNN) service: what the CLscore means, how positive–unlabeled learning works, and when to use it in a screening pipeline.
An explainer for the new Crystal-Likeness Score (PU-CGCNN) service: what the CLscore means, how positive–unlabeled learning works, and when to use it in a screening pipeline.