VŠE - 4IZ582

Programming for AI and Data Science

COURSE DESCRIPTION

An introduction to the theory and practice of deep learning.

The course shows how a neural network learns from data (loss functions, gradient descent, backpropagation) and how to train one in practice with PyTorch. We then move to image data: convolutional networks, classic architectures, transfer learning with pretrained models, object detection (YOLO), semantic segmentation (U-Net) and image retrieval. The course consists of lectures and hands-on labs in Python, using Google Colab.

Please note: Our lectures cover only a part of the 4IZ582 course. The remaining lectures are given by other lecturers from VŠE and by external guest speakers. Refer to the official course page and your timetable for the complete programme and the exam requirements.

VICE CHANCELLOR

The official course page.

COURSE SCHEDULE [2026/2027]

  • Lectures: online on Zoom.
  • Labs: in person. Venue: VŠE

11.11. - 09:15,11:00,12:30 labs IN-PERSON

11.11. - 18:00 lecture IN-PERSON

18.11. - 09:15,11:00,12:30 labs IN-PERSON

18.11. - 18:00 lecture IN-PERSON

25.11. - 09:15,11:00,12:30 labs IN-PERSON

02.12. - 09:15,11:00,12:30 labs IN-PERSON

The lecture take place online on Zoom.

COURSE OUTLINE

  • Lecture 0, Introduction: what deep learning can do today (vision, language, generation and understanding of sound, image and video), a short history of neural networks.
  • Lecture 1, Learning from data: supervised learning, loss functions and maximum likelihood, gradient descent and loss landscapes, backpropagation, vanishing gradients and initialization, activation functions, mini-batch SGD, momentum and Adam, overfitting and train/validation/test split, PyTorch building blocks (tensors, autograd, nn.Module, optimizers, DataLoader).
  • Lecture 2, Image models: overfitting remedies (early stopping, dropout, batch normalization, augmentation), convolution, pooling and receptive field, classic architectures (LeNet, AlexNet, VGG, ResNet), transfer learning, object detection and YOLO (IoU, NMS, mAP), U-Net segmentation, image retrieval.

Course handouts - slides in HTML

RECOMMENDED LITERATURE

  • D. V. Godoy, Deep Learning with PyTorch Step-by-Step: A Beginner’s Guide, Leanpub, 2022 - link
  • S. J. D. Prince, Understanding Deep Learning, MIT Press, 2023 - link
  • I. Goodfellow, Y. Bengio, A. Courville, Deep Learning, MIT Press, 2016 - link
  • PyTorch documentation and tutorials - link

MATERIALS FOR LABS

Will be published during the semester.

Lab 1 - 4IZ58201 - 11. 11. 2026

linear regression from scratch in NumPy (model, loss, gradients, update)

Lab 2 - 4IZ58202 - 18. 11. 2026

PyTorch basics: tensors, autograd, optimizer, loss, nn.Module, Dataset and DataLoader, validation, checkpoints

Lab 3 - 4IZ58203 - 25. 11. 2026

PyTorch Lightning, overfitting, CNN image classification (Rock-Paper-Scissors)

Lab 4 - 4IZ58204 - 02. 12. 2026

transfer learning, face detection, object detection with YOLO, image retrieval, U-Net

LABS

We take a step into deep learning using Python and PyTorch. You should know the basics of Python.

Questions: novozamsky@utia.cas.cz.

The exercises will be in Czech, but all materials and texts will be in English.

REQUIREMENTS

Google account (for Colab), browser, basic Python.

LABS START HERE!

At the beginning of every lab session you receive a link for a Colab notebook. It contains all codes for online/offline studying.

  1. Get a link from your teacher - in MATERIALS FOR LABS
  2. Save it to your Google Drive
  3. Edit the notebook
  4. Save it

Search