Course detail

Convolutional Neural Networks

FIT-KNNAcad. year: 2019/2020

Solutions based on machine learning approaches gradually replace more and more hand-designed solutions in many areas of software development, especially in perceptual task focused on information extraction from unstructured sources like cameras and microphones. Today, the dominant method in machine learning is neural networks and their convolutional variants. These approaches are at the core of many commercially successful applications and they push forward the frontiers of artificial intelligence.

Learning outcomes of the course unit

Students will gain basic knowledge of convolutional neural networks, their training (optimization), their building blocks and of the tools and software frameworks used to implement them. Students will gain insights in what factors determine accuracy of networks in real applications including data sets, loss functions, network structure, regularization, optimization, overfitting and multi-task learning. They will receive an overview of state-of-the-art networks in a range of computer vision tasks (classification, object detection, segmentation, identification), speech recognition, language understanding, data generation and reinforcement learning.
Students will acquire team work experience during project work and they will acquire basic knowledge of python libraries for linear algebra and machine learning.

Prerequisites

Basics of linear algebra (multiplication of vectors and matrices), differential calculus (partial derivatives, chain rule), Python and intuitive understanding of probability (e.g. conditional probability). Any knowledge of machine learning and image processing is an advantage.

Co-requisites

Not applicable.

Recommended optional programme components

Not applicable.

Recommended or required reading

Goodfellow, I., Bengio, Y., Courville, A.: Deep Learning. MIT Press, 2016.
Li, Fei-Fei, et al.: CS231n: Convolutional Neural Networks for Visual Recognition. Stanford, 2018.
Bishop, C. M.: Pattern Recognition, Springer Science + Business Media, LLC, 2006, ISBN 0-387-31073-8.

Planned learning activities and teaching methods

Not applicable.

Assesment methods and criteria linked to learning outcomes

  • Project concluded by public presentation - 65 points.
  • Three tests during the semester - 35 points.

Exam prerequisites:
Acquiring at least 50 points.

Language of instruction

Czech

Work placements

Not applicable.

Aims

Basic knowledge of convolutional neural networks, their capabilities and limitations. Practical applications mostly in computer vision tasks and completed by task from speech recognition and language processing. To allow students to design overall solutions using convolutional networks in practical applications including network architectures, optimization, data collection and testing and evaluation.

Classification of course in study plans

  • Programme MITAI Master's

    specialization NADE , any year of study, summer semester, 5 credits, elective
    specialization NBIO , any year of study, summer semester, 5 credits, compulsory
    specialization NGRI , any year of study, summer semester, 5 credits, elective
    specialization NNET , any year of study, summer semester, 5 credits, elective
    specialization NVIZ , any year of study, summer semester, 5 credits, compulsory
    specialization NCPS , any year of study, summer semester, 5 credits, elective
    specialization NSEC , any year of study, summer semester, 5 credits, elective
    specialization NEMB , any year of study, summer semester, 5 credits, elective
    specialization NHPC , any year of study, summer semester, 5 credits, elective
    specialization NISD , any year of study, summer semester, 5 credits, elective
    specialization NIDE , any year of study, summer semester, 5 credits, elective
    specialization NISY , any year of study, summer semester, 5 credits, elective
    specialization NMAL , any year of study, summer semester, 5 credits, compulsory
    specialization NMAT , any year of study, summer semester, 5 credits, elective
    specialization NSEN , any year of study, summer semester, 5 credits, elective
    specialization NVER , any year of study, summer semester, 5 credits, elective
    specialization NSPE , any year of study, summer semester, 5 credits, compulsory

Type of course unit

 

Lecture

26 hours, optionally

Teacher / Lecturer

Syllabus

  1. Introduction, linear models. loss function, learning algorithms and evaluation. (Organizationbasics of neural networksnumpy tutorial)
  2. Fully connected networks, loss functions for classification and regression. (PyTorch simple regression,  Image Classification
  3. Convolutional networks, locality in equivariance of computation. (Lecture)
  4. Generalization, regularization, data augmentation. multi-task learning and pre-training. (Optimizers)
  5. Problems during network optimization and batch normalization. Existing image classification network architectures. (Image classification networks)
  6. Object detection: MTCNN face detector, R-CNN, Fast R-CNN, Faster R-CNN, YOLO, SSD.
  7. Semantic and instance segmentation. Connections to estimation of depth, surface normals, shading and motion.
  8. Learning similarity and embedding. Person identification. 
  9. Recurrent networks and sequence processing (text and speech). Connectionist Temporal Classification (CTC). Attention networks.
  10. Language models. Basic image captioning networks, question answering and language translation.
  11. Generative models. Autoregressive factorization. Generative Adversarial Networks (GAN, DCGAN, cycle GAN).
  12. Reinforcement learning. Deep Q-network (DQN) and policy gradients.
  13. Overview of emerging applications and cutting edge research.

Project

26 hours, compulsory

Teacher / Lecturer

Syllabus

Team project (2-3 students).
Individual assignments - proposed by students, approved by the teacher. Components:

  • Problem Formulation, team formation.
  • Research of existing solutions and usefull tools.
  • Baseline solution and evaluation proposal.
  • Data collection.
  • Experiments, testing and gradual improvement.
  • Final report and Presentation of the project.

eLearning