M3. Machine learning for computer vision

Machine learning deals with building solutions for the automatic analysis of large scale data, like images and video sequences. Not in the sense of writing complex, adhoc programs but algorithms able to learn to solve tasks from data. Machine learning conforms the basics of many computer vision methods, specially those related to image classification. In these days deep learning is pervasive in computer vision. As someone said, “since the breakthrough of the AlexNet network in the 2012 ImageNet classification contest, everything is deep“. In this module we update the contents in consonance. Therefore, roughly half of the module covers most important topics of “classical” machine learning biased to image classification, and the second half is an introduction to deep learning usage for computer vision.
Project title: 
Image Classification on large datasets

 The goal of this project is to learn the basic concepts of machine learning (ML) techniques for image classification, that pursuit to answer: does the image correspond to a X scene?. For this purpose, the task is to categorize in which scenario a given image was taken: ’coast’, ’forest’, ’street’, ’mountain’, . . ..The project focus on the study of different ML techniques. We will work with two different frameworks: classical Bag of Words (BoW) and Convolutional Neural Networks (CNN).  The former was the standard way of approaching the problem in the first decade of the century and it is still fundamental to understand the underlying problems that might appear in the classification task. The later, CNN, represents the new trends that have exploded in the last five years in the context of deep learning. The nature of the arising problems have shifted from the design of good hand-crafted descriptors to the development of good techniques for an efficient training of the network that learns the descriptors. In both cases the project provides practical responses on how to proceed given a task in order the student takes the best decision in designing a solution. The solution will include all the computational details and forcing to address many different alternatives to get the best performance in each case.

Module lectures: 
Academic Year 2016-2017        
Week Date Time Lecture Lecturer University Building Room
1 Mon. Dec.12th  16:00 -18:00 Introduction to machine learning. From pixels to image descriptors David Masip UAB  CVC  S. d'Actes 
1 Mon. Dec.12th  18:00 - 19:00 Project definition. Basic Image classification Ramon Baldrich/ Marçal Rossinyol UAB CVC  S. d'Actes
1 Wed. Dec.14th 16:00 -18:00 Support Vector Machines Fernando Vilariño UAB CVC S. d'Actes
2 Mon. Dec.19th 16:00 -18:00 Bags of words framework Ernest Valveny UAB CVC S. d'Actes
2 Mon. Dec.19th 18:00 -19:00 Project follow-up: Bag of words classification, Cross-validation & Spatial Pyramids (BoW framework) Ramon Baldrich/ Marçal Rossinyol UAB CVC  S. d'Actes 
2 Wed. Dec.21st 16:00 -18:00 Experimental setup  Fernando Vilariño UAB CVC S. d'Actes 
      Christmas Holidays (From  Dec. 24th  to Jan. 8th)        
3 Mon. Jan. 9th 16:00 -18:00 Introduction to Ensemble methods Fernando Vilariño UAB CVC S. d'Actes
3 Mon. Jan. 9th 18:00 -19:00 Project follow-up: Fisher vectors (beyond BoW) Ramon Baldrich/ Marçal Rossinyol UAB CVC S. d'Actes

Wed. Jan.11th 

16:00 -18:00

Shifted to next Monday 16th

4 Mon. Jan.16th 16:00 -18:00 Introduction to deep learning  José Alvarez UAB CVC S. d'Actes
4 Mon. Jan.16th 18:00 -20:00 Convolutional Neural Networks José Alvarez UAB CVC S. d'Actes
4 Wed. Jan.18th  16:00 -18:00 Training: data pre-processing, initialization, gradient optimisation  José Alvarez UAB CVC S. d'Actes 
4 Wed. Jan.18th  18:00 -19:00 Project follow-up: From hand-crafted to learnt features Ramon Baldrich/ David Vazquez UAB CVC  S. d'Actes 
5 Mon. Jan. 23rd 16:00 -18:00 The overfitting problem: Regularisation José Alvarez UAB CVC S. d'Actes
5 Mon. Jan. 23rd 18:00 -19:00 Project follow-up: Fine tuning of pre-trained CNNs Ramon Baldrich/ David Vazquez UAB CVC S. d'Actes
5 Wed. Jan. 25h 16:00 -18:00 HOMEWORK   UAB CVC S. d'Actes 
6 Mon. Jan.30 th 16:00 -18:00 Understanding and visualizing CNNs Ivet Rafegas UAB CVC S. d'Actes
6 Mon. Jan.30 th 18:00 -19:00 Project follow up: Training a CNN from scratch Ramon Baldrich/ David Vazquez UAB CVC S. d'Actes
6 Wed. Feb. 1st 16:00 -18:00  HOMEWORK   UAB  CVC S. d'Actes
7 Mon. Feb. 6th  16:00-19:00 Project Presentations         
8 Mon. Feb. 13th  16:00 -19:00 HOMEWORK        
8 Wed. Feb. 15th  16:00 -18:00


9 Mon. Feb. 20th 16:00 -19:00


Ramon Baldrich UAB CVC S. d'Actes

M3 Student Guide [here]