Conception pour le réentraînement
Lorsque vous préparez votre modèle pour la production dans une solution d’opérations d’apprentissage automatique (MLOps), vous devez concevoir pour le réentraînement.
En règle générale, il existe deux approches pour réentraîner un modèle :
- En fonction d’une planification : lorsque vous savez que vous avez toujours besoin de la dernière version du modèle, vous pouvez décider de réentraîner votre modèle chaque semaine, ou tous les mois, en suivant une planification.
- En fonction de métriques : si vous souhaitez réentraîner votre modèle quand cela devient nécessaire, vous pouvez surveiller les performances et la dérive des données du modèle pour déterminer quand vous devez réentraîner le modèle.
Dans les deux cas, vous devez concevoir pour le réentraînement. Pour réentraîner facilement votre modèle, vous devez préparer votre code pour l’automatisation.
Préparer votre code
Dans l’idéal, vous devez entraîner des modèles avec des scripts plutôt que des notebooks. Les scripts sont mieux adaptés à l’automatisation. Vous pouvez ajouter des paramètres à un script et modifier les paramètres d’entrée, comme les données d’apprentissage ou les valeurs d’hyperparamètres. Lorsque vous paramétrez vos scripts, vous pouvez facilement réentraîner le modèle sur de nouvelles données si nécessaire.
Une autre chose importante pour préparer votre code consiste à héberger le code dans un référentiel central. Un référentiel fait référence à l’emplacement où tous les fichiers pertinents d’un projet peuvent être stockés. Avec les projets Machine Learning, les référentiels basés sur Git sont idéaux pour obtenir un contrôle de code source.
Lorsque vous appliquez le contrôle de code source à votre projet, vous pouvez facilement collaborer dessus. Vous pouvez affecter une personne pour améliorer le modèle en mettant à jour le code. Vous serez en mesure de voir les modifications passées et vous pouvez passer en revue les modifications avant qu’elles ne soient validées dans le référentiel principal.
Automatiser votre code
Lorsque vous souhaitez exécuter automatiquement votre code, vous pouvez configurer des travaux Azure Machine Learning pour exécuter des scripts. Dans Azure Machine Learning, vous pouvez également créer et planifier des pipelines pour exécuter des scripts.
Si vous souhaitez que des scripts s’exécutent en fonction d’un déclencheur ou d’un événement se produisant en dehors d’Azure Machine Learning, vous pouvez déclencher le travail Azure Machine Learning à partir d’un autre outil.
Deux outils couramment utilisés dans les projets MLOps sont Azure DevOps et GitHub (Actions). Ces deux outils vous permettent de créer des pipelines d’automatisation et peuvent déclencher des pipelines Azure Machine Learning.
En tant que scientifique des données, vous préférerez peut-être travailler avec le Kit de développement logiciel (SDK) Python Azure Machine Learning. Toutefois, lorsque vous utilisez des outils tels qu’Azure DevOps et GitHub, vous pouvez plutôt configurer les ressources et les travaux nécessaires avec l’extension CLI Azure Machine Learning. Azure CLI est conçu pour automatiser les tâches et peut être plus facile à utiliser avec Azure DevOps et GitHub.
Conseil
Si vous souhaitez en savoir plus sur MLOps, explorez la Présentation des opérations d’apprentissage automatique (MLOps) ou essayez de créer votre premier Pipeline d’automatisation MLOps avec GitHub Actions