For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/fr/guides/public-cloud/ai-machine-learning/ai-notebooks-finetune-model-export-onnx.md.

AI Notebooks - Tutoriel - Fine-Tuner et exporter un modèle d'IA au format ONNX

Voir en Markdown

Apprendre comment entraîner et exporter un modèle PyTorch au format ONNX pour une inférence optimisée

Objectif

L'objectif de ce tutoriel est de vous montrer comment fine-tuner un modèle PyTorch et l'exporter au format ONNX (Open Neural Network Exchange).

Pour cela, nous utilisons un modèle de classification d'images : DenseNet.

Info

Les modèles DenseNet sont pré-entraînés sur le dataset ImageNet.

L'objectif est de fine-tuner un modèle DenseNet121 pour classifier des images de la vie quotidienne avec le dataset CIFAR-10. Il est composé de 10 classes :

  • avion
  • automobile
  • oiseau
  • chat
  • cerf
  • chien
  • grenouille
  • cheval
  • bateau
  • camion

Trouvez plus d'informations sur le dataset CIFAR-10 via le lien suivant.

À la fin de l'entraînement, le modèle DenseNet est sauvegardé au format PyTorch (.pth). Il sera ensuite transformé en ONNX.

Exporter votre modèle au format ONNX vous permet d'optimiser l'inférence d'un modèle de Machine Learning.

DenseNetToONNX

Prérequis

  • Un projet AI Notebooks créé au sein d'un projet Public Cloud dans votre compte OVHcloud
  • Un utilisateur pour AI Notebooks
  • Un compte Kaggle pour télécharger le dataset

Accès à l'espace client OVHcloud

  • Lien direct :
  • Pour accéder à vos services : Public Cloud > Sélectionnez votre projet

En pratique

Vous pouvez lancer le notebook depuis l' ou via la CLI ovhai.

Lancer un notebook Jupyter avec « Conda » via l'interface (espace client)

Pour lancer votre notebook depuis l', suivez les étapes ci-dessous.

Éditeur de code

Choisissez l'éditeur de code Jupyterlab.

Framework

Dans ce tutoriel, le framework conda est utilisé.

Ressources

L'utilisation de GPU est recommandée pour entraîner le modèle de classification d'images : densenet121.

Info

Ici, l'utilisation d'1 GPU est suffisante.

Lancer un notebook Jupyter avec « conda » via la CLI

Si vous n'utilisez pas encore notre CLI, suivez ce guide pour l'installer.

Si vous souhaitez lancer votre notebook avec l'OVHcloud AI CLI, choisissez l'éditeur jupyterlab et le framework conda.

Pour accéder aux différentes versions de conda disponibles, exécutez la commande suivante :

ovhai capabilities framework get conda -o yaml

Vous devrez également choisir le nombre de GPU à utiliser dans votre notebook, à l'aide de <nb-gpus>.

Pour lancer votre notebook, exécutez la commande suivante :

ovhai notebook run conda jupyterlab \
		--name <notebook-name> \
		--framework-version conda-py310-cuda11.8-v22-4 \
		--gpu <nb-gpus>

Vous pourrez ensuite accéder à l'URL de votre notebook une fois celui-ci en cours d'exécution.

Accéder aux notebooks

Une fois notre dépôt d'exemples AI cloné dans votre environnement, retrouvez le tutoriel de fine-tuning en suivant ce chemin : ai-training-examples > notebooks > go-further > onnx > notebook_finetune_densenet_export_onnx.ipynb.

Un aperçu de ce notebook est disponible sur GitHub ici.

Aller plus loin

Il existe de nombreuses autres tâches dans le domaine de la computer vision. Consultez nos autres tutoriels pour apprendre à :

Pour une formation ou une assistance technique sur la mise en œuvre de nos solutions, contactez votre commercial ou consultez la page Professional Services pour obtenir un devis et faire analyser votre projet par nos experts.

Votre avis nous intéresse !

N’hésitez pas à nous faire part de vos questions, retours et suggestions pour améliorer le service :

Cette page vous a-t-elle aidé ?