Deep neural networks have become essential for many learning tasks, particularly in vision (object classification and detection, photorealistic image generation) and natural language processing (speech recognition, machine translation, text generation). Their remarkable ability to extract useful information from very large datasets makes them a tool of choice for industrial applications in computer science, physics, chemistry, and the automotive sector.

This course offers an in-depth presentation of the practical and theoretical aspects of deep learning and will provide students with expertise in implementing these models using Python/PyTorch (implementation, debugging, visualization). Additionally, an analysis of the theoretical foundations of deep learning (automatic differentiation, universality theorems, stability during training, equivariant models) will complement the practical approach, enabling a deeper understanding of the strengths and weaknesses of these learning models.