Overview
MODNet, the Material Optimal Descriptor Network, is a Python framework for learning relationships between materials descriptions and their properties. The repository presents it as suited to limited datasets and supports joint learning of multiple properties. It belongs in the predictive-modeling stage of a materials workflow: composition or crystal structure supplies the material description, and the learned model produces property predictions rather than experimental measurements.
The project combines an installable package with documented pretrained models. The README identifies two pretrained options for predicting refractive index and vibrational thermodynamics from crystal structures. For users developing their own models, the cited methodology describes feature selection and joint learning. The package declares dependencies including TensorFlow, pymatgen, matminer and scikit-learn, placing it within the Python materials-informatics ecosystem. ReadTheDocs is the official documentation entry point, while GitHub release summaries provide change information.
Reproducibility requires attention to the software environment: the README warns that dependency changes can alter particular feature values and recommends pinning environments across machines or MODNet versions. The linked sources also disagree on the minimum Python version: the README states 3.8+, whereas setup.py requires 3.9+. The excerpts do not provide detailed input schemas, pretrained-model applicability limits or current predictive accuracy. These should therefore be checked in the linked documentation and evaluated on the intended materials dataset before predictions inform scientific decisions.
Key Features
- Supervised materials-property learning using composition or crystal structure as the material description.
- Joint learning of multiple material properties within the framework.
- Feature selection as part of the methodology described by the linked MODNet paper.
- Two documented pretrained models targeting refractive index and vibrational thermodynamics from crystal structures.
- Python package distribution through PyPI, with a repository-based development installation route also documented.
Use Cases
- Intended evaluation: train a property predictor on a limited labeled materials dataset and assess predictions on held-out materials.
- Intended evaluation: compare joint learning of related properties with separate target-specific models using the same evaluation split.
- Intended evaluation: assess the documented pretrained refractive-index or vibrational-thermodynamics models on crystal structures relevant to a screening study.
How to Use
- Start with the repository README to choose between training a model and using one of the two documented pretrained models. Match that choice to your available composition or crystal-structure data.
- Consult the official documentation for input preparation and model workflow details. The source excerpts do not specify the required data schema or prediction API.
- Create an isolated Python environment and follow the README’s PyPI installation route, or its repository installation route for development. Resolve the README/setup.py Python-version discrepancy before selecting your environment.
- Record and pin the environment, including dependencies. The README specifically warns that dependency changes can affect feature values; consult release summaries when changing MODNet versions.
- As an intended evaluation step, reserve independent materials for assessment, compare predictions with known target values, and examine errors before using outputs for screening or scientific interpretation.