List of exercises
You will find below links to download the notebooks for the exercises (which you have to fill) and their solution (which you can look at after you finished the exercise). It is recommended not to look at the solution while doing the exercise unless you are lost.
Alternatively, you can run the notebooks directly on Colab (https://colab.research.google.com/) if you have a Google account.
For instructions on how to install a Python distribution on your computer, check this page.
You will also find outdated videos presenting the exercises and commenting their solution on Youtube.
The solution of each exercise is rendered in the following pages.
Introduction to Python
This exercise is an introduction to Python for absolute beginners. If you already know Python, you can safely skip it.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Numpy and Matplotlib
The goal of this exercise is to present the basics of the numerical library numpy
as well as the visualization library matplotlib
.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Linear regression
The goal of this exercise is to study linear regression in batch and online versions, as well as to learn to use scikit-learn
.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Multiple Linear Regression
The goal of this exercise is to study multiple linear regression on the Boston Housing Dataset, with L1 and L2 regularization.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Cross-validation
The goal of this exercise is to study the interest of cross-validation (simple and k-fold) on a small polynomial regression problem.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Linear classification
The goal of this exercise is to investigate hard and soft binary classification.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Softmax classifier
The goal of this exercise is to investigate the linear softmax classifier on single digits.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Multi-layer perceptron
The goal of this exercise is to implement a shallow MLP and the backpropagation algorithm, as well as to investigate several improvements to improve convergence.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
MNIST classification using keras
The goal of this exercise is to discover the keras API of tensorflow and apply it to the MNIST dataset.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Convolutional neural networks
The goal of this exercise is to implement a CNN using keras and to visualize the learned feature maps.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Transfer learning
The goal of this exercise is to investigate data augmentation and transfer learning on a small dataset of cats and dogs.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Variational autoencoder
The goal of this exercise is to implement a variational autoencoder on the MNIST dataset.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.
Recurrent neural networks
The goal of this exercise is to use LSTM layers to perform sentiment analysis and time series prediction.
Notebook: download .ipynb or run on colab.
Solution: download .ipynb or run on colab.