Choisir comment servir les données aux workflows de machine learning
Afin d’accéder aux données pour l’entraînement des modèles Machine Learning, vous devez les stocker dans un service de données cloud. En stockant les données séparément de votre calcul, vous réduisez les coûts et gagnez en flexibilité.
Séparer le calcul du stockage
L’un des avantages du cloud est la possibilité de faire un scale-up ou un scale-down du calcul en fonction de vos besoins. Par ailleurs, vous pouvez arrêter le calcul quand vous n’en avez pas besoin et le redémarrer quand vous voulez l’utiliser à nouveau.
En particulier pendant l’entraînement de modèles Machine Learning, vous traversez des périodes pendant lesquelles vous avez besoin de beaucoup de puissance de calcul, et d’autres où c’est l’inverse. Quand vous arrêtez le calcul utilisé pour l’entraînement des modèles Machine Learning, vous ne voulez pas perdre vos données et avez besoin qu’elles restent accessibles pour d’autres utilisations (comme la création de rapports).
Par conséquent, une bonne pratique est de les stocker dans un outil différent de celui que vous utilisez pour entraîner vos modèles. L’outil ou le service que vous choisissez pour stocker vos données dépend du type de vos données et du service que vous utilisez pour l’entraînement du modèle.
Stocker des données pour les charges de travail d’entraînement de modèle
Quand vous utilisez Azure Machine Learning, Azure Databricks ou Azure Synapse Analytics pour l’entraînement de modèle, vous avez trois options pour stocker des données, qui sont facilement connectées aux trois services :
- Stockage Blob Azure : option la plus économique pour stocker des données non structurées. Idéal pour stocker des fichiers comme des images, du texte et du code JSON. Souvent utilisé également pour stocker des données sous forme de fichiers CSV, car les scientifiques des données préfèrent utiliser des fichiers CSV.
- Azure Data Lake Storage (Gen 2) : version plus avancée du Stockage Blob Azure. Stocke également les fichiers comme les fichiers CSV et les images sous forme de données non structurées. Un lac de données implémente également un espace de noms hiérarchique, qui permet plus facilement d’accorder à une personne l’accès à un fichier ou dossier spécifique. La capacité de stockage est pratiquement illimitée, ce qui est idéal pour stocker des grandes données.
- Azure SQL Database : stocke des données structurées. Les données sont lues sous forme de table et un schéma est défini à la création de la table dans la base de données. Idéal pour les données qui ne changent pas au fil du temps.
Notes
D’autres services Azure permettent de stocker et de servir des données aux services comme Azure Machine Learning, Azure Databricks et Azure Synapse Analytics. Les trois options de stockage listées ici sont les solutions de stockage de données les plus utilisées avec le machine learning, en particulier pour les nouveaux projets. Pour savoir quand utiliser telle ou telle option, explorez ce guide sur les magasins de données Azure.
En stockant vos données dans l’une de ces solutions de stockage Azure, vous pouvez facilement les servir à n’importe quel service Azure que vous utilisez pour les charges de travail de machine learning. Pour charger les données dans l’une de ces solutions de stockage, vous pouvez configurer un pipeline qui extrait, transforme et charge les données.