Pour préparer vos pipelines de ML pour la production, procédez comme suit:
- Provisionner les ressources de calcul pour vos pipelines
- Implémenter la journalisation, la surveillance et les alertes
Provisionner des ressources de calcul
L'exécution de pipelines de ML nécessite des ressources de calcul, telles que la RAM, les CPU et les GPU/TPU. Sans les calculs adéquats, vous ne pouvez pas exécuter vos pipelines. Par conséquent, assurez-vous afin d'obtenir un quota suffisant pour provisionner les ressources requises pour vos pipelines à exécuter en production.
Pipelines d'inférence, d'entraînement et de validation. Ces pipelines nécessitent TPU, GPU ou CPU. Selon votre cas d'utilisation, vous pouvez entraîner sur du matériel différent, ou utiliser le même matériel. Par exemple, l'entraînement peut sur des processeurs, mais l'inférence peut s'appuyer sur des TPU, ou inversement. En général, il est pour l'entraînement sur du matériel plus gros puis pour la diffusion sur du matériel plus petit.
Lorsque vous choisissez votre matériel, tenez compte des points suivants:
- Pouvez-vous entraîner un modèle sur du matériel moins cher ?
- Changer de matériel améliorerait-il les performances ?
- De quelle taille est le modèle et quel matériel optimisera ses performances ?
- Quel matériel est idéal d'après l'architecture de votre modèle ?
Pipelines de données. Les pipelines de données nécessitent un quota de RAM et de processeur Vous devrez estimer comment de votre pipeline pour générer des ensembles de données d'entraînement et de test.
Vous ne pouvez pas allouer de quota pour chaque pipeline. Au lieu de cela, vous pouvez d'allouer le quota partagé par les pipelines. Dans ce cas, vérifiez vous disposez d'un quota suffisant pour exécuter tous vos pipelines, et pour configurer la surveillance pour éviter qu'un seul pipeline errant ne consomme tout le quota.
Estimation du quota
Pour estimer le quota dont vous aurez besoin pour les pipelines de données et d'entraînement, recherchez projets similaires sur lesquels bases vos estimations. Pour estimer le quota de diffusion, essayez de le nombre de requêtes du service par seconde. Ces méthodes constituent une référence. En tant que vous commencez le prototypage d'une solution pendant la phase de test, pour obtenir une estimation plus précise du quota.
Lorsque vous estimez le quota, n'oubliez pas de le prendre en compte non seulement pour votre quota de production, des pipelines, mais aussi pour les tests en cours.
Testez vos connaissances
Journalisation, surveillance et alertes
La journalisation et la surveillance du comportement d'un modèle de production sont essentielles. Robust l'infrastructure de surveillance confirme la fiabilité de vos modèles, des prédictions de haute qualité.
De bonnes pratiques de journalisation et de surveillance permettent d'identifier de manière proactive les problèmes de ML et de réduire l'impact potentiel sur l'entreprise. En cas de problème, les alertes informer les membres de votre équipe, et des journaux complets facilitent le diagnostic la cause racine du problème.
Vous devez implémenter la journalisation et la surveillance pour détecter les problèmes suivants avec les pipelines de ML:
Pipeline | Surveiller |
---|---|
Livraison |
|
Données |
|
Formation |
|
Validation |
|
Vous aurez également besoin de la journalisation, de la surveillance et des alertes pour les éléments suivants:
- Latence. Combien de temps faut-il pour générer une prédiction ?
- Interruptions. Le modèle a-t-il cessé de fournir des prédictions ?
Testez vos connaissances
Le déploiement d'un modèle
Pour le déploiement d'un modèle, vous devez documenter les éléments suivants:
- Approbations requises pour commencer le déploiement et l'augmenter.
- Mettre un modèle en production
- L'endroit où le modèle est déployé (par exemple, en présence de ressources de préproduction de l'infrastructure.
- Que faire en cas d'échec d'un déploiement ?
- Rollback d'un modèle déjà en production
Après avoir automatisé l'entraînement du modèle, vous devez la validation et le déploiement. L'automatisation des déploiements distribue et réduit le risque de goulot d'étranglement une seule personne. Cela réduit également les erreurs potentielles, augmente l'efficacité et la fiabilité, et permet les rotations d'astreinte et l'assistance SRE.
En règle générale, vous déployez de nouveaux modèles auprès d'un sous-ensemble d'utilisateurs afin de vérifier qu'ils se comporte comme prévu. Si c'est le cas, poursuivez le déploiement. Si ce n'est pas le cas, vous effectuerez un rollback du déploiement et commencerez à diagnostiquer et déboguer les problèmes.