Skip to main content

Welcome to this course in Machine Learning for Physics and Astronomy!

This course is meant for beginning machine learning practitioners. It is an asynchronous course that can be started at any time and taken at any pace; the "start date" you may see on the site only refers to the first day that the materials were made available. It will be helpful to be familiar with Python and Jupyter notebooks, which we use for implementation (see the "Tools you will need" Section). We provide a foundation in methods of Machine Learning, and focus on its applications to real research examples, from exploratory data analysis to hypothesis testing and diagnostics. Our approach is very pragmatic, and we try to keep math to a minimum (although some linear algebra might occasionally make an appearance). We draw most examples from Physics and Astronomy.

If you wish, from Summer 2023 you'll be able to purchase the book "Machine Learning for Physics and Astronomy", written by Dr A and published by Princeton University Press, which follows this course and contains additional materials and details.

This is the list of topics we cover:

- Intro to ML (Unit 1).

- Supervised learning for classification; trees and neighbors (Unit 2).

- Evaluation Metrics; Diagnostics (Unit 3).

- Pre-processing and Parameter Optimization, Support Vector Machines (Unit 4).

- Regression: Metrics, Gradient Descent, Linear Models (Unit 5).

- Ensemble Methods for Classification and Regression (Unit 6).

- Clustering and Dimensionality Reduction (Unit 7).

- Intro to Neural Networks: Training, Optimization, Architectures (Unit 8).

Each unit is organized in different components. The Overview section briefly describes the topics and data sets introduced in each unit. Video lessons are used to discuss the main concepts: algorithms, methods, and data, in traditional presentation form. The Quiz section contains the adventures of the AI buddy, an adorable, not-quite-yet-sentient creature who will accompany you in your learning journey. Finally, you are invited to "Try It", by running the notebooks associated with each unit, and testing your understanding and coding skills with the "Learning Check-ins" present in each unit. All the notebooks are accompanied by video walk-throughs, which describe what is happening at each step and (most importantly) why.

Our hope is that at the end of the class, you will be able to: Read and understand a paper that uses ML; Know how to build, diagnose, and optimize a ML model; Develop a sense of what methods are available, and match them to research problems; Have draft notebooks with simple implementations to use as a foundation for writing more (and better) code.

Good luck and again, welcome!

Jake, Olga, the AI buddy, and Dr A - aka the Javioli team (read more about us in the "Team" page)!