Table des matières[Cacher][Montrer]
- 1. Qu'entendez-vous par MLOps ?
- 2. En quoi les scientifiques des données, les ingénieurs des données et les ingénieurs ML diffèrent-ils les uns des autres ?
- 3. Qu'est-ce qui distingue MLOps de ModelOps et AIOps ?
- 4. Pouvez-vous me dire quelques-uns des avantages des MLOps ?
- 5. Pouvez-vous me dire les composants de MLOps ?
- 6. Quels sont les risques associés à l'utilisation de la science des données ?
- 7. Pouvez-vous expliquer ce qu'est la dérive du modèle ?
- 8. Selon vous, de combien de manières différentes les MLOps peuvent-ils être appliqués ?
- 9. Qu'est-ce qui sépare le déploiement statique du déploiement dynamique ?
- 10. Quelles techniques de test de production connaissez-vous ?
- 11. Qu'est-ce qui distingue le traitement par flux du traitement par lots ?
- 12. Qu'entendez-vous par Training Serving Skew ?
- 13. Qu'entendez-vous par modèle de registre ?
- 14. Pouvez-vous détailler les avantages du modèle de registre ?
- 15. Pouvez-vous expliquer la technique Champion-Challenger qui fonctionne ?
- 16. Décrivez les applications au niveau de l'entreprise du cycle de vie MLOps ?
- Conclusion
Les entreprises utilisent plus souvent des technologies émergentes telles que l'intelligence artificielle (IA) et l'apprentissage automatique (ML) pour accroître l'accessibilité du public aux informations et aux services.
Ces technologies sont de plus en plus utilisées dans divers secteurs, notamment la banque, la finance, la vente au détail, la fabrication et même la santé.
Les data scientists, les ingénieurs en machine learning et les ingénieurs en intelligence artificielle sont sollicités par un nombre croissant d'entreprises.
Connaître les possibles machine learning Les questions d'entretien d'exploitation que les responsables du recrutement et les recruteurs pourraient vous poser sont essentielles si vous souhaitez travailler dans les domaines du ML ou du MLOps.
Vous pouvez apprendre à répondre à certaines des questions d'entretien MLOps dans cet article pendant que vous vous efforcez d'obtenir l'emploi de vos rêves.
1. Qu'entendez-vous par MLOps ?
Le sujet de l'opérationnalisation des modèles ML est au centre des MLOps, également connus sous le nom d'opérations d'apprentissage automatique, un domaine en développement dans le domaine plus important de l'IA/DS/ML.
L'objectif principal de l'approche et de la culture du génie logiciel connue sous le nom de MLOps est d'intégrer la création de modèles d'apprentissage automatique/science des données et leur opérationnalisation ultérieure (Ops).
Les DevOps conventionnels et les MLOps partagent certaines similitudes, cependant, les MLOps diffèrent également grandement des DevOps traditionnels.
MLOps ajoute une nouvelle couche de complexité en se concentrant sur les données, tandis que DevOps se concentre principalement sur l'opérationnalisation des versions de code et de logiciel qui ne peuvent pas être avec état.
La combinaison de ML, Data et Ops est ce qui donne son nom commun à MLOps (apprentissage automatique, ingénierie des données et DevOps).
2. En quoi les scientifiques des données, les ingénieurs des données et les ingénieurs ML diffèrent-ils les uns des autres ?
Cela varie, à mon avis, selon les entreprises. L'environnement de transport et de transformation des données, ainsi que leur stockage, est construit par des ingénieurs de données.
Les scientifiques des données sont des experts dans l'utilisation de techniques scientifiques et statistiques pour analyser les données et tirer des conclusions, y compris faire des prédictions sur le comportement futur en fonction des tendances qui sont actuellement en place.
Les ingénieurs logiciels étudiaient les opérations et géraient l'infrastructure de déploiement il y a quelques années. Les équipes opérationnelles, quant à elles, étudiaient le développement tout en utilisant l'infrastructure comme code. Un poste DevOps a été produit par ces deux flux.
MLOps est dans la même catégorie que Scientifique de données et ingénieur de données. Les ingénieurs de données acquièrent des connaissances sur l'infrastructure nécessaire pour prendre en charge les cycles de vie des modèles et créer des pipelines pour la formation continue.
Les scientifiques des données cherchent à développer leurs capacités de déploiement et de notation de modèles.
Un pipeline de données de niveau production est construit par des ingénieurs ML utilisant l'infrastructure qui transforme les données brutes en entrées nécessaires à un modèle de science des données, héberge et exécute le modèle, et génère un ensemble de données noté vers les systèmes en aval.
Les ingénieurs de données et les scientifiques de données sont capables de devenir des ingénieurs ML.
3. Qu'est-ce qui distingue MLOps de ModelOps et AIOps ?
Lors de la construction de bout en bout algorithmes d'apprentissage automatique, MLOps est une application DevOps qui comprend la collecte de données, le prétraitement des données, la création de modèles, le déploiement de modèles en production, la surveillance de modèles en production et la mise à niveau périodique de modèles.
L'utilisation de DevOps pour gérer l'ensemble de la mise en œuvre de tous les algorithmes, tels que les modèles basés sur des règles, est connue sous le nom de ModelOps.
AIOps exploite les principes DevOps pour créer des applications d'IA à partir de zéro.
4. Pouvez-vous me dire quelques-uns des avantages des MLOps ?
- Les scientifiques des données et les développeurs MLOps peuvent rapidement relancer les essais pour s'assurer que les modèles sont formés et évalués de manière appropriée, car MLOps aide à automatiser la totalité ou la plupart des tâches/étapes du MDLC (cycle de développement du modèle). Permet en outre versioning des données et des modèles.
- La mise en pratique des idées MLOps permet aux ingénieurs de données et aux scientifiques de données d'avoir un accès illimité à des ensembles de données cultivés et conservés, ce qui accélère de manière exponentielle le développement de modèles.
- Les scientifiques des données pourront se rabattre sur le modèle qui a mieux fonctionné si l'itération actuelle n'est pas à la hauteur des attentes grâce à la possibilité d'avoir des modèles et des jeux de données versionnés, ce qui améliorera considérablement la piste d'audit du modèle.
- Comme les méthodes MLOps s'appuient fortement sur DevOps, elles intègrent également un certain nombre de concepts CI/CD, ce qui améliore la qualité et fiabilité du code.
5. Pouvez-vous me dire les composants de MLOps ?
Conception: Les MLOps incluent fortement le design thinking. En commençant par la nature du problème, en testant les hypothèses, l'architecture et le déploiement
Construction de modèles: Les tests et la validation des modèles font partie de cette étape, ainsi que les pipelines d'ingénierie des données et l'expérimentation pour mettre en place les meilleurs systèmes d'apprentissage automatique.
Opérations: Le modèle doit être mis en œuvre dans le cadre des opérations et continuellement vérifié et évalué. Les processus CI/CD sont ensuite surveillés et lancés à l'aide d'un outil d'orchestration.
6. Quels sont les risques associés à l'utilisation de la science des données ?
- Il est difficile d'adapter le modèle à l'ensemble de l'entreprise.
- Sans avertissement, le modèle s'éteint et cesse de fonctionner.
- La plupart du temps, la précision des modèles se détériore avec le temps.
- Le modèle fait des prédictions inexactes basées sur une observation spécifique qui ne peut pas être examinée plus avant.
- Les scientifiques des données devraient également maintenir des modèles, mais ils sont coûteux.
- Les MLOps peuvent être utilisés pour réduire ces risques.
7. Pouvez-vous expliquer ce qu'est la dérive du modèle ?
Lorsque les performances de la phase d'inférence d'un modèle (utilisant des données du monde réel) se détériorent par rapport aux performances de sa phase d'apprentissage, on parle de dérive du modèle, également appelée dérive des idées (utilisant des données historiques et étiquetées).
Les performances du modèle sont faussées par rapport aux phases d'entraînement et de service, d'où le nom de « biais d'entraînement/de service ».
De nombreux facteurs, dont :
- La façon fondamentale dont les données sont distribuées a changé.
- La formation s'est concentrée sur un petit nombre de catégories, cependant, un changement environnemental qui vient d'avoir lieu a ajouté un autre domaine.
- Dans les difficultés NLP, les données du monde réel ont une quantité disproportionnée de jetons numériques que les données de formation.
- Des événements inattendus, tels qu'un modèle construit sur des données pré-COVID, dont on prévoit qu'il fonctionnera nettement moins bien sur les données collectées pendant l'épidémie de COVID-19.
La surveillance continue des performances du modèle est toujours nécessaire pour identifier la dérive du modèle.
Le recyclage du modèle est presque toujours nécessaire comme remède lorsqu'il y a une baisse persistante des performances du modèle ; la raison du déclin doit être identifiée et des procédures de traitement appropriées doivent être utilisées.
8. Selon vous, de combien de manières différentes les MLOps peuvent-ils être appliqués ?
Il existe trois méthodes pour mettre en pratique les MLOps :
MLOps niveau 0 (processus manuel): à ce niveau, toutes les étapes, y compris la préparation des données, l'analyse et la formation, sont effectuées manuellement. Chaque étape doit être réalisée manuellement, ainsi que le passage de l'une à la suivante.
Le principe sous-jacent est que votre équipe de science des données ne gère qu'un petit nombre de modèles qui ne sont pas mis à jour fréquemment.
Par conséquent, il n'y a pas d'intégration continue (CI) ou de déploiement continu (CD), et le test du code est généralement intégré à l'exécution de scripts ou à l'exécution de notebooks, le déploiement ayant lieu dans un microservice avec un API REST.
MLOps niveau 1 (automatisation du pipeline ML): En automatisant le processus ML, l'objectif est d'entraîner en continu le modèle (CT). Vous pouvez accomplir la prestation continue de service de prédiction de modèle de cette manière.
Notre déploiement d'un pipeline de formation complet garantit que le modèle est automatiquement formé en production en utilisant de nouvelles données basées sur des déclencheurs de pipeline actifs.
MLOps niveau 2 (automatisation du pipeline CI/CD): Il va une étape au-dessus du niveau MLOps. Un système CI/CD automatisé puissant est nécessaire si vous souhaitez mettre à jour les pipelines en production rapidement et de manière fiable :
- Vous créez du code source et exécutez de nombreux tests tout au long de l'étape CI. Les packages, les exécutables et les artefacts sont les sorties de l'étape, qui seront déployées ultérieurement.
- Les artefacts créés par l'étape CI sont déployés dans l'environnement cible lors de l'étape CD. Un pipeline déployé avec l'implémentation du modèle révisé est la sortie de l'étape.
- Avant que le pipeline ne commence une nouvelle itération de l'expérience, les data scientists doivent encore effectuer manuellement la phase d'analyse des données et du modèle.
9. Qu'est-ce qui sépare le déploiement statique du déploiement dynamique ?
Le modèle est formé hors ligne pour Déploiement statique. En d'autres termes, nous entraînons le modèle précisément une fois, puis nous l'utilisons pendant un certain temps. Une fois le modèle formé localement, il est stocké et envoyé au serveur pour être utilisé pour produire des prédictions en temps réel.
Le modèle est ensuite distribué sous forme de logiciel d'application installable. un programme qui permet la notation par lots des demandes, à titre d'illustration.
Le modèle est formé en ligne pour Déploiement dynamique. Autrement dit, de nouvelles données sont constamment ajoutées au système et le modèle est mis à jour en permanence pour en tenir compte.
En conséquence, vous pouvez faire des prédictions à l'aide d'un serveur à la demande. Après cela, le modèle est mis en service en étant fourni en tant que point de terminaison API qui réagit aux requêtes des utilisateurs, en utilisant un cadre Web comme Flacon ou FastAPI.
10. Quelles techniques de test de production connaissez-vous ?
Test par lots: En réalisant des tests dans un cadre différent de celui de son environnement de formation, il vérifie le modèle. À l'aide de mesures de choix, telles que la précision, la RMSE, etc., des tests par lots sont effectués sur un groupe d'échantillons de données pour vérifier l'inférence du modèle.
Les tests par lots peuvent être effectués sur diverses plates-formes informatiques, telles qu'un serveur de test, un serveur distant ou le cloud. En règle générale, le modèle est fourni sous la forme d'un fichier sérialisé, qui est chargé en tant qu'objet et déduit des données de test.
Le test A / B: Il est fréquemment utilisé pour l'analyse des campagnes marketing ainsi que pour la conception de services (sites web, applications mobiles, etc.).
En fonction de l'entreprise ou des opérations, des approches statistiques sont utilisées pour analyser les résultats des tests A/B afin de décider quel modèle fonctionnera le mieux en production. Généralement, les tests A/B sont effectués de la manière suivante :
- Les données en direct ou en temps réel sont divisées ou segmentées en deux ensembles, l'ensemble A et l'ensemble B.
- Les données de l'ensemble A sont envoyées au modèle obsolète, tandis que les données de l'ensemble B sont envoyées au modèle mis à jour.
- Selon le cas d'utilisation métier ou les processus, plusieurs approches statistiques peuvent être utilisées pour évaluer les performances du modèle (par exemple, l'exactitude, la précision, etc.) afin de déterminer si le nouveau modèle (modèle B) surpasse l'ancien modèle (modèle A).
- Nous effectuons ensuite des tests d'hypothèses statistiques : l'hypothèse nulle indique que le nouveau modèle n'a aucun effet sur la valeur moyenne des indicateurs commerciaux surveillés. Selon l'hypothèse alternative, le nouveau modèle augmente la valeur moyenne des indicateurs d'activité de suivi.
- Enfin, nous évaluons si le nouveau modèle entraîne une amélioration significative de certains KPI commerciaux.
Un test de l'ombre ou de la scène: Un modèle est évalué dans un duplicata d'un environnement de production avant d'être utilisé en production (environnement de staging).
Ceci est crucial pour déterminer les performances du modèle avec des données en temps réel et valider la résilience du modèle. est réalisé en inférant les mêmes données que le pipeline de production et en livrant la branche développée ou un modèle à tester sur un serveur de staging.
Le seul inconvénient est qu'aucun choix métier ne sera effectué sur le serveur intermédiaire ou visible pour les utilisateurs finaux à la suite de la branche de développement.
La résilience et les performances du modèle seront évaluées statistiquement à l'aide des résultats de l'environnement de mise en scène à l'aide des mesures appropriées.
11. Qu'est-ce qui distingue le traitement par flux du traitement par lots ?
Nous pouvons manipuler les caractéristiques que nous utilisons pour produire nos prévisions en temps réel à l'aide de deux méthodes de traitement : par lots et par flux.
Batch caractéristiques d'un point antérieur dans le temps pour un objet spécifique, qui est ensuite utilisé pour générer des prédictions en temps réel.
- Ici, nous sommes en mesure d'effectuer des calculs de caractéristiques intensifs hors ligne et de préparer les données pour une inférence rapide.
- Dispose cependant d'un âge puisqu'elles ont été prédéterminées dans le passé. Cela pourrait être un inconvénient majeur si votre pronostic est basé sur des événements récents. (Par exemple, identifier les transactions frauduleuses dès que possible.)
Avec des fonctionnalités de diffusion en temps quasi réel pour une entité spécifique, l'inférence est effectuée dans le traitement de flux sur un ensemble donné d'entrées.
- Ici, en donnant au modèle des fonctionnalités de streaming en temps réel, nous pouvons obtenir des prédictions plus précises.
- Cependant, une infrastructure supplémentaire est nécessaire pour le traitement des flux et pour maintenir les flux de données (Kafka, Kinesis, etc.). (Apache Flink, Beam...)
12. Qu'entendez-vous par Training Serving Skew ?
La disparité entre la performance au service et la performance à l'entraînement est connue sous le nom d'asymétrie entraînement-service. Ce biais peut être induit par les facteurs suivants :
- Une différence dans la façon dont vous gérez les données entre les pipelines pour le service et la formation.
- Un déplacement des données de votre formation vers votre service.
- Un canal de rétroaction entre votre algorithme et votre modèle.
13. Qu'entendez-vous par modèle de registre ?
Model Registry est un référentiel central où les créateurs de modèles peuvent publier des modèles adaptés à une utilisation en production.
Les développeurs peuvent collaborer avec d'autres équipes et parties prenantes pour gérer la durée de vie de tous les modèles au sein de l'entreprise à l'aide du registre. Les modèles formés peuvent être téléchargés dans le registre de modèles par un spécialiste des données.
Les modèles sont préparés pour les tests, la validation et le déploiement en production une fois qu'ils sont dans le registre. De plus, les modèles formés sont stockés dans des registres de modèles pour un accès rapide par n'importe quelle application ou service intégré.
Afin de tester, d'évaluer et de déployer le modèle en production, les développeurs de logiciels et les examinateurs peuvent rapidement reconnaître et choisir uniquement la meilleure version des modèles formés (sur la base des critères d'évaluation).
14. Pouvez-vous détailler les avantages du modèle de registre ?
Voici quelques façons dont le registre de modèles rationalise la gestion du cycle de vie des modèles :
- Pour faciliter le déploiement, enregistrez les exigences d'exécution et les métadonnées de vos modèles entraînés.
- Vos modèles entraînés, déployés et retirés doivent être enregistrés, suivis et versionnés dans un référentiel centralisé et consultable.
- Créez des pipelines automatisés qui permettent une livraison, une formation et une intégration continues de votre modèle de production.
- Comparez les modèles nouvellement formés (ou modèles challenger) dans l'environnement intermédiaire aux modèles qui fonctionnent actuellement en production (modèles champions).
15. Pouvez-vous expliquer la technique Champion-Challenger qui fonctionne ?
Il est possible de tester diverses décisions opérationnelles en production en utilisant une technique Champion Challenger. Vous avez probablement entendu parler des tests A/B dans le cadre du marketing.
Par exemple, vous pouvez écrire deux lignes d'objet distinctes et les distribuer au hasard à votre groupe démographique cible afin de maximiser le taux d'ouverture d'une campagne par e-mail.
Le système enregistre les performances d'un e-mail (c'est-à-dire l'action d'ouverture d'e-mail) par rapport à sa ligne d'objet, vous permettant de comparer le taux d'ouverture de chaque ligne d'objet pour déterminer lequel est le plus efficace.
Champion-Challenger est comparable aux tests A/B à cet égard. Vous pouvez utiliser la logique de décision pour évaluer chaque résultat et sélectionner le plus efficace au fur et à mesure que vous expérimentez différentes méthodes pour arriver à un choix.
Le modèle le plus réussi est en corrélation avec le champion. Le premier challenger et la liste correspondante des challengers sont désormais tout ce qui est présent dans la première phase d'exécution à la place du champion.
Le champion est choisi par le système pour d'autres exécutions d'étapes de travail.
Les challengers s'opposent les uns aux autres. Le nouveau champion est ensuite déterminé par le challenger qui produit les meilleurs résultats.
Les tâches impliquées dans le processus de comparaison champion-challenger sont énumérées ci-dessous plus en détail :
- Évaluer chacun des modèles concurrents.
- Évaluation des notes finales.
- Comparer les résultats de l'évaluation pour déterminer le challenger vainqueur.
- Ajouter le nouveau champion aux archives
16. Décrivez les applications au niveau de l'entreprise du cycle de vie MLOps ?
Nous devons cesser de considérer l'apprentissage automatique comme une simple expérience itérative pour que les modèles d'apprentissage automatique entrent en production. MLOps est l'union du génie logiciel avec l'apprentissage automatique.
Le résultat final doit être imaginé comme tel. Par conséquent, le code d'un produit technologique doit être testé, fonctionnel et modulaire.
MLOps a une durée de vie comparable à un flux d'apprentissage automatique conventionnel, à l'exception du fait que le modèle est conservé dans le processus jusqu'à la production.
Les ingénieurs MLOps gardent ensuite un œil sur cela pour s'assurer que la qualité du modèle en production correspond à ce qui est prévu.
Voici quelques cas d'utilisation pour plusieurs des technologies MLOps :
- Registres modèles : C'est ce qu'il semble être. Les équipes plus importantes stockent et conservent une trace des modèles de version dans des registres de modèles. Même revenir à une version précédente est une option.
- Magasin de fonctionnalités : lorsqu'il s'agit d'ensembles de données plus volumineux, il peut exister des versions distinctes des ensembles de données analytiques et des sous-ensembles pour des tâches spécifiques. Un magasin de fonctionnalités est un moyen de pointe et de bon goût d'utiliser le travail de préparation des données des exécutions précédentes ou d'autres équipes également.
- Magasins de métadonnées : il est essentiel de surveiller correctement les métadonnées tout au long de la production si des données non structurées, telles que des données d'image et de texte, doivent être utilisées avec succès.
Conclusion
Il est crucial de garder à l'esprit que, dans la majorité des cas, l'intervieweur cherche un système, tandis que le candidat cherche une solution.
Le premier est basé sur vos compétences techniques, tandis que le second concerne la méthode que vous employez pour démontrer votre compétence.
Il existe plusieurs procédures que vous devez suivre lorsque vous répondez aux questions d'entretien MLOps pour aider l'intervieweur à mieux comprendre comment vous avez l'intention d'évaluer et de résoudre le problème en question.
Leur concentration est plus sur la mauvaise réaction que sur la bonne. Une solution raconte une histoire, et votre système est la meilleure illustration de vos connaissances et de votre capacité à communiquer.
Soyez sympa! Laissez un commentaire