Introduction
Ce guide vous prĂ©sente le Machine Learning avec GitHub Codespaces. Vous allez gĂ©nĂ©rer un classifieur dâimages simple, dĂ©couvrir certains des outils qui sont prĂ©installĂ©s dans GitHub Codespaces et trouver comment ouvrir votre codespace dans JupyterLab.
GĂ©nĂ©ration dâun classifieur dâimages simple
Nous allons utiliser un notebook Jupyter pour gĂ©nĂ©rer un classifieur dâimages simple.
Les notebooks Jupyter sont des ensembles de cellules que vous pouvez exĂ©cuter lâune aprĂšs lâautre. Le notebook que nous allons utiliser comprend un certain nombre de cellules qui gĂ©nĂšrent un classifieur dâimages Ă lâaide de PyTorch. Chaque cellule est une phase diffĂ©rente de ce processus : tĂ©lĂ©charger un jeu de donnĂ©es, configurer un rĂ©seau neuronal, entraĂźner un modĂšle, puis tester ce modĂšle.
Nous allons exĂ©cuter toutes les cellules, lâune aprĂšs lâautre, pour effectuer toutes les phases de gĂ©nĂ©ration du classifieur dâimages. Lorsque nous effectuons cette opĂ©ration, Jupyter enregistre la sortie dans le notebook pour vous permettre dâexaminer les rĂ©sultats.
CrĂ©ation dâun codespace
-
Accédez au dépÎt de modÚles github/codespaces-jupyter.
-
Cliquez sur Utiliser ce modĂšle, puis sur Ouvrir dans un codespace.
Un codespace pour ce modĂšle sâouvre dans une version web de Visual Studio Code.
Ouverture du notebook du classifieur dâimages
Lâimage conteneur par dĂ©faut utilisĂ©e par GitHub Codespaces inclut un ensemble de bibliothĂšques de Machine Learning prĂ©installĂ©es dans votre codespace. Par exemple, Numpy, pandas, SciPy, Matplotlib, seaborn, scikit-learn, Keras, PyTorch, Requests et Plotly. Pour plus dâinformations sur lâimage par dĂ©faut, consultez PrĂ©sentation des conteneurs de dĂ©veloppement et le rĂ©fĂ©rentiel devcontainers/images.
- Dans lâĂ©diteur VS Code, fermez tous les onglets « Bien dĂ©marrer. » qui sâaffichent.
- Ouvrez le fichier de notebook
notebooks/image-classifier.ipynb
.
GĂ©nĂ©ration du classifieur dâimages
Le notebook du classifieur dâimages contient tout le code dont vous avez besoin pour tĂ©lĂ©charger un jeu de donnĂ©es, entraĂźner un rĂ©seau neuronal et Ă©valuer ses performances.
-
Cliquez sur Exécuter tout pour exécuter toutes les cellules du notebook.
-
Si vous ĂȘtes invitĂ© Ă choisir une source de noyau, sĂ©lectionnez Environnements Python, puis sĂ©lectionnez la version de Python Ă lâemplacement recommandĂ©.
-
Faites dĂ©filer lâĂ©cran vers le bas pour voir la sortie de chaque cellule.
Ouverture de votre codespace dans JupyterLab
Vous pouvez ouvrir votre codespace dans JupyterLab Ă partir de la page « Vos codespaces » Ă lâadresse github.com/codespaces ou en utilisant GitHub CLI. Pour plus dâinformations, consultez « Ouverture dâun codespace existant ».
Lâapplication JupyterLab doit ĂȘtre installĂ©e dans le codespace que vous ouvrez. Lâimage conteneur de dĂ©veloppeur par dĂ©faut comprend JupyterLab, donc les codespaces créés Ă partir de lâimage par dĂ©faut ont toujours JupyterLab installĂ©. Pour plus dâinformations sur lâimage par dĂ©faut, consultez PrĂ©sentation des conteneurs de dĂ©veloppement et le rĂ©fĂ©rentiel devcontainers/images
. Si vous nâutilisez pas lâimage par dĂ©faut dans votre configuration de conteneur de dĂ©veloppement, vous pouvez installer JupyterLab en ajoutant le composant ghcr.io/devcontainers/features/python
Ă votre fichier devcontainer.json
. Vous devez inclure lâoption "installJupyterlab": true
. Pour plus d'informations, voir le LISEZMOI de la fonctionnalité python
, dans le référentiel devcontainers/features
.
Configuration de NVIDIA CUDA pour votre codespace
Remarque
Cette section ne s'applique qu'aux clients qui peuvent crĂ©er des espaces de code sur des machines utilisant un GPU. La possibilitĂ© de choisir un type de machine qui utilise un GPU a Ă©tĂ© proposĂ©e Ă une sĂ©lection de clients pendant une pĂ©riode dâessai. Cette option nâest pas en disponibilitĂ© gĂ©nĂ©rale.
Certains logiciels exigent que vous installiez NVIDIA CUDA pour utiliser le GPU de votre codespace. Dans ce cas, vous pouvez crĂ©er votre propre configuration personnalisĂ©e Ă lâaide dâun fichier devcontainer.json
et spĂ©cifier que CUDA doit ĂȘtre installĂ©. Pour plus dâinformations sur la crĂ©ation dâune configuration personnalisĂ©e, consultez PrĂ©sentation des conteneurs de dĂ©veloppement.
Pour obtenir les détails complets du script qui est exécuté lorsque vous ajoutez la fonctionnalité nvidia-cuda
, consultez le dépÎt devcontainers/features.
-
Dans le codespace, ouvrez le fichier
.devcontainer/devcontainer.json
dans lâĂ©diteur. -
Ajoutez un objet
features
de niveau supérieur avec le contenu suivant :JSON "features": { "ghcr.io/devcontainers/features/nvidia-cuda:1": { "installCudnn": true } }
"features": { "ghcr.io/devcontainers/features/nvidia-cuda:1": { "installCudnn": true } }
Pour plus dâinformations sur lâobjet
features
, consultez la spécification de conteneurs de développement.Si vous utilisez le fichier
devcontainer.json
Ă partir du dĂ©pĂŽt de classifieur dâimages que vous avez créé pour ce tutoriel, votre fichierdevcontainer.json
ressemble maintenant Ă ceci :{ "customizations": { "vscode": { "extensions": [ "ms-python.python", "ms-toolsai.jupyter" ] } }, "features": { "ghcr.io/devcontainers/features/nvidia-cuda:1": { "installCudnn": true } } }
-
Enregistrez la modification.
-
Accédez à la VS Code Command Palette (Maj+Commande+P / Ctrl+Maj+P), puis commencez à taper « regénérer ». Cliquez sur Codespaces : Regénérer le conteneur.
Conseil
Vous souhaiterez parfois effectuer une rĂ©gĂ©nĂ©ration complĂšte pour vider votre cache et rĂ©gĂ©nĂ©rer votre conteneur avec de nouvelles images. Pour plus dâinformations, consultez « RegĂ©nĂ©ration du conteneur dans un codespace ». Le conteneur de codespace est regĂ©nĂ©rĂ©. Ceci peut prendre plusieurs minutes. Une fois la regĂ©nĂ©ration terminĂ©e, le codespace est rouvert automatiquement.
-
Publiez votre modification dans un dĂ©pĂŽt afin que CUDA soit installĂ© dans tous les codespaces que vous crĂ©ez ensuite Ă partir de ce dĂ©pĂŽt. Pour plus dâinformations, consultez « CrĂ©ation dâun codespace Ă partir dâun modĂšle ».