Deep Learning course, 2nd year of Master (ISF App : 2019-26, MATH : 2023-26)

Teacher: Gabriel TURINICI


Summary:
1/ Deep learning: major applications, references, culture
2/ Types of approaches: supervised, reinforcement, unsupervised
3/ Neural networks: presentation of the objects: neurons, operations, loss function, optimization, architecture
4/ Focus on stochastic optimization algorithms, proof of convergence of SGD
5/ Convolutional neural networks (CNN): filters, layers, architectures
6/ Technique: back-propagation, regularization, hyperparameters
7/ Networks for sequences: RNN, LSTM, Attention, Transformer
8/ Generative networks (GAN, VAE)
9/ Programming environments for neural networks: TensorFlow, Keras, PyTorch and work on the examples covered in class
10/ Stable Diffusion, LLM
11/ AI Agents: what is « agentic »: definition, autonomy, reasoning, decision-making, agentic workflows
12/ AI Agents fundamentals: harness, tools, skills, memory, context, planning, reasoning and action
13/ AI Agents: coding and evaluation: coding an agent, packages, frameworks, tool integration, architectures, evaluation, reliability and observability
14/ Ethical and alignment perspectives: safety, autonomy, human oversight, accountability, transparency and alignment


Documents
MAIN document (theory) and Agentic implementations : see your teams channel
(no distribution is authorized without WRITTEN consent from the author)
for back-propagationSGD convergence proof
Implementations
Function approximation by NN : notebook version, Python version
Results (approximation & convergence)

After 5 times more epochs
Official code reference https://doi.org/10.5281/zenodo.7220367
Pure python (no keras, no tensorflow, no Pytorch) implementation (cf. also theoretical doc):
– version « to implement » (with Dense/FC layers) (bd=iris),
– version : solution

If needed: iris dataset here
Implementation : keras/Iris , pytorch

(tensorflow) CNN example: https://www.tensorflow.org/tutorials/images/cnn
Pytorch example CNN/MNIST : python and notebook versions.

Todo : use on MNIST, try to obtain high accuracy on MNIST, CIFAR10.
VAE: latent space visualisation : CVAE – python (rename *.py) , CVAE ipynb version
Stable diffusion:

Working example jan 2025: python version, Notebook version

Old working example 19/1/2024 on Google collab: version : notebook, (here python, rename *.py). ATTENTION the run takes 10 minutes (first time) then is somehow faster (just change the prompt text).