Office hours
- When
- Fridays, from 13:00 — by appointment only Email the teaching assistant with what you want to discuss and you will be given a slot. Turning up without one does not work.
- Come with
- A specific question, and what you already tried Bring project questions early — at the proposal stage, changing direction is cheap.
- Not what this is for
- Technical support, or having your code written We do not fix laptops, install software, or debug on your behalf, and we do not repeat a session you missed. The workspace removes the need for local setup; every week's materials are on this site.
Python refresher
These are static pages: the code is shown with the output it produced, but nothing runs in your browser and you cannot edit it here. To run and change them, open your Nuvolos workspace, where the same notebooks are ready to run — or download the notebook and open it wherever you work.
- start
- jupyter introRead here, or download the notebook to run it.
- 01
- python as calculatorRead here, or download the notebook to run it.
- 02
- vars and typesRead here, or download the notebook to run it.
- 03
- basic tuples and listsRead here, or download the notebook to run it.
- 04
- basics of strings and printingRead here, or download the notebook to run it.
- 05
- conditionalsRead here, or download the notebook to run it.
- 06
- loopsRead here, or download the notebook to run it.
- 07
- functionsRead here, or download the notebook to run it.
- 08
- ClassesRead here, or download the notebook to run it.
- 09
- numpy linalgRead here, or download the notebook to run it.
- 10
- python data analysis libRead here, or download the notebook to run it.
- 11
- basic plottingRead here, or download the notebook to run it.
Reference shelf
No book is required — the slides and notebooks are self-contained. These are the standard references, all free from their authors.
- Course
- An Introduction to Statistical Learning, with Applications in Python — James, Witten, Hastie, Tibshirani & TaylorThe main companion: regression, classification, dimensionality reduction, clustering, with Python code. Start here.
- Maths
- Mathematics for Machine Learning — Deisenroth, Faisal & OngLinear algebra, vector calculus, probability, and the derivations behind PCA and Gaussian mixtures.
- Deep learning
- Deep Learning — Goodfellow, Bengio & CourvilleThe reference for weeks 7–8: networks, training, regularisation, recurrent architectures.
- Gaussian processes
- Gaussian Processes for Machine Learning — Rasmussen & WilliamsWeek 10; chapters 1–2 cover what the course does.
- Reinforcement
- Reinforcement Learning: An Introduction, 2nd ed. — Sutton & BartoWeek 13, and the one topic the books above do not cover.
- pandas
- Python for Data Analysis, 3rd ed. — McKinneyFree online; the pandas book by pandas' author.
- Visualize
- Python TutorWatch code run step by step.
- Help
- anna.smirnova@unil.chAnna Smirnova, teaching assistant — for personal matters; course questions go to the Moodle forum.