CSC 8613 – Systèmes pour le machine learning

Portail informatique

CC1 : Préparation

    1. Quel est l’un des objectifs principaux du MLOps ?
    2. Quel problème classique apparaît lorsque les données évoluent dans le temps ?
    3. Laquelle des options suivantes n’est pas une étape du cycle de vie ML présenté : ingestion, détection du drift, monitoring, optimisation GPU ?
    4. Donnez une raison pour laquelle un modèle peut donner de mauvaises prédictions en production malgré de bons résultats à l’entraînement.
    5. Quel est le rôle principal d’un conteneur Docker dans ce cours ?
    6. Dans un Dockerfile, quelle instruction est typiquement utilisée pour installer des dépendances lors de la création de l’image ?
    7. Qu’est-ce qui invalide le cache de toutes les couches Docker situées en dessous dans un Dockerfile ?
    8. Quelle commande de base utilise-t-on pour lancer un conteneur à partir d’une image Docker ?
    9. À quoi sert l’option -p 8000:8000 dans la commande docker run ?
    10. Quelle commande permet d’afficher les logs d’un conteneur en cours d’exécution ?
    11. Pourquoi utilise-t-on des volumes Docker dans un système de machine learning ?
    12. Dans Docker Compose, comment un service peut-il se connecter à la base de données sans connaître son adresse IP ?
    13. Quel est le principal avantage de Docker Compose pour un système de ML avec plusieurs services ?
    14. Quelle commande permet de démarrer tous les services définis dans un fichier docker-compose.yml ?
    15. Donnez une raison pour laquelle les notebooks ne sont pas adaptés à la production en MLOps.
    16. Citez un endpoint typique d’une API de modèle de machine learning évoqué dans le cours.
    17. Quel est l’un des avantages de FastAPI mis en avant pour la définition d’API en Python ?
    18. Avec quel serveur Python une application FastAPI est-elle typiquement exécutée dans un conteneur ?
    19. Dans la pipeline de service d’un modèle, quel est le rôle principal de FastAPI vis-à-vis des utilisateurs ?
    20. Selon les slides, parmi les problèmes des notebooks, quel aspect rend leur utilisation problématique pour la production ?
    21. Pourquoi un pipeline de données robuste est-il crucial en machine learning ?
    22. Quel type d’anomalie peut provoquer une corruption silencieuse dans un export mensuel ?
    23. Qu’est-ce que le training-serving skew ?
    24. Quelle propriété est nécessaire pour garantir la reproductibilité d’une ingestion mensuelle ?
    25. Pourquoi un pipeline ML doit-il être déterministe ?
    26. Quelle étape fait partie d’un pipeline d’ingestion moderne (selon les slides) ?
    27. Quel mode d’ingestion permet de mettre à jour une ligne si elle existe déjà ou de l’insérer sinon ?
    28. Pourquoi l’upsert est-il particulièrement adapté aux pipelines ML récurrents ?
    29. Que signifie l’idempotence dans un pipeline d’ingestion ?
    30. Quel est le rôle d’un snapshot en data engineering ?
    31. Pourquoi les snapshots empêchent-ils le data leakage ?
    32. Quel champ identifie la date de référence d’un snapshot ?
    33. Pourquoi l’expectation “user_id ne doit pas être NULL” est-elle critique ?
    34. Quel phénomène décrit un changement inattendu du schéma des données ?
    35. Quelle est la différence entre un hard fail et un soft fail dans Great Expectations ?
    36. Quel est l’ordre correct entre ingestion, validation et snapshots ?
    37. Quel est le rôle principal d’un orchestrateur comme Prefect dans un pipeline ML ?
    38. À quoi sert le décorateur @task dans Prefect ?
    39. Pourquoi passer des paramètres comme SEED_DIR ou AS_OF à un flow Prefect ?
    40. Qu’est-ce qui permet de construire une timeline historique complète des données mois après mois ?
    41. Pourquoi la standardisation des features est-elle essentielle dans un système ML ?
    42. Quel est un facteur majeur du training-serving skew ?
    43. Quelle garantie un Feature Store fournit-il pour éviter la fuite temporelle de données ?
    44. À quoi servent principalement les features offline ?
    45. Qu’est-ce qu’une Entity dans Feast ?
    46. Quel champ est indispensable dans une Data Source Feast basée sur PostgreSQL ?
    47. Quel est le rôle principal d’un Feature View ?
    48. Quel principe de conception doit guider la granularité d’un Feature View ?
    49. Pourquoi versionner les FeatureViews ?
    50. Quel composant contient les versions des entities, data sources et FeatureViews ?
    51. Quel est l’objectif du historical retrieval ?
    52. Comment Feast choisit-il un snapshot dans un point-in-time join ?
    53. Que se passe-t-il si un utilisateur est absent d’un Feature View ?
    54. Quelle commande met à jour le registry avec les nouvelles définitions ?
    55. Pourquoi a-t-on besoin d’un online store en production ?
    56. En quoi consiste la matérialisation dans Feast ?
    57. Comment sont structurées les données stockées dans l’online store ?
    58. À quoi sert get_online_features dans une API ?
    59. Quel paramètre détermine la fraîcheur des features online ?
    60. Quelle étape suit immédiatement un feast apply dans le cycle de vie d’un feature ?