Skip to main content

maml is a machine learning library for materials science.

Project description

maml (MAterials Machine Learning) is a Python package that aims to provide useful high-level interfaces that make ML for materials science as easy as possible.

The goal of maml is not to duplicate functionality already available in other packages. maml relies on well-established packages such as scikit-learn and tensorflow for implementations of ML algorithms, as well as other materials science packages such as pymatgen and matminer for crystal/molecule manipulation and feature generation.

Official documentation at http://maml.ai/

Features

  1. Convert materials (crystals and molecules) into features. In addition to common compositional, site and structural features, we provide the following fine-grain local environment features.

  1. Bispectrum coefficients

  2. Behler Parrinello symmetry functions

  3. Smooth Overlap of Atom Position (SOAP)

  4. Graph network features (composition, site and structure)

  1. Use ML to learn relationship between features and targets. Currently, the maml supports sklearn and keras models.

  2. Applications:

  1. pes for modelling the potential energy surface, constructing surrogate models for property prediction.

  1. Neural Network Potential (NNP)

  2. Gaussian approximation potential (GAP) with SOAP features

  3. Spectral neighbor analysis potential (SNAP)

  4. Moment Tensor Potential (MTP)

  1. rfxas for random forest models in predicting atomic local environments from X-ray absorption spectroscopy.

Installation

Pip install via PyPI:

pip install maml

To run the potential energy surface (pes), lammps installation is required you can install from source or from conda:

conda install -c conda-forge/label/cf202003 lammps

The SNAP potential comes with this lammps installation. The GAP package for GAP and MLIP package for MTP are needed to run the corresponding potentials. For fitting NNP potential, the n2p2 package is needed.

Install all the libraries from requirement.txt file:

pip install -r requirements.txt

For all the requirements above:

pip install -r requirements-ci.txt
pip install -r requirements-optional.txt
pip install -r requirements-dl.txt
pip install -r requirements.txt

Citing

@misc{maml,
    author = {Chen, Chi and Zuo, Yunxing and Ye, Weike and Ong, Shyue Ping},
    title = {{Maml - materials machine learning package}},
    year = {2020},
    publisher = {GitHub},
    journal = {GitHub repository},
    howpublished = {https://github.com/materialsvirtuallab/maml},
}

For the ML-IAP package (maml.pes), please cite:

Zuo, Y.; Chen, C.; Li, X.; Deng, Z.; Chen, Y.; Behler, J.; Csányi, G.; Shapeev, A. V.; Thompson, A. P.;
Wood, M. A.; Ong, S. P. Performance and Cost Assessment of Machine Learning Interatomic Potentials.
J. Phys. Chem. A 2020, 124 (4), 731–745. https://doi.org/10.1021/acs.jpca.9b08723.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

maml-2022.1.28.tar.gz (3.7 MB view details)

Uploaded Source

Built Distribution

maml-2022.1.28-py3-none-any.whl (4.8 MB view details)

Uploaded Python 3

File details

Details for the file maml-2022.1.28.tar.gz.

File metadata

  • Download URL: maml-2022.1.28.tar.gz
  • Upload date:
  • Size: 3.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.10.1 pkginfo/1.7.1 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.5

File hashes

Hashes for maml-2022.1.28.tar.gz
Algorithm Hash digest
SHA256 6f7fcab0b6e0b11a490209a97dffd24f88ff9b477ab4ffea130d97cb83a7f60d
MD5 886eaf35cb1e78627411611bb03e0805
BLAKE2b-256 2b432c150d2f8889e9afd4c7fb650d5db4688c3a20b6e5c6ca468a2c37a38d5a

See more details on using hashes here.

File details

Details for the file maml-2022.1.28-py3-none-any.whl.

File metadata

  • Download URL: maml-2022.1.28-py3-none-any.whl
  • Upload date:
  • Size: 4.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.10.1 pkginfo/1.7.1 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.5

File hashes

Hashes for maml-2022.1.28-py3-none-any.whl
Algorithm Hash digest
SHA256 4697318da4f626e8fe00ea3e500dcf772c1145d1aaeba0dbad1dc2a96f4de165
MD5 d09cd7ddfbf27a67695ddd60528fda9a
BLAKE2b-256 98f32bc35938bfddce9308db7187e41fd18949ac486841540d5e843dd13bdf09

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page