Neural Networks and Deep Learning


IMPORTANT NOTICE:
This course will start on January 13, 2026, at 9:00.
Lectures will be opened to everybody and will be given online on the following channel.
Please, connect 10 minutes before 9:00 to avoid disturbing the lecture.

Registration

To access the channel of the lectures and receive notifications about any change on course lectures, please register here by December 15th.


Certification of attendance

If you need a certification of attendance, be aware that the number of hours that will be certified are those recorded by Teams.


Course Program and Lectures Schedule

This course includes four modules:
  1. The first module (30 hours) focuses on the theoretical foundations of neural networks, including deep learning and convolutional networks.
  2. The second module (20 hours) focuses on advanced topics, including transformers, deep RL, semi-supervised learning, and generative networks.
  3. The third module (20 hours) focuses on how to make deep networks more trustworthy, interpretable, and secure.
  4. The fourth module (30 hours) covers practical and implementation issues.


Part I: Theoretical Foundations

  1. Introduction to neural computing
  2. Hopfield networks
  3. Unsupervised learning: PCA
  4. Unsupervised learning: Self-Organizing Maps
  5. Clustering algorithms
  6. Reinforcement learning
  7. Supervised learning and Backpropagation
  8. Performance metrics
  9. Radial Basis Function Networks
  10. Towards Deep Neural Networks (DNNs)
  11. Autoencoders
  12. Convolutional Neural Networks (CNNs)
  13. CNNs for object classification
  14. CNNs for object detection
  15. CNNs for image segmentation

Part II: Advanced Topics

  1. Recurrent neural networks
  2. Natural language processing
  3. Word embedding and attention mechanism
  4. Transformers
  5. Deep reinforcement learning
  6. Semi-supervised learning
  7. Special deep learning models
  8. Neural networks for multi-object tracking
  9. Generative networks

Part III: Trustworthy AI

  1. Explainable and Interpretable AI
  2. Anomaly and out-of-distribution detection methods
  3. Domain generalization and domain adaptation
  4. Attention mechanisms in computer vision
  5. Adversarial attacks and defenses
  6. Real-world attacks and defenses
  7. Simulators for autonomous driving
  8. Hardware in the loop simulation
  9. Functional components in autonomous driving
  10. The Autoware framework for autonomous driving

Part IV: Implementation Issues

  1. Implementing neural networks in C
  2. Programming frameworks for deep learning
  3. Modeling DNNs in Tensorflow and PyTorch
  4. GPU programming in CUDA
  5. Accelerating deep networks on GPGPUs
  6. DNN optimization for embedded platforms
  7. The NVIDIA TensorRT framework
  8. Accelerating deep networks on FPGA
  9. The Xilinx Deep Processing Unit

Exam

The exam (for those that need to take it) consists in a project development. The project is one, independently on the number of modules attended, but the number of hours that will be certified are those recorded by Teams. The completion of the exam requires the project discussion and the delivery of the project code, including a report describing the work done. Please, read carefully the project rules in the link below.

Suggested readings

Books Introductory readings For those who like to look into the future