About the Course

The discipline proposes using Machine Learning concepts, focused on Deep Learning with a theoretical and practical approach. In addition to the theoretical load, students are required to develop original projects based on state of the art in focus. Projects are usually related to applications and deep learning models. In the case of applications, students can use models covered in class applied to solve problems related to their research projects or their work in the industry. Students can also develop a new model or adapt existing models and use them to classic problems. The projects must present measurable results and compare with state of the art in the literature.

The quality of the works developed during the course is highlighted by the original publications generated. In the last two editions of the discipline, several students published their projects at the International Joint Conference on Neural Networks, the largest and most prestigious conference in ​​Artificial Neural Networks and International Conference on Artificial Neural Networks. Some projects also have been published in international journals.n essential field of Machine Learning based on computer algorithms for data representations at multiple abstraction levels. These representations involve a hierarchy of features or concepts where higher-level representations are defined from lower-level ones. The same lower-level representations help define higher-level ones. Deep learning uses artificial neural networks with many layers and large datasets to training algorithms on how to solve perceptual problems, such as detecting recognizable concepts in data, translating or understanding natural languages, interpreting information from input data, and more. Deep Artificial Neural Networks have recently won numerous contests in Pattern Recognition and Machine Learning.

Course Notes

The course notes are available here.

Grading Policy

Course Project

Course Planning Schedule

1 Course Overview
2 Neural Networks Review
3 Feature and Representation Learning
4 PyTorch (Practical)
5 Training, Optimization and Regularization of Neural Networks
6 TensorFlow (Practical)
7 Projects and Seminars Definition
8 Convulational Neural Networks
9 Computer Vision (Practical)
10 Convulational Neural Networks
11 Recurrent Neural Networks
12 Natural Language Processing (Practical)
13 Vizualizing and Understanding
14 Seminars (Base of the projects)
15 Seminars (Base of the projects)
16 Seminars (Base of the projects)
17 Seminars (Base of the projects)
18 Seminars (Base of the projects)
19 Unsupervised Models
20 Generative Models
21 Generative Models (Practical)
22 Partial Evaluation (Project)
23 Reinforcement Learning
24 Project Monitoring
25 Partial Evaluation (Project)
26 Project Monitoring
27 Project Monitoring
28 Project Monitoring
29 Projects Panel (Final)
30 Projects Panel (Final)
31 Projects Panel (Final)


  • Proficiency in Python
  • Machine Learning knowledge
  • Basic Probability and Statistics