The course would present advanced concepts of machine learning and their application in computer vision via deep neural network (DNN) models. It would include theory and practical coding, as well as a final hands-on project.
In a first part of the course, I would introduce state-of-the-art DNN models for classification, showing how to estimate which objects are within an image. I would then showcase regression, as applied to detection (where the objects are in the image), pose estimation (whether people stand, sit or crunch) and re-identification (estimating a unique vector representation for each person). I would further discuss DNNs for multi-task objectives (joint detection, pose estimation, re-identification, segmentation, depth estimation etc). This first part would include DNNs which apply to video sequences, by leveraging memory (e.g. LSTMs) or attention (Transformers).
In a second part of the course, I would discuss the neural network training and the preparation of data in more details. Further to transfer learning (how pre-trained models may be deployed for other tasks), I would discuss multi-modal (with different sensor modalities such as depth or thermal cameras) and self-supervision (e.g. training the DNN model by solving jigsaw puzzles) to auto-annotate large amounts of data.
Finally, I would present domain adaptation (e.g. apply daytime-detectors for night vision) and meta-learning, a most recent framework to learn how to learn a task, e.g. online or from little available data.
Further to the course slides, most of the course material would be available online, as books, papers and blogs, which slides would refer to.
Course material include:
- Christopher Bishop, 2006. Pattern Recognition and Machine Learning.
- Yann LeCun, Yoshua Bengio, Geoffrey Hinton, Nature 2015 Deep Learning.
- Ian Goofellow, Yoshua Bengio, Aaron Courville, 2017. Deep Learning.
- Li Deng, Dong Yu, 2014. Deep Learning: Methods and Applications
- Andrew Ng, 2019. Machine Learning Yearning
- Richard Szeliski, 2010. Computer Vision: Algorithms and Applications
Lectures with blackboard and slides, code and project assignments and discussions
Evaluation of the course assignments, a final course project and a written exam.