Advanced Scientific Machine Learning#
This book is a collection of notes on advanced scientific machine learning. I develop it as part of the course ME 697 (with a similar name) at Purdue University. The book is intended for graduates students in engineering and science who want to learn about machine learning in the context of scientific applications.
Prerequisites#
This book is not an introduction to machine learning. You cannot start this book without a good basic understanding of the topic. Also, you can probably not follow the book unless you are familiar with the basics of scientific computing and numerical methods. You need a fairly strong understanding of linear algebra, calculus, differential equations, probability, and standard machine learning. To build this understanding, my suggestion is to take the following courses (or similar) first:
- Functional Programming
- Typing Systems, Pytrees, and Models
- Differentiable Programming
- Local Sensitivity Analysis of ODEs and PDEs
- Uncertainty Propagation using Polynomial Chaos
- Optimization for Scientific Machine Learning
- Physics Informed Neural Networks (PINNs)
- Proper Orthogonal Decomposition
- Learning non-linear dynamics from data
- Homework Problems