Image classification is an interesting challenge that requires many images for training. Here we propose to explore 4 different machine learning classification approaches (from random forest to ResNet) on an image set created from the IXI data set using famous python packages: scikit-learn and Keras/TensorFlow.
This example is split into 3 parts. The first notebook is about reading and preparing image sets and then training and assessing the 4 machine learning classification approaches.
The second notebook is on interpretability. It allows us to understand better how CNN network works and why the results are so good on the used images.
The last notebook illustrates the auto differentiation and the gradient descent optimization algorithm.
The following archive contains all necessary materials: TP1_Classification.zip
This project is GitLab versioned here.