Tutorials
Below is a collection of free / open tutorials and tutorial notebooks at the interface between chemistry, materials and machine learning / AI.
Foundations
-
3Blue1Brown Neural Networks Video Series
BeginnerVisual and intuitive video series explaining neural networks and deep learning concepts with minimal math.
Prior knowledge: Basic calculus, linear algebra
Estimated time: 5 hoursneural networksvideovisual explanations
-
LLM Visualization
IntermediateInteractive 3D visualisation of a GPT-style large language model, showing every layer and operation during inference. You can explore the full LLM computation pipeline step by step in 3D, making the inner workings of LLMs much more tangible.
Prior knowledge: Basic understanding of neural networks and transformers is helpful, plus some linear algebra intuition
Estimated time: 1–2 hourslarge language models3D visualizationinteractive tutorial
-
A Gentle Introduction to Graph Neural Networks
Beginner To IntermediateInteractive Distill article that introduces graph neural networks from first principles, with animations, visual explanations, and code snippets. Walks through graph data, message passing, and the components of a modern GNN in an intuitive, experimentable way.
Prior knowledge: Familiarity with graphs and adjacency matrices
Estimated time: 2–4 hoursgraph neural networksinteractive articlevisual explanation
-
Machine Learning for Everyone (In Simple Words)
BeginnerLong-form blog tutorial explaining machine learning in absolute basic, simple words, with real-world analogies and zero formal math. Focuses on intuitions, everyday examples, and plain language rather than equations, making it accessible to non-technical readers.
Prior knowledge: None; general curiosity about machine learning
Estimated time: 1–2 hoursmachine learning basicsnon-technicalreal-world examples
-
The Python Tutorial (Official Documentation)
BeginnerThe official Python tutorial, maintained as part of the core Python documentation. Covers all essential Python concepts, from basic syntax to modules, classes, I/O, and error handling. A major advantage is that it is always updated for the very latest Python version.
Prior knowledge: None; suitable for first-time programmers
Estimated time: 10–20 hours (full read-through with exercises)python basicsofficial docsprogramming fundamentals
-
Software Carpentry Lessons
BeginnerCollection of core Software Carpentry lessons teaching essential research computing skills: the Unix shell, version control with Git, and programming with Python or R. Designed as hands-on workshop material with exercises and instructor notes.
Prior knowledge: Basic familiarity with files/folders; no prior coding experience required
Estimated time: 10–20 hours (Unix shell, Git, and Python/R lessons)research computingshell/git/pythonhands-on lessons
-
Homemade Machine Learning
Beginner To IntermediateCollection of popular machine learning algorithms implemented from scratch in Python, with the underlying mathematics explained. Each algorithm is accompanied by interactive Jupyter Notebook demos so you can tweak data and hyperparameters and immediately see predictions and visualisations.
Prior knowledge: Python (NumPy), basic calculus, linear algebra, and introductory ML concepts
Estimated time: 15–30 hours (working through demos and notebooks)from-scratch implementationsjupyter notebooksclassic ML algorithms
Chemistry
-
Reinforcement Learning for ChemEng
Intermediate To AdvancedEducational reinforcement learning implementation with tutorial notebooks aimed at chemical engineering applications.
Prior knowledge: Chemical engineering, reinforcement learning basics, Python
Estimated time: 5–10 hours (notebook tutorials)reinforcement learningchemical engineeringnotebooks
-
Is Life Worth Living? — Cheminformatics Blog by @iwatobipen
Beginner To IntermediateBlog covering cheminformatics topics such as RDKit, molecular similarity, data-pipelines, and workflows. Includes code snippets, practical examples, and explains tools in clear terms.
Prior knowledge: Basic chemistry and Python; interest in cheminformatics
Estimated time: Varies (many short posts, individual topics)cheminformaticsRDKitpython workflows
-
Introduction to Python for Chemists (Imperial College)
BeginnerIntroductory Python course starting at very basics tailored to chemists: basic syntax, data handling, and chemical-data examples. Contains Jupyter notebooks and worked examples to help chemists get started coding.
Prior knowledge: High-school chemistry, basic mathematics
Estimated time: ≈5–10 hours (notebooks + exercises)chemistrypython basicsnotebooks