À la fin de ce chapitre, vous saurez :
Pour installer proprement PyTorch et les bibliothèques nécessaires, nous allons d’abord créer un environnement virtuel.
Un environnement virtuel (ou Virtual Environment en anglais) est un dossier isolé dans lequel on peut installer des bibliothèques Python sans interférer avec le reste du système.
En pratique, cela permet :
C’est une pratique essentielle pour tous les projets en Machine Learning.
venv est disponibleLe module venv, inclus normalement avec Python 3, permet de créer un environnement virtuel. Avant de l’utiliser, vous pouvez vérifier s’il est installé en tapant la commande suivante dans votre terminal :
python3 -m venv --help
venv est introuvable. Dans ce cas, installez-le avec :sudo apt install python3-venv
Pour créer un environnement virtuel, vous pouvez utiliser la commande suivante dans votre terminal :
python -m venv nom_de_l_environnement --system-site-packages
où nom_de_l_environnement est le nom que vous souhaitez donner à votre environnement virtuel et --system-site-packages permet d'accéder aux paquets installés sur votre système global (utile pour réutiliser des bibliothèques déjà installées comme numpy ou matplotlib).
Placez-vous dans le dossier de travail de votre projet (par exemple cours_dl/), puis créez un environnement virtuel avec :
python3 -m venv nom_de_l_environnement
Cela crée un sous-dossier nommé nom_de_l_environnement contenant une version isolée de Python. Par exemple, si vous nommez votre environnement env_dl, vous aurez un dossier env_dl dans votre répertoire de travail.
Vous devez ensuite activer l’environnement pour l’utiliser en tapant dans votre terminal :
source nom_de_l_environnement/bin/activate
Vous saurez que l'environnement est activé lorsque le nom de l'environnement apparaîtra entre parenthèses au début de votre invite de commande dans le terminal.
Pour désactiver l'environnement virtuel, vous pouvez utiliser la commande :
deactivate
Une fois l’environnement virtuel activé, vous pouvez installer PyTorch et les bibliothèques associées. Mais avant d’installer PyTorch, faisons un petit point sur ce que la bibliothèque apporte. PyTorch est une bibliothèque Python très utilisée en deep learning. Elle permet de :
👉 Dans ce cours, PyTorch sera notre outil principal pour manipuler des données et entraîner des modèles.
💡 CPU, GPU et CUDA en deux mots
👉 Pas d’inquiétude si vous n’avez pas de GPU : PyTorch fonctionne aussi très bien sur CPU, simplement plus lentement.
PyTorch propose différentes versions adaptées à divers systèmes d'exploitation et configurations matérielles (CPU, GPU). Dans ce cours, nous utiliserons la version de PyTorch compatible par défaut avec GPU. Cependant, cette version fonctionnera sur toutes les machines (avec ou sans GPU).
Dans le terminal (dans lequel l'environnement virtuel est activé), tapez :
pip install torch torchvision torchaudio
Cela installera :
Vous pouvez afficher la liste des bibliothèques installées dans l’environnement virtuel avec :
pip freeze
Cela vous permettra de voir les versions exactes de torch, torchvision, etc.
Vous pouvez maintenant tester l’installation de PyTorch avec ce petit script Python :
import torch
print("Version de PyTorch :", torch.__version__)
print("CUDA disponible ? :", torch.cuda.is_available())
torch.cuda.is_available() renvoie False, cela signifie que votre machine n’a pas de GPU compatible CUDA ou qu'elle n'a probablement pas accès au GPU car les pilotes CUDA/cuDNN ne sont pas correctement installés.Vous pouvez toujours utiliser PyTorch sur CPU, mais le temps d'entraînement sera plus long notamment pour les modèles complexes.
Pour utiliser PyTorch avec un GPU, il ne suffit pas d’installer la bibliothèque torch. Votre système doit aussi disposer des pilotes NVIDIA et de CUDA/cuDNN qui permettent à PyTorch de dialoguer avec la carte graphique.
⚠️ Remarque importante pour les PC de l’IUT
Avant d'installer quoi que ce soit, vérifiez si les pilotes NVIDIA sont déjà installés sur votre système. Vous pouvez utiliser la commande suivante dans un terminal :
nvidia-smi
Mettez d’abord à jour la liste des paquets, puis installez les pilotes recommandés :
sudo apt update
sudo apt install nvidia-driver-Numero_de_version
sudo apt install nvidia-cuda-toolkit
(Le numéro de version peut varier selon votre GPU. Vous pouvez vérifier la version conseillée en tapant ubuntu-drivers devices dans un terminal. Il sera marqué "recommended" devant le pilote recommandé.)
Redémarrez votre ordinateur après l’installation des pilotes.
Dans la plupart des cas, PyTorch télécharge automatiquement les bons binaires CUDA/cuDNN avec la commande pip install torch ....
Il n’est donc pas obligatoire d’installer CUDA séparément.
Cependant, si vous souhaitez installer CUDA manuellement (option avancée qu'il vaut mieux éviter), vous pouvez télécharger l’installateur depuis : https://developer.nvidia.com/cuda-downloads
Relancez la commande :
nvidia-smi
Vous devez voir apparaître les informations sur votre GPU et la version du pilote installée.
À ce stade, PyTorch pourra utiliser le GPU si installé avec la bonne version CUDA. Pour vous en assurer, vous pouvez relancer le script Python de vérification :
import torch
print("Version de PyTorch :", torch.__version__)
print("CUDA disponible ? :", torch.cuda.is_available())
Si torch.cuda.is_available() renvoie True, PyTorch est prêt à utiliser le GPU.
Sinon, supprimez PyTorch et réinstallez-le en vous assurant de choisir la bonne version CUDA.
Pour cela, vous pouvez taper dans un terminal :
pip uninstall torch torchvision torchaudio
Avant de le réinstaller, il est important de vérifier la version de CUDA supportée par votre GPU.
Pour cela, utilisez la commande suivante :
nvidia-smi
11.8, vous devrez installer PyTorch avec cu118 :pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
Une fois l’installation terminée, relancez Python et vérifiez :
import torch
print("Version de PyTorch :", torch.__version__)
print("CUDA disponible ? :", torch.cuda.is_available())
Si torch.cuda.is_available() renvoie True, PyTorch est prêt à utiliser le GPU.
CUDA_VISIBLE_DEVICESSi vous obtenez l'erreur suivante "CUDA initialization: CUDA unknown error - this may be due to an incorrectly set up environment, e.g. changing env variable CUDA_VISIBLE_DEVICES after program start. Setting the available devices to be zero., etc." après une mise en veille, il faut taper dans un terminal les commandes suivantes pour résoudre le problème :
sudo rmmod nvidia_uvm
sudo modprobe nvidia_uvm
nvtopLorsque l’on entraîne un modèle de deep learning sur GPU, il est souvent utile de visualiser en temps réel l’utilisation de la carte graphique (mémoire, charge de calcul, processus en cours).
Pour cela, vous pouvez installer l’outil nvtop :
sudo apt install nvtop
Ensuite, lancez la commande :
nvtop
Vous verrez une interface en temps réel indiquant :
👉 C’est l’équivalent de la commande top mais pour le GPU. Cette commande est très utile pour vérifier que PyTorch utilise bien votre carte graphique lors des entraînements.
Pour coder les TPs, vous pouvez utiliser VSCode ou Jupyter Notebook. Jupyter Notebook est un environnement interactif très utilisé en Python, idéal pour le deep learning. Il permet d’exécuter du code par blocs, de visualiser les résultats immédiatement et de documenter le travail dans le même fichier.
Pour installer Jupyter, vous devrez d'abord vous assurer que l'environnement virtuel est activé, puis exécuter la commande suivante :
pip install notebook
L’installation inclut notebook ainsi que tous les outils nécessaires pour exécuter des blocs Python.
Créer un dossier pour les notebooks, par exemple cours_dl/notebooks/.
Ensuite, placez-vous dans ce dossier avec la commande cd :
cd cours_dl/notebooks/
Pour démarrer Jupyter Notebook dans le dossier courant, assurez-vous d'avoir activé l'environnement virtuel, puis tapez :
jupyter notebook
Shift + Enter.
Pour vérifier que Jupyter utilise bien votre virtualenv avec PyTorch installé, créez une cellule et tapez :
import torch
print("Version de PyTorch :", torch.__version__)
print("CUDA disponible ? :", torch.cuda.is_available())
Si tout est correct, vous devriez voir la version de PyTorch et l'état de CUDA s'afficher sans erreur.
Pour renommer le notebook, cliquez sur le nom par défaut (généralement Untitled) en haut à gauche, puis entrez un nouveau nom, par exemple test_installation.ipynb.
Cela vous permettra de garder une trace de vos notebooks et de les organiser facilement.
Pour approfondir vos connaissances et trouver des réponses rapides, voici quelques ressources fiables et pertinentes pour ce cours :
https://jupyter-notebook.readthedocs.io/en/stable/examples/Notebook/Notebook%20Basics.html
python) : https://stackoverflow.com/questions/tagged/pythonCes liens vous permettront de consulter des exemples, de comprendre les erreurs et de rester à jour sur les dernières fonctionnalités.