What is XenonPy project

MacOS Building Status Windows Building Status Ubuntu Building Status Documentation Status codecov Version Python Versions Downloads PyPI - Downloads

Overview

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 is still under development. The current released version 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) [Currently under major maintenance, expected to be recovered in v0.7]

  • Machine learning tools.

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

_images/xenonpy.png

Citation

XenonPy is an on-going research project that covers multiple important topics in materials informatics. We recommend users to cite the papers that are relevant to their specific use of XenonPy. Please refer to Features for details of each feature in XenonPy with its corresponding citation. User can also check the publication list below to pick the relevant citations.

Features

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. XenonPy also supports an interface to use the rdkit descriptors and provides the iQSPR algorithm for molecular design.

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.

Sample

Sample codes of different features in XenonPy are available here: https://github.com/yoshida-lab/XenonPy/tree/master/samples

Publications

1
  1. Ikebata, K. Hongo, T. Isomura, R. Maezono, and R. Yoshida, “Bayesian molecular design with a chemical language model,” J Comput Aided Mol Des, vol. 31, no. 4, pp. 379–391, Apr. 2017, doi: 10/ggpx8b.

2
  1. Wu et al., “Machine-learning-assisted discovery of polymers with high thermal conductivity using a molecular design algorithm,” npj Computational Materials, vol. 5, no. 1, pp. 66–66, Dec. 2019, doi: 10.1038/s41524-019-0203-2.

3
  1. Wu, G. Lambard, C. Liu, H. Yamada, and R. Yoshida, “iQSPR in XenonPy: A Bayesian Molecular Design Algorithm,” Mol. Inform., vol. 39, no. 1–2, p. 1900107, Jan. 2020, doi: 10.1002/minf.201900107.

4
  1. Yamada et al., “Predicting Materials Properties with Little Data Using Shotgun Transfer Learning,” ACS Cent. Sci., vol. 5, no. 10, pp. 1717–1730, Oct. 2019, doi: 10.1021/acscentsci.9b00804.

5
  1. Ju et al., “Exploring diamondlike lattice thermal conductivity crystals via feature-based transfer learning,” Phys. Rev. Mater., vol. 5, no. 5, p. 053801, May 2021, doi: 10.1103/physrevmaterials.5.053801.

6
  1. Liu et al., “Machine Learning to Predict Quasicrystals from Chemical Compositions,” Adv. Mater., vol. 33, no. 36, p. 2102507, Sep. 2021, doi: 10.1002/adma.202102507.

Contributing

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