Skip to content

Courses & Course Materials

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

Foundations

  • Machine Learning Introduction (Coursera)
    Beginner

    Coursera specialization introducing basic machine learning concepts with a video component and practical assignments.

    Prior knowledge: Basic coding (for loops, functions, if/else), high-school math (algebra)
    Estimated time: 2 months part-time (~10 hours/week)

    machine learningcoursevideo

  • Agents4Science: Agentic Scientific Discovery Platforms
    Advanced

    Course on AI agents in scientific discovery platforms with slides & reading materials; covers sense-plan-act-learn loops, scientific workflows. Not heavy on notebooks but substantial reading/slides.

    Prior knowledge: Machine learning, AI agents, scientific workflows
    Estimated time: ≈10–15 hours (lecture slides + assignments)

    AI agentsscientific discoveryworkflow automation

  • Deep Neural Networks Video Course
    Beginner

    Video-course playlist covering deep neural network fundamentals. Mostly video lectures, limited notebook assignments.

    Prior knowledge: Basic calculus, linear algebra, Python
    Estimated time: 8–10 hours (video playlist)

    neural networksvideo lecturesdeep learning

  • Mathematics for Machine Learning Specialization
    Intermediate

    Coursera specialization covering linear algebra, calculus and probability for machine learning. Includes interactive Jupyter assignments.

    Prior knowledge: High-school algebra, Python basics
    Estimated time: 4 weeks part-time (~10 hours/week)

    mathematical foundationslinear algebraprobability & statistics

  • Machine Learning Refined – Course Materials
    Beginner To Intermediate

    Accompanying course materials for the textbook Machine Learning Refined. Includes Jupyter/Colab notebooks, chapter notes, exercises, and slides, emphasizing geometric intuition and building classic ML methods from scratch in Python.

    Prior knowledge: Basic Python, matrix algebra, introductory calculus
    Estimated time: 40–60 hours (online notes, exercises, and slides)

    machine learningpython notebooksoptimization

  • Machine Learning for Beginners (Microsoft)
    Beginner

    Project-based introductory curriculum on classic machine learning using scikit-learn. Provides lesson notebooks, quizzes, assignments, and solutions, organized as a 12-week, 26-lesson sequence designed for classroom use or self-study.

    Prior knowledge: Introductory Python, high-school algebra
    Estimated time: 40–60 hours (12-week, 26-lesson curriculum)

    machine learningbeginner curriculumscikit-learn

  • Practical Deep Learning for Coders (fast.ai)
    Intermediate

    Hands-on deep learning course focusing on practical applications (vision, NLP, tabular, recommender systems, and diffusion models). Uses the fastai and PyTorch libraries with free compute options, combining video lectures with Jupyter notebooks and exercises.

    Prior knowledge: Comfortable with Python coding, basic math (algebra and simple calculus)
    Estimated time: 30+ hours (video lessons plus notebooks)

    deep learningpractical coursepytorch

Chemistry

  • EPFL AI for Chemistry course
    Intermediate

    Lecture notes, slides, and notebooks for AI in chemistry, focusing on reaction prediction and synthesis planning.

    Prior knowledge: Undergrad chemistry, basic ML (supervised learning)
    Estimated time: 10–20 hours

    reaction predictioncheminformaticscourse

  • Data-Driven Chemistry (University of Edinburgh)
    Beginner

    Introductory Python/data-analysis course for chemistry students. Contains Jupyter notebooks for each unit.

    Prior knowledge: Undergraduate chemistry, basic Python
    Estimated time: 12–20 hours (10 workshop units)

    chemistry programmingdata-analysisPython notebooks

  • Intro to Machine Learning in Chemistry (ML4chemArg)
    Beginner To Intermediate

    Course designed for chemistry students without prior programming experience: uses Python notebooks and real chemical data.

    Prior knowledge: Basic Python or none
    Estimated time: 10–15 hours (notebook-based course)

    machine learning chemistryPython notebooksintroductory course

  • Data Analytics in Chemistry (CHEM70012 — Imperial College)
    Beginner To Intermediate

    Workshop-based course introducing statistical learning, data visualisation and model building for chemical datasets. Contains Jupyter notebooks for each workshop session. Designed for masters-level chemistry undergraduates.

    Prior knowledge: Familiarity with Python; high-school level maths/statistics
    Estimated time: ≈8–12 hours (workshop notebooks + data-analysis modules)

    chemistry data analysisstatistical learningworkshop notebooks

Materials

  • Automated Experiment (UTK Spring 2023)
    Intermediate

    Course material repository for automated experiment design incorporating Gaussian processes and physics discovery. Contains Jupyter notebooks and assignments. oai_citation:1‡LinkedIn

    Prior knowledge: Statistics, machine learning, Python
    Estimated time: 8–12 hours (lecture slides + notebooks)

    automated experimentationGaussian processesBayesian optimisation

  • Machine Learning for Materials: From PCA to ChatGPT (UTK MSE Fall 2023)
    Intermediate To Advanced

    Semester-length course on machine learning for materials, from PCA and classical methods to modern deep learning and large language models. Includes Jupyter notebooks, module-based materials, and project-style content focused on real materials-science problems.

    Prior knowledge: Undergraduate materials science, basic Python, linear algebra
    Estimated time: 30–40 hours (selected modules, readings, and notebooks)

    materials sciencemachine learningcourse notebooks

  • Materials Informatics (MSE5540/6640, University of Utah)
    Intermediate

    Full course on materials informatics covering data repositories, featurization, best practices, and ML workflows for materials discovery. Repository includes lecture slides, Jupyter notebooks, homework assignments, and reading lists, plus a linked YouTube lecture playlist.

    Prior knowledge: Undergraduate materials science, basic Python, basic statistics
    Estimated time: 30–50 hours (lectures, homeworks, and worked examples)

    materials informaticsjupyter notebookscourse

  • Machine Learning for Materials (MATE70026 — Imperial College)
    Intermediate

    Course module introducing representation of composition–structure–property data for materials, building, training and evaluating ML models, plus recent AI for science topics. Includes Jupyter notebooks for module work. From Imperial College London.

    Prior knowledge: Basic Python programming, undergraduate materials science
    Estimated time: ≈12–16 hours (lectures + notebook modules + assignments)

    materials sciencemachine learningJupyter notebooks