Skip to content

Software Resources

Below is a collection of free / open software resources at the interface between chemistry, materials and machine learning / AI.

Foundations

  • scikit-learn

    General-purpose machine learning library in Python with classical models, preprocessing utilities, and metrics.

    Prior knowledge: Basic Python programming License: BSD

    machine learningpythonlibrary

  • PyTorch

    Deep learning framework with dynamic computation graphs and extensive support for neural network research and applications.

    Prior knowledge: Basic Python programming License: Caffe2

    deep learningpythonframework

  • TensorFlow

    End-to-end open-source platform for machine learning and deep learning, with support for large-scale training and deployment.

    Prior knowledge: TODO License: Apache-2.0

    deep learningpythonframework

  • BoTorch

    Bayesian optimization library built on PyTorch, supporting Gaussian process models and acquisition functions for global optimization.

    Prior knowledge: Basic Python programming, PyTorch License: MIT

    bayesian optimizationgaussian processespytorch

Chemistry

  • ML4Chem

    Open-source machine learning library for atomistic models in chemistry and materials science with a PyTorch backend.

    Prior knowledge: Python, PyTorch, basic atomistic simulations License: BSD-3-Clause

    atomistic MLmaterialspythonlibrary

  • RDKit

    Open-source toolkit for cheminformatics, enabling construction, manipulation, and analysis of molecular structures and fingerprints.

    Prior knowledge: Basic Python programming License: BSD License 2.0

    cheminformaticsmoleculesdescriptorsfingerprints

  • STK

    Python library for the construction and manipulation of complex molecules, supramolecular assemblies, and molecular databases.

    Prior knowledge: Basic Python programming License: MIT

    supramolecularmoleculespythonlibrary

  • STKO

    Collection of molecular optimisers and property calculators designed for use with stk and supramolecular systems.

    Prior knowledge: Basic Python programming, familiarity with stk License: MIT

    supramolecularoptimisationpropertiespython

  • MORDRED

    Molecular descriptor calculator capable of generating a wide range of descriptors for cheminformatics applications.

    Prior knowledge: Basic Python programming License: BSD-3-Clause

    molecular descriptorscheminformaticspython

  • GAUCHE

    Library for Gaussian processes in chemistry, enabling probabilistic modeling and surrogate models for chemical problems.

    Prior knowledge: Basic Python programming, Gaussian processes, chemistry License: MIT

    gaussian processeschemistrybayesian modelling

  • BayBE

    Bayesian optimization package focused on chemistry applications, with tools for experiment planning and optimization.

    Prior knowledge: Basic Python programming, chemistry License: Apache-2.0

    bayesian optimizationchemistryexperiments

  • DScribe

    Library for computing advanced descriptors for molecules and materials, including SOAP, MBTR, and other atomistic representations. Includes tutorials and examples.

    Prior knowledge: Basic Python programming, atomistic simulations License: Apache-2.0

    descriptorsmaterialsmoleculespython

Materials