20810549-2 - DESIGN OF LEARNING ALGORITHMS

The main objective of the course is to provide students with a solid theoretical basis on the design and implementation of machine learning algorithms. Students will learn to design and implement supervised, unsupervised, and reinforcement learning algorithms, and to apply nonlinear optimization principles to improve the performance of machine learning algorithms. Upon completion of the course, students will be able to design and implement customized learning algorithms for specific problems and domains.

Curriculum

teacher profile | teaching materials

Programme

Introduction to optimization theory
Non-linear optimization: the problem of local minima
Preparation of data for correct training of the neural system
Supervised training: backpropagation algorithm for calculating the gradient of the error function of an MLP
Creation of the backpropagation algorithm in C/C++ from scratch
Gradient Descent training algorithm
Implementation of the Gradient Descent algorithm in C/C++ from scratch
Stochastic Gradient Descent training algorithm
Implementation of the Stochastic Gradient Descent algorithm in C/C++ from scratch
Levenberg-Marquardt training algorithm
Implementation of the Levenberg-Marquardt algorithm in C/C++ from scratch
Training with genetic algorithms and swarm intelligence
Unsupervised training
Reinforcement training

Core Documentation

Dive into deep learning
https://d2l.ai/

Reference Bibliography

Dive into deep learning https://d2l.ai/

Attendance

Attendance is optional but highly recommended.

Type of evaluation

Design and implementation of a specific training algorithm/system

teacher profile | teaching materials

Programme

Introduction to optimization theory
Non-linear optimization: the problem of local minima
Preparation of data for correct training of the neural system
Supervised training: backpropagation algorithm for calculating the gradient of the error function of an MLP
Creation of the backpropagation algorithm in C/C++ from scratch
Gradient Descent training algorithm
Implementation of the Gradient Descent algorithm in C/C++ from scratch
Stochastic Gradient Descent training algorithm
Implementation of the Stochastic Gradient Descent algorithm in C/C++ from scratch
Levenberg-Marquardt training algorithm
Implementation of the Levenberg-Marquardt algorithm in C/C++ from scratch
Training with genetic algorithms and swarm intelligence
Unsupervised training
Reinforcement training

Core Documentation

Dive into deep learning
https://d2l.ai/

Reference Bibliography

Dive into deep learning https://d2l.ai/

Attendance

Attendance is optional but highly recommended.

Type of evaluation

Design and implementation of a specific training algorithm/system