Neural Networks and Deep Learning


IMPORTANT NOTICE:
This course will start on January 10, 2023, 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 attend the lectures and receive notifications about any change on course lectures, please register in this file by January 5th.


This course includes three modules of 3 CFUs each: the first module focuses on the theoretical foundations of neural networks and deep learning; the second module covers more advanced topics and recent research trends; the third module covers practical and implementation issues.

Course Program


Part I: Theoretical Foundations

  1. Introduction to neural computing
  2. Hopfield networks
  3. Unsupervised learning: PCA
  4. Unsupervised learning: Kohonen networks
  5. Clustering algorithms
  6. Reinforcement learning
  7. Supervised learning - part 1
  8. Supervised learning - part 2
  9. Radial Basis Function Networks
  10. Towards Deep Neural Networks (DNNs)
  11. Autoencoders
  12. Convolutional Neural Networks
  13. DNNs for object classification
  14. DNNs for object detection
  15. DNNs for image segmentation
  16. Recurrent Neural Networks
  17. Deep Reinforcement Learning
  18. Sample applications and open issues

Part II: Advanced Topics

  1. Generative Adversarial Networks (GANs)
  2. Capsule Networks
  3. Anchor-free dectection networks
  4. Deformable convolutions
  5. Model compression
  6. Semi-supervised learning
  7. Contrastive learning
  8. Towards trustworthy AI
  9. Adversarial attacks and defenses
  10. Explainable AI
  11. Natural Language Processing
  12. Transformers
  13. Models for real-time tracking

Part III: Implementation Issues

  1. Implementing neural networks in C
  2. Implementing Reinforcement Learning in C
  3. Implementing Backpropagation in C
  4. Frameworks for deep learning: Keras and Caffe
  5. Frameworks for deep learning: Tensorflow and Pytorch
  6. Functional components in autonomous driving
  7. The Apollo framework for Autonomous Driving
  8. Simulation environments for neural control
  9. Visual tracking with drones
  10. DNN optimization for embedded platforms
  11. Accelerating deep networks on GPGPUs
  12. GPU-based real-time neural vision
  13. Accelerating deep networks on FPGA
  14. Design and optimization of DNNs accelerators on FPGA

Projects


Suggested readings

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