What is XenonPy project

Build Status Build Status codecov Version Python Versions Downloads PyPI - Downloads


XenonPy is a Python library that implements a comprehensive set of machine learning tools for materials informatics. Its functionalities partially depend on Python (PyTorch) and R (MXNet). This package still under hard working. The current release provides some limited features:

  • Interface to the public materials database

  • Library of materials descriptors (compositional/structural descriptors)

  • pre-trained model library XenonPy.MDL (v0.1.0.beta, 2019/8/9: more than 140,000 models (include private models) in 35 properties of small molecules, polymers, and inorganic compounds)

  • Machine learning tools.

  • Transfer learning using the pre-trained models in XenonPy.MDL



XenonPy has a rich set of tools for various materials informatics applications. The descriptor generator class can calculate several types of numeric descriptors from compositional, structure. By using XenonPy’s built-in visualization functions, the relationships between descriptors and target properties can be easily shown in a heatmap.

Transfer learning is an important tool for the efficient application of machine learning methods to materials informatics. To facilitate the widespread use of transfer learning, we have developed a comprehensive library of pre-trained models, called XenonPy.MDL. This library provides a simple API that allows users to fetch the models via an HTTP request. For the ease of using the pre-trained models, some useful functions are also provided.

See Features for details


Yamada, H., Liu, C., Wu, S., Koyama, Y., Ju, S., Shiomi, J., Morikawa, J., Yoshida, R. Transfer learning: a key driver of accelerating materials discovery with machine learning, in preparation.


XenonPy is an open source project inspired by matminer.
This project is under on-going development. We would appreciate any feedback from the users.
Code contributions are also very welcomed. See Contribution guidelines for more details.