Travaux dirigés de deep learning. Il est conseillé de mettre en place un environnement virtuel avec Mamba (à installer avec Miniforge) ou préférentiellement uv avec:
curl -LsSf https://astral.sh/uv/install.sh | sh
NB: PyTorch ne maintient plus les packages conda depuis octobre 2024. Il reste possible d'utiliser des environnements conda/mamba et pip. De plus, il existe encore des packages conda-forge de PyTorch maintenus par la communauté.
Initiation à la syntaxe et aux bases de PyTorch avec:
- l'implémentation du jeu "fizz buzz" par apprentissage
- manipulation et visualisation d'un ensemble de données visuelles
- apprentissage de portes logiques par un modèle neuronal
uv venv --python=3.11 # python version >= 3.9; une version trop récente peut poser problème pour certains projets (pas les TD)
source .venv/bin/activate
uv pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu
uv pip install matplotlibSi vous avez une GPU, il faut préalablement installer les drivers NVIDIA (et redémarrer votre machine). Avec e.g. ubuntu:
ubuntu-drivers devices # --> liste des drivers disponibles
sudo apt install nvidia-driver-535
puis (ici avec CUDA 11.8; autres versions possibles sur le site de PyTorch)
uv pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118
- Apprentissage de chiffres manuscrits sur MNIST avec un MLP, un CNN et un (bi)LSTM
- Visualisation des feature maps d'un CNN
- Calcul de l'occupation mémoire d'un modèle
- Transfert d'apprentissage entre ImageNet et un petit problème cible.
- Étude du réglage fin (fine tuning) du réseau.
uv pip install scikit-learn timmtimm fournit des modèles de vision par ordinateur
- Modèle génératif (GAN) sur des nuages de points 2D et 3D
- Inférence avec le framework de deep learning embarqué Aidge
uv pip install absl-py onnxPour l'inférence avec le framework Aidge on peut installer un environnement séparé:
git clone https://gitlab.eclipse.org/eclipse/aidge/aidge.git
cd aidge
uv venv --python 3.11
source .venv/bin/activate
uv pip install -r default_module_install.txt
uv pip install aidge-core aidge-backend-cpu
uv pip install PyQt5 # PyQt6 en Python 3.12
# il faut re-charger l'environnement *aidge* puis tester avec
python -c "import aidge_core; import aidge_backend_cpu; print(aidge_core.Tensor.get_available_backends())"
Pour les mesures en transport optimal:
uv pip install geomloss- apprentissage RNN et LSTM sur des mots (lettres)
- monitoring avec tensorboard
uv pip install tensorboard torch-tb-profiler