/ai4chem_course

EPFL CH-457 "AI for chemistry"

Primary LanguageJupyter NotebookMIT LicenseMIT

AI4Chemistry course

The Artificial Intelligence (AI) for Chemistry course will be taught in Spring 2023. It is a course with a lot of hands-on exercises. Experience in Python programming and machine learning (ML) will help you to get up to speed quickly, but we will try to make it as accessible as possible.

We will make use of Google Colab to run the code directly in your browser, as there is zero configuration required and we will have access to GPUs free of charge.

A lot of the examples and ideas in this course are taken from the open-source community, which we will properly reference.

Contributors

This course is being created by the LIAC team. Many thanks to all the TAs:

Tentative content

  • Python Crash Course & essential libraries (matplotlib, numpy, pandas)
  • Cheminformatics toolkits (rdkit)
  • Introduction into data science
    • Supervised machine learning (regression, classification)
    • Unsupervised machine learning
    • Data and standardisation
  • Deep Learning for Chemistry
    • Property prediction models
    • Inverse Design [@sanchez2018inverse]
    • Reaction prediction and retrosynthesis [@schwaller2022machine]
  • Advanced topics in AI for Chemistry
    • Bayesian optimisation for chemical reactions

Exercises

Week Topic Link to Colab
1 Python and Jupyter Open In Colab
Pandas Open In Colab
Plotting data Open In Colab
Intro to RDKit Open In Colab
2 Supervised ML Open In Colab
3 Introduction to Deep Learning Open In Colab
Graph Neural Network Open In Colab
GNN example - chemprop Open In Colab
4 Dimensionality reduction Open In Colab
Clustering Open In Colab
Pd dimers discovery by kMeans Open In Colab
5 De novo molecule generation (VAE) Open In Colab
6 De novo molecule generation (SMILES-LSTM) Open In Colab
7 Chemical reactions prediction: Template-free methods Open In Colab
8 Retrosynthesis: Template-based methods Open In Colab
9 Atom mapping Open In Colab
Reaction fingerprints Open In Colab
Yield prediction Open In Colab
10 Bayesian Optimisation Open In Colab
11 Model deployment: Git(hub) Open In Colab
Model deployment: Streamlit Open In Colab
12 Guest lecture: AlphaFold2 Open In Colab

The solutions can be found in this GitHub repo. Don't forget to leave a star, if you find it useful.

Inspiration

The cheminformatics and ML for chemistry have a lively open source community. Here is a collection of inspirational blogs and webpages, from which we discuss examples:

Cheminformatics / ML for Chemistry

AI for Science

ML & Data Science

Check them out and don't forget to leave a star on GitHub and follow the authors on Twitter, if you like the content. Those blogs and webpages have all helped me during the creation of this course (and also before, when I was learning about ML for Chemistry).

Tweets

{{< tweet pschwllr 1629098793399472130 >}}