Cursus
Vous êtes-vous déjà senti dépassé par la mise en place d'un environnement d'apprentissage automatique que vous pouvez utiliser pour vos expériences ou votre parcours d'apprentissage ?
Amazon SageMaker Studio Lab est peut-être exactement ce qu'il vous faut. Il s'agit d'un environnement de développement gratuit, basé sur un navigateur, créé par AWS pour rendre l'apprentissage automatique plus accessible. Aucun compte AWS n'est nécessaire. Pas d'installation de facturation. Il vous suffit de vous connecter et de commencer à coder.
En tant que personne travaillant régulièrement avec des outils de ML, j'ai trouvé Studio Lab particulièrement utile pour les expériences rapides, la construction de démos ou l'exécution de modèles légers sans avoir à mettre en place des infrastructures complexes. Il est idéal pour les étudiants, les développeurs et les éducateurs qui souhaitent se concentrer sur l'apprentissage et le prototypage plutôt que sur la configuration.
Dans cet article, vous aurez un aperçu pratique de Studio Lab. Je vous montrerai ce qu'il est, comment il fonctionne et comment l'utiliser efficacement dans le cadre de projets concrets d'apprentissage automatique.
Ce guide vous montrera tout ce dont vous avez besoin pour commencer.
Qu'est-ce que SageMaker Studio Lab ?
Amazon SageMaker Studio Lab est une plateforme gratuite, basée sur le cloud, qui vous permet de développer des modèles d'apprentissage automatique dans un environnement JupyterLab familier, sans nécessiter de compte AWS ni de carte de crédit.
AWS l'a lancé lors de re:Invent 2021 avec la mission claire de rendre l'apprentissage automatique plus accessible à tous. Il s'agit d'une version allégée d'Amazon SageMaker Studio, la plateforme de développement ML complète d'AWS.
Studio Lab rationalise le processus de mise en place d'un environnement d'expérimentation et offre une option gratuite adaptée aux apprenants, aux éducateurs et aux développeurs qui souhaitent construire, tester et partager des modèles d'apprentissage machine (ML) sans avoir à mettre en place leur propre infrastructure.
Voici pourquoi Studio Lab est extraordinaire :
- Vous n'avez pas besoin d'expérience en matière de cloud pour commencer.
- Il vous permet d'accéder aux temps d'exécution du CPU et du GPU.
- Vous pouvez stocker votre travail de manière persistante au fil des sessions (ce que Google Colab, par exemple, ne fait pas toujours).
- Il s'intègre parfaitement à GitHub, ce qui facilite le partage et la collaboration sur les carnets de notes.
Je l'ai utilisé personnellement pour prototyper de petits modèles, réaliser des expériences rapides et tester des supports de cours. Si vous êtes quelqu'un qui veut se concentrer sur l'apprentissage ou l'enseignement de l'apprentissage automatique sans les maux de tête liés à la configuration du cloud, Studio Lab est fait pour vous.
Si vous souhaitez en savoir plus sur AWS, je vous recommande les cours Introduction à AWS ou Technologie et services de cloud AWS.
Composants principaux de SageMaker Studio Lab
SageMaker Studio Lab peut sembler léger, mais sous le capot, il offre suffisamment de puissance et de flexibilité pour les flux de travail d'apprentissage automatique du monde réel. Que vous entraîniez un modèle de régression, que vous fassiez des expériences avec des données d'images ou que vous élaboriez un projet d'étudiant, le fait de savoir avec quelles ressources vous travaillez vous permet d'en tirer le meilleur parti.
Dans cette section, nous allons examiner de plus près ses principaux composants.
Durée d'exécution de l'unité centrale
Chaque utilisateur de Studio Lab a accès à une instance de CPU T3.xlarge
par défaut. En d'autres termes :
- 4 vCPU et 16 Go de RAM (ce qui devrait suffire pour la plupart des tâches de ML de niveau débutant à intermédiaire).
- Limitation de la durée des sessions (jusqu'à 4 heures par session avec un maximum de 8 heures par jour, mais les fichiers sont conservés même après l'arrêt de l'environnement).
Le temps d'exécution de l'unité centrale est idéal pour le prototypage de modèles, l'exploration de données et le travail avec des ensembles de données structurés ou des prévisions de séries temporelles.
D'après mon expérience, vous pouvez conserver le temps d'exécution de l'unité centrale si vous utilisez des bibliothèques telles que scikit-learn
, XGBoost
, et pandas
sans aucun problème.
Durée d'exécution du GPU
Si vous travaillez sur des tâches d'apprentissage en profondeur, telles que la vision par ordinateur ou les transformateurs, vous devriez envisager le runtime GPU, qui donne accès à une instance G4dn.xlarge
(NVIDIA T4), idéale pour PyTorch ou TensorFlow.
Vous ne pouvez avoir une GPU par jour, d'une durée maximale de quatre heures.
Je l'ai utilisé pour entraîner de petits réseaux convolutifs, et pour les modèles d'apprentissage profond de niveau débutant à intermédiaire, il fait le travail, en particulier pour les travaux de cours ou les démonstrations de validation de concept.
Un conseil utile : Si vous avez régulièrement besoin de GPU, envisagez de diviser votre travail en courtes sessions de formation et de fournir à vos modèles des points de contrôle. Ainsi, les progrès réalisés ne seront pas perdus à la fin de la session.
Limites de stockage
Studio Lab vous offre 15 Go de stockage persistantqui :
- Reste disponible au fil des sessions et des redémarrages.
- Il est idéal pour stocker des carnets de notes, de petits ensembles de données et des fichiers environnementaux.
- Est isolé par utilisateur.
Gardez à l'esprit que les points de contrôle de modèles volumineux, les poids pré-entraînés ou les grands ensembles de données peuvent rapidement saturer votre espace de stockage.
Je vous recommande de créer des liens vers des ensembles de données externes (à partir de S3, Hugging Face ou GitHub) et de charger les données par lots, dans la mesure du possible.
Interface basée sur JupyterLab
L'un des points forts de Studio Lab est son interface JupyterLabfamilière . Il s'agit d'un environnement de codage basé sur un navigateur avec :
- Un navigateur de fichiers, un terminal, un éditeur de texte et des onglets de carnet de notes.
- Prise en charge intégrée de Markdown, des cellules de code et des graphiques interactifs.
L'interface utilisateur de SageMaker Studio Lab. Source de l'image : Documentation AWS.
Si vous venez de Jupyter Notebooks ou de Colab, la courbe d'apprentissage est minimale et l'expérience est fluide. J'apprécie particulièrement l'intégration de Git et la prise en charge des extensions, qui facilitent grandement la collaboration.
Vous souhaitez améliorer vosvos compétences en matière de flux de travail ML ? Essayez le cours Conception de flux de travail d'apprentissage automatique en Python pour obtenir un guide pratique.
Comment s'inscrire et lancer des projets
La mise en route de SageMaker Studio Lab est assez simple, surtout si on la compare à la mise en place d'un environnement AWS complet.
Dans les sections suivantes, je vous montrerai ce qu'il faut faire pour être opérationnel.
Création de compte et onboarding
Pour utiliser Studio Lab, vous devez d'abord en demander l'accès. Voici comment procéder :
- Accédez à la page SageMaker Studio Lab.
- Cliquez sur "Demander un compte gratuit" et remplissez quelques informations de base (email, cas d'utilisation, etc.).
- Attendez votre invitation. L'approbation prend généralement de quelques heures à quelques jours.
- Une fois votre demande approuvée, vous recevrez un courriel contenant le lien vers la page d'enregistrement du compte. Créez votre compte avec votre adresse électronique approuvée et définissez un mot de passe et un nom d'utilisateur. Ce compte est différent de votre compte AWS et aucune carte de crédit n'est nécessaire.
Dans mon cas, j'ai reçu une approbation dans les 24 heures.
Mise en place de votre environnement
Une fois entré, vous pouvez sélectionner votre type de calcul et cliquer sur "Start runtime".
Page d'accueil de SageMaker Studio Lab. Image de l'auteur.
Lors de la première utilisation, vous serez également invité à saisir votre numéro de téléphone portable, auquel sera envoyé un code de vérification à six chiffres.
Une fois que votre environnement est opérationnel, vous arrivez dans un environnement JupyterLab et vous devriez voir le carnet Getting Started.ipynb
.
Studio Lab est livré avec une image de base Python et seulement quelques bibliothèques préinstallées afin de gagner de la place pour les bibliothèques que vous souhaitez installer.
Outre l'environnement conda par défaut, Studio Lab prend également en charge SageMaker Distribution, qui est un environnement plus puissant, conçu par AWS pour correspondre à la configuration d'Amazon SageMaker Studio. Il contient des paquets tels que PyTorch, TensorFlow, NumPy, scikit-learn et Pandas.
Vous pouvez toujours installer vos paquets dans l'environnement Conda existant en exécutant %conda install
ou %pip install
directement à partir d'une cellule de notebook.
Vous pouvez également utiliser requirements.txt
ou environment.yml
pour répliquer des environnements complets. Cela permet de suivre facilement les tutoriels.
Mais n'oubliez pas que vous ne disposez que de 15 GO de stockage, il est donc préférable d'éviter d'installer des paquets lourds lorsque ce n'est pas nécessaire.
Vos paquets installés sont également conservés au cours des différentes sessions.
Initialisation du projet et intégration de GitHub
Studio Lab s'intègre bien à GitHub, ce qui signifie que vous pouvez :
- Cloner des dépôts publics ou privés en utilisant HTTPS ou SSH
- Poussez et tirez du code directement à partir de l'extension Git de JupyterLab.
- Partagez vos carnets de notes en créant un lien vers le dépôt (idéal pour la collaboration ou les devoirs).
Si vous enseignez ou apprenez, il est incroyablement facile de distribuer des codes de démarrage ou de soumettre des travaux pour examen, en particulier dans les salles de classe, les camps d'entraînement ou les groupes d'étude à son propre rythme.
Vous souhaitez aller au-delà de GitHub et travailler avec des flux de travail de ML réels ? Pour savoir comment structurer des projets complets, consultez le cours End-to-End Machine Learning (Apprentissage automatique de bout en bout) à l'adresse.
Exemples pratiques pour l'apprentissage automatique
SageMaker Studio Lab est l'endroit idéal pour tester des idées, suivre des tutoriels ou construire de petits projets à partir de zéro. Que vous appreniez la régression ou que vous jouiez avec des données d'image, la plateforme prend en charge sans problème la plupart des tâches de niveau débutant à intermédiaire.
Je vais maintenant vous présenter des exemples pratiques que vous pouvez essayer immédiatement.
Vous pouvez trouver les exemples de carnetsdans mon dépôt GitHub. Il suffit de cloner ce répertoire dans votre session Studio Lab.
Vous pouvez également cliquer directement sur les badgesOpen Studio Lab dans mon fichier README.md, ce qui ouvriradirectement le carnetdans Studio Lab.
Capture d'écran du fichier README avec les badges Open in Studio Lab. Image de l'auteur.
Formation d'un modèle de régression simple
C'est le site Hello World
de l'apprentissage automatique : Formation d'un modèle de régression simple.
Ce que vous ferez dans ce petit exemple :
- Chargez le jeu de données Iris à l'aide de
seaborn
. - Explorez visuellement la relation entre les variables.
- Entraînez un modèle de régression linéaire à l'aide de
scikit-learn
. - Graphiquez la ligne de régression et évaluez la performance du modèle.
Le code de cet exemple se trouve dans le carnet simple-regression.ipynb
.
Ouvrez le carnet de notes et, en tant que noyau, sélectionnez sagemaker-distribution:Python
.
Sélection du noyau pour le carnet simple-regression.ipynb
dans Studio Lab. Image de l'auteur.
L'objectif de cette tâche de ML est de prédire la longueur des pétales en fonction de la longueur des sépales à partir de l'ensemble de données Iris bien connu.
Il suffit de parcourir toutes les cellules du carnet pour suivre cet exemple.
Vous trouverez ci-dessous le code complet de cet exemple :
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error, r2_score
# Load dataset
df = sns.load_dataset("iris")
# Visualize the relationship
sns.scatterplot(data=df, x="sepal_length", y="petal_length", hue="species")
plt.title("Sepal Length vs Petal Length")
plt.show()
# Select features
X = df[["sepal_length"]]
y = df["petal_length"]
# Train/test split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Fit model
model = LinearRegression()
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
# Evaluation
print("MSE:", mean_squared_error(y_test, y_pred))
print("R² Score:", r2_score(y_test, y_pred))
# Plot regression line
plt.figure(figsize=(8, 5))
sns.regplot(x=X_test["sepal_length"], y=y_test, ci=None, label="Actual", scatter_kws={"s": 50})
plt.plot(X_test["sepal_length"], y_pred, color="red", label="Predicted", linewidth=2)
plt.title("Linear Regression: Predicting Petal Length")
plt.xlabel("Sepal Length")
plt.ylabel("Petal Length")
plt.legend()
plt.show()
Cet exemple s'entraîne en quelques secondes sur le temps d'exécution de l'unité centrale de Studio Lab, et les graphiques permettent de visualiser les performances du modèle. Bien qu'il s'agisse d'un début simple, ce modèle constitue le cœur de nombreuses tâches de régression dans le monde réel.
Exemple de classification d'images
MNIST est un excellent point de départ pour l'apprentissage de la classification des images. Il est petit, propre et fonctionne bien même dans des environnements à ressources limitées comme Studio Lab.
Dans cet exemple, vous allez :
- Chargez l'ensemble de données MNIST en utilisant
tensorflow.keras.datasets
- Construire un réseau neuronal simple et dense
- Former et évaluer le modèle
- Visualisez quelques prédictions pour voir comment le modèle fonctionne.
Vous pouvez exécuter cet exemple dans l'environnement d'exécution CPU ou, si vous souhaitez obtenir des performances encore meilleures, dans l'environnement GPU (qui peut parfois être plus difficile à obtenir).
Le code de cet exemple se trouve dans le carnet de notes image-classifier.ipynb
ou ci-dessous :
import tensorflow as tf
import matplotlib.pyplot as plt
import numpy as np
# Load dataset
(X_train, y_train), (X_test, y_test) = tf.keras.datasets.mnist.load_data()
# Normalize pixel values
X_train = X_train / 255.0
X_test = X_test / 255.0
# Visualize an example image
plt.imshow(X_train[0], cmap="gray")
plt.title(f"Label: {y_train[0]}")
plt.axis("off")
plt.show()
# Build the model
model = tf.keras.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dense(10, activation='softmax')
])
# Compile the model
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
# Train the model
history = model.fit(X_train, y_train, epochs=3, validation_split=0.1)
# Evaluate the model
test_loss, test_acc = model.evaluate(X_test, y_test)
print("Test accuracy:", test_acc)
# Predict on test set
predictions = model.predict(X_test)
# Show example prediction
index = 0
plt.imshow(X_test[index], cmap="gray")
plt.title(f"Predicted: {np.argmax(predictions[index])}, Actual: {y_test[index]}")
plt.axis("off")
plt.show()
Ouvrez le carnet de notes et, en tant que noyau, sélectionnez sagemaker-distribution:Python
.
Cet exemple fonctionne sans problème sur le processeur et est beaucoup plus rapide lorsque le GPU est activé. Vous pouvez le développer en ajoutant des couches de convolution, en augmentant le nombre d'époques ou en visualisant les chiffres mal classés.
Sivous souhaitez aller plus loin, le cursus Développement d'applications d'IA vous accompagne dans des cas d'utilisation concrets de l'apprentissage profond.
Prétraitement et visualisation des données
Passons maintenant au troisième exemple, qui est tout à fait essentiel pour les applications de ML dans le monde réel : Prétraitement et visualisation des données.
La plupart des ensembles de données du monde réel sont désordonnés et nécessitent un nettoyage approfondi et une inspection manuelle pour être utilisables. Par conséquent, il est crucial de pouvoir tracer les données et de les prétraiter pour développer des applications pratiques d'apprentissage automatique.
Pour présenter le prétraitement et la visualisation des données, nous utiliserons l'ensemble de données Palmer Penguins.
Palmer Penguins est l'un des meilleurs ensembles de données pour débutants pour apprendre le nettoyage et la visualisation des données. C'est comme l'ensemble de données Iris, mais avec des variables plus intéressantes et un contexte réel plus clair.
Le code de cet exemple est disponible dans le notebook data-preprocessing-and-visualization.ipynb
.
Sélectionnez à nouveau le noyau sagemaker-distribution:Python
pour suivre cet exemple.
Vous trouverez le code complet ci-dessous :
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
# Load the dataset
df = sns.load_dataset("penguins")
# Quick overview
print(df.head())
# Check for datatypes and NaN values
print(df.info())
# Check missing values
print(df.isnull().sum())
# Drop rows with missing values (simplest option for this example)
df_clean = df.dropna()
# Histogram of bill length
plt.hist(df_clean["bill_length_mm"], bins=20, color="skyblue", edgecolor="black")
plt.title("Distribution of Bill Length")
plt.xlabel("Bill Length (mm)")
plt.ylabel("Frequency")
plt.show()
# Box plot of body mass by species
sns.boxplot(data=df_clean, x="species", y="body_mass_g", palette="pastel")
plt.title("Body Mass Distribution by Species")
plt.ylabel("Body Mass (g)")
plt.show()
# Scatterplot to explore relationships
sns.scatterplot(data=df_clean, x="bill_length_mm", y="bill_depth_mm", hue="species", style="sex")
plt.title("Bill Length vs. Depth by Species and Sex")
plt.xlabel("Bill Length (mm)")
plt.ylabel("Bill Depth (mm)")
plt.legend()
plt.show()
Ces graphiques simples révèlent déjà quelques schémas intéressants, comme des regroupements au niveau des espèces et des différences entre les manchots mâles et femelles.
Partage de notes et collaboration
Une fois que votre carnet est prêt, il est facile de le partager :
- Enregistrez le fichier
.ipynb
directement dans un dépôt GitHub. - Invitez d'autres personnes à le visualiser, à le commenter ou à l'exécuter depuis leur propre environnement Studio Lab.
Vous pouvez même ajouter un Ouvert dans Studio Lab à votre fichier README.md
ou à vos carnets de notes dans votre répertoire GitHub public.
Il suffit d'ajouter ce qui suit à votre fichier README.md
:
[](https://studiolab.sagemaker.aws/import/github/org/repo/blob/master/path/to/notebook.ipynb)
Vous pouvez consulter le fichier README.md
dans mon répertoire pour voir comment cela fonctionne.
Si vous travaillez avec des coéquipiers ou des enseignants, cette approche facilite grandement l'examen par les pairs, le retour d'information et la reproductibilité. Vous pouvez même inclure requirements.txt
pour vous assurer qu'ils installent les mêmes dépendances.
Cas d'utilisation et applications pédagogiques
SageMaker Studio Lab peut être utilisé non seulement comme un terrain de jeu pour l'apprentissage automatique, mais aussi comme un outil pratique pour l'éducation, l'expérimentation rapide et le prototypage léger. Parce qu'il est gratuit, facile d'accès et qu'il fonctionne dans le navigateur, il ouvre un large éventail de possibilités d'utilisation pour les apprenants, les formateurs et les développeurs.
Apprentissage académique et à son rythme
Studio Lab est déjà utilisé comme outil d'enseignement dans les classes universitaires, les cours en ligne et les camps d'entraînement au codage.
Les avantages :
- Aucune installation locale n'est nécessaire: Les élèves peuvent commencer à coder immédiatement, quel que soit l'appareil qu'ils utilisent.
- Stockage persistant: Sauvegarder les données entre les sessions pour vous permettre de reprendre là où vous vous êtes arrêté.
- Paquets préinstallés: Couvre la plupart des cours de ML de niveau débutant à intermédiaire.
- JupyterLab: L'interface JupyterLab est bien connue et adaptée aux démonstrations et au codage interactif.
En tant qu'instructeur, vous pouvez facilement :
- Partagez les dépôts GitHub avec le code de démarrage.
- Créez des devoirs sous forme de carnets de notes et hébergez-les directement.
- Encouragez la reproductibilité en enseignant une bonne gestion de l'environnement.
En tant qu'étudiant ou autodidacte, Studio Lab vous offre un espace pour.. :
- Entraînez-vous avec des données réelles.
- Suivez les tutoriels.
- Soumettre des projets pour examen.
Prototypage et expérimentation légère
Studio Lab n'est pas conçu pour les charges de travail des entreprises, mais il fonctionne très bien pour le prototypage.
Vous pouvez l'utiliser si vous le souhaitez :
- Testez une idée de modélisation.
- Effectuez des comparaisons de référence.
- Nettoyez et explorez de nouveaux ensembles de données.
- Partagez une démonstration rapide avec un coéquipier.
Il est donc idéal pour :
- Hackathonsoù le temps et les ressources informatiques sont limités.
- Recherche à un stade précocelorsque les idées sont encore en phase de formation.
- Projets secondaireslorsque vous avez juste besoin de mettre quelque chose en place et de le faire fonctionner sans avoir à gérer l'infrastructure.
Je l'ai utilisé pour tester rapidement un code que j'avais trouvé quelque part, ou pour préparer une démo pour l'un de mes articles.
Comparaisons et principales limites
SageMaker Studio Lab est souvent comparé à des outils tels que Google Colab, JupyterHub et même SageMaker Studio. Cependant, bien que ces plateformes semblent similaires en apparence, leurs forces, leurs limites et leurs cas d'utilisation idéaux diffèrent considérablement.
Comparons Studio Lab avec Google Colab.
Studio Lab vs. Google Colab
Matériel et performances
Fonctionnalité |
Studio Lab |
Google Colab |
Limite de session de l'unité centrale |
4 heures/session, 8 heures/jour |
~12 heures/session |
Spécifications de l'unité centrale |
4 vCPUs, 16GB RAM |
2 vCPUs, 13GB RAM |
Accès au GPU |
4 heures/jour, Tesla T4 |
Tesla P100 ou Tesla K80 |
Stockage |
15 Go persistants |
Temporaire, réinitialisé par session (Google Drive peut être monté) |
En pratique :
- Studio Lab est plus adapté si vous souhaitez un environnement cohérent avec un stockage persistant (idéal pour les travaux de cours ou les projets de longue durée).
- Google Colab est plus adapté si vous travaillez davantage avec les services Google (comme Google Drive) et que vous souhaitez partager vos carnets de notes (ce qui est un peu plus facile avec Google).
Vous souhaitez travailler à long terme avec les outils AWS ? Studio Lab sert de tonalité stepping splus efficace à SageMaker Studio et aux flux de travail basés sur le cloud.
Expérience utilisateur et stabilité de l'interface
Studio Lab fonctionne sur JupyterLab, tandis que Colab est basé sur les carnets Jupyter classiques.
Cela signifie que Studio Lab offre des présentations par onglets, des terminaux, des explorateurs de fichiers et des environnements conda personnalisés.
Colab, quant à lui, semble plus léger mais manque d'isolation de l'environnement et de reproductibilité dès la sortie de la boîte.
Si vous êtes habitué à JupyterLab (ou si vous souhaitez une expérience plus proche d'un IDE), Studio Lab est plus structuré et plus extensible.
Coût et accessibilité
Les deux plates-formes sont gratuites, mais elles présentent quelques différences essentielles :
- Studio Lab: 100% gratuit, pas de version premium, pas d'intégration de la facturation.
- Colab: Le niveau gratuit est limité. Des abonnements Pro/Pro+ sont disponibles pour accéder à de meilleures ressources.
Studio Lab est idéal pour les apprenants ou les formateurs qui souhaitent disposer d'une plate-forme fiable et prévisible pour l'enseignement ou l'expérimentation. Colab peut offrir plus de puissance, mais souvent au prix d'une instabilité ou de la nécessité d'une mise à niveau.
Limites du laboratoire de studio
Studio Lab est gratuit, mais il présente aussi quelques inconvénients.
Voyons ce que vous devez savoir.
Contraintes de ressources
Studio Lab est assorti des contraintes suivantes en matière de ressources :
- Limites de session: 4 heures par session (CPU/GPU), avec des quotas journaliers.
- Aucun travail en parallèle: Une seule session d'exécution à la fois.
- Accès au moment de l'exécution: Vous n'obtenez une durée d'exécution que si des ressources sont disponibles. Pour moi, cela a parfois pris un certain temps avant que je puisse démarrer un runtime (même pour les CPU).
- Stockage: Limite stricte de 15 Go, qui peut s'avérer insuffisante pour les grands ensembles de données ou les points de contrôle des modèles.
Pour les projets de petite et moyenne envergure, cela reste gérable. Toutefois, tenez compte des limitations susmentionnées lorsque vous décidez de la manière de structurer votre travail et de stocker les données.
Lacunes et solutions de contournement
Studio Lab ne prend pas en charge :
- Intégration directe avec les services AWS tels que S3, les terminaux SageMaker ou les rôles IAM.
- Mise en réseau personnalisée ou transfert de port.
- Les tâches d'arrière-plan ou les services de longue durée.
Mais vous pouvez au moins combler certaines de ces lacunes :
- Utilisez les ensembles de données Hugging Face ou les URL S3 publiques pour les données.
- Utilisez GitHub pour le partage des versions et des points de contrôle.
- Diffusez les données en temps réel au lieu de tout télécharger à l'avance.
- Utilisez les services AWS payants si vous souhaitez héberger une application ou un modèle, tout en continuant à le développer dans Studio Lab.
Si vous construisez des pipelines de niveau production ou avez besoin d'une intégration complète dans le cloud, envisagez de passer à Amazon SageMaker Studio ou à un environnement géré avec un accès IAM au cloud.
Conclusion
Amazon SageMaker Studio Lab est idéal si vous avez besoin de facilité d'accès, de flexibilité et de développement gratuit de l'apprentissage automatique. Il supprime les barrières d'entrée courantes, comme la configuration du cloud ou la facturation. Cela vous permet de vous concentrer sur l'apprentissage, l'expérimentation et le prototypage.
Pour les étudiants, les autodidactes et les éducateurs, Studio Lab est un excellent environnement pour.. :
- Mettez en pratique les flux de travail en Python et en ML.
- Exécutez de petits modèles d'apprentissage profond
- Collaborer via GitHub
- Explorez des ensembles de données réels dans une interface JupyterLab
Y a-t-il des limites ? Absolument ! Vous travaillez avec des délais de session, pas d'intégration directe à AWS et une limite de stockage de 15 Go. Mais pour l'expérimentation légère et l'apprentissage pratique, ces compromis sont raisonnables et également acceptables pour un outil gratuit.
Si vous débutez dans l'apprentissage automatique ou si vous recherchez un moyen simple et reproductible de tester vos idées, Studio Lab est plus que suffisant pour vous aider à démarrer.
Vous voulez passer à la vitesse supérieure en matière de ML ? Explorez la technologie et les services cloud AWS pour commencer à créer des environnements prêts pour la production.
FAQ
En quoi Studio Lab est-il différent de SageMaker Studio ?
Studio Lab est une version légère, adaptée aux débutants, qui ne nécessite pas de compte AWS. SageMaker Studio est la suite complète pour l'entreprise dans AWS.
Dois-je installer quelque chose pour utiliser Studio Lab ?
Non. Il fonctionne entièrement dans votre navigateur avec une interface JupyterLab. Il suffit de s'inscrire pour participer.
Puis-je entraîner de vrais modèles de ML sur Studio Lab ?
Absolument. Vous avez accès aux CPU et aux GPU (sur demande). Il est idéal pour les petits modèles, les démonstrations et les projets éducatifs.
Comment SageMaker Studio Lab se compare-t-il à Google Colab ?
Studio Lab offre un stockage persistant et une interface JupyterLab, tandis que Colab propose des sessions plus longues et une meilleure intégration de l'écosystème Google. Studio Lab est meilleur pour la cohérence et la reproductibilité.
Ai-je besoin d'un compte AWS pour utiliser SageMaker Studio Lab ?
Aucun compte AWS n'est nécessaire. Vous demandez l'accès et, après approbation, vous obtenez un compte Studio Lab autonome sans aucune facturation.
Comment installer des bibliothèques Python supplémentaires dans SageMaker Studio Lab ?
Vous pouvez installer des bibliothèques à l'aide de %pip install
ou %conda install
à l'intérieur de cellules de cahier, ou utiliser requirements.txt
pour la réplication de l'environnement.
Comment puis-je partager mes carnets SageMaker Studio Lab avec d'autres personnes ?
Vous pouvez partager vos fichiers .ipynb
via GitHub et même intégrer des badges "Open in Studio Lab" dans vos référentiels pour en faciliter l'accès.
Je suis un ingénieur cloud avec de solides bases en génie électrique, en apprentissage automatique et en programmation. J'ai commencé ma carrière dans le domaine de la vision par ordinateur, en me concentrant sur la classification des images, avant de passer aux MLOps et aux DataOps. Je suis spécialisé dans la construction de plateformes MLOps, le soutien aux data scientists et la fourniture de solutions basées sur Kubernetes pour rationaliser les flux de travail d'apprentissage automatique.