Fiabilité du modèle

Développer des modèles de Machine Learning pour la production

Sinan Ozdemir

Data Scientist, Entrepreneur, and Author

Aligner les modèles ML sur les indicateurs d'impact

  • Les indicateurs d'impact métier mesurent l'effet du ML sur l'entreprise
    • ex. chiffre d'affaires, économies, score de satisfaction client (CSAT)
  • Doivent être alignés sur les métriques du modèle
    • ex. prédicteur d'attrition → chiffre d'affaires
    • ex. prédicteur de maintenance industrielle → économies
    • ex. précision de détection d'intention du chatbot → CSAT

graph going up

Développer des modèles de Machine Learning pour la production

Tests dans les pipelines ML

  • Les tests unitaires vérifient des composants isolés
    • ex. vérifier qu'une instance de PCA renvoie le nombre de caractéristiques attendu
  • Les tests d'intégration couvrent tout le pipeline
    • ex. vérifier que les données d'entrée sont bien prétraitées, que le modèle prédit correctement et que la sortie est bien post-traitée
  • Les tests « smoke » sont rapides et valident que le système fonctionne
    • ex. vérifier que le modèle classe correctement un petit jeu d'images d'exemple
  • Tester tôt et souvent
    • ex. tester le modèle dès que de nouvelles données arrivent
Développer des modèles de Machine Learning pour la production

Exemple de test unitaire

def test_pipeline():
    # Generate mock data for testing
    X_train = pd.DataFrame({'age': [25, 30, 35, 40], 'income': [50000, 60000, 70000, 80000])
    y_train = pd.Series([0, 0, 1, 1])

    pipeline = Pipeline([('preprocessing', DataPreprocessor()),  # Set up pipeline
                         ('model', LogisticRegression())])
    pipeline.fit(X_train, y_train)  # Fit pipeline on training data

    # Generate mock data for testing
    X_test = pd.DataFrame({'age': [30, 35, 40, 45], 'income': [55000, 65000, 75000, 85000])
    y_test = pd.Series([0, 0, 1, 1])
    y_pred = pipeline.predict(X_test)  
    accuracy = accuracy_score(y_test, y_pred)  # Evaluate pipeline on test data

    assert accuracy > 0.8, "Error: pipeline accuracy is too low."
Développer des modèles de Machine Learning pour la production

Suivre l'obsolescence du modèle

  • Obsolescence du modèle : les performances baissent avec le temps
    • changement de données ou d'environnement
  • Supervision continue !

confused robot

Développer des modèles de Machine Learning pour la production

Identifier et corriger l'obsolescence du modèle

Identifier

  • Suivre les performances du modèle
  • Surveiller les évolutions des données et de l'environnement

Corriger

  • Réentraîner le modèle sur de nouvelles données
    • ex. une nouvelle variable doit être intégrée au modèle
  • Mettre à jour le pipeline de données pour refléter les changements d'environnement
    • ex. des évolutions des plateformes d'analytics perturbent votre pipeline
Développer des modèles de Machine Learning pour la production

Passons à la pratique !

Développer des modèles de Machine Learning pour la production

Preparing Video For Download...