COURSE + LAB
Computer Vision 3
Deep Learning Applications for Computer Vision
Course Overview
This course introduces students to deep learning aimed at computer vision applications. The course approaches both supervised and unsupervised deep learning applications, together with neural network optimizations. It combines theoretical knowledge with practical hands-on experience through laboratory sessions.
Learning Objectives
- Understanding the basics of neural networks - architectures, training, optimization, inference
- Understanding the importance of datasets and their impact on the application results
- Understanding the evolution of different network layers and setups
- Understanding the applicability of supervised and unsupervised deep learning in different types of computer vision applications
- Practical mastering of the notions taught in the course through the implementation of software programs of medium complexity
- Solving concrete computer vision problems with the help of neural networks
Course Content
Module 1 Introduction
- General aspects of computer vision and its applications
- General context presentation
- Examples of deep learning applications that will be studied
Basic overview of the difference between procedural and object-oriented programming
Module 2 Deep Learning Fundamentals
- Neural network components: neurons, layers, activation functions, cost functions
- Training algorithms: forward propagation, backpropagation, optimizers, gradient descend, learning rate strategies
- Training strategies: (mini-)batch normalization, regularization, dropout
- Choosing and processing the correct data
- Examples and in-depth discussion of popular network architectures
Module 3 Supervised deep learning applications
- Supervised learning concepts
- Image classification
- Object detection
- Image segmentation
- Various applications
Module 4 Unsupervised deep learning applications
- Unsupervised learning concepts
- Autoencoders
- Variational autoencoders
- Generative Adversarial Networks
- Various applications
Prerequisites
- Basic computer programming in Python
- Algebra - partial derivatives
- Basic knowledge of working with GitHub
Assessment Methods
Lab Exam
50%
Practical examination covering lab material
Final Exam
50%
Theoretical examination covering all course material
Resources
Required Textbooks
- Neural Networks and Deep Learning by Michael A. Nielsen (2015)
-
Deep Learning
by Ian Goodfellow, Yoshua Bengio, Aaron Courville
(2016)
ISBN: 978-0262035613
Required Software
- Python 3.8 or later
- Jupter Notebook, PyCharm IDE or VS Code
Online Resources
-
Python Official Documentation
Comprehensive Python language reference -
Codecademy Python Course
Interactive Python learning platform -
Deep Learning Course
Intro on Neural Networks and Deep Learning
Course Information
Instructor
Schedule
Thursday 18:00-20:00
Location
Vodafone Inovation Hub, ETTI
Office Hours
Friday 13:00-15:00
Contact