Suivi et visualisation

Machine Learning de bout en bout

Joshua Stapleton

Machine Learning Engineer

Et après ?

  • Entraîné, optimisé, déployé, prédicté… et après ?
  • Monitoring
    • Consigner les résultats
    • Visualiser la performance

Phase de monitoring dans le cycle de vie du machine learning

Machine Learning de bout en bout

Journalisation en Python

import logging
import matplotlib.pyplot as plt

# Setting up basic logging configuration
logging.basicConfig(filename='predictions.log', level=logging.INFO)

# Make predictions on the test set and log the results
for i in range(X_test.shape[0]):
    instance = X_test[i,:].reshape(1, -1)
    prediction = model.predict(instance)
    logging.info(f'Inst. {i} - PredClass: {prediction[0]}, RealClass: {y_test[i]}')
Machine Learning de bout en bout

Journalisation en Python (suite)

# Function to visualize the predictions from log
with open(logfile, 'r') as f:
    lines = f.readlines()
    predicted_classes = [int(line.split("Predicted Class: ")[1].split(",")[0]) \
        for line in lines]

    # Perform data analysis, visualization, etc.
    ...
  • Utilisez logging en Python pour tracer la performance du modèle
Machine Learning de bout en bout

Visualisation

  • Inspecter la performance dans le temps
  • Transformer les données brutes d’entrées/prédictions en insights
import matplotlib.pyplot as plt

# Sample data: Random accuracy values for 12 months months = ["Jan", "Feb", "Mar", ...] accuracies = [0.86, 0.91, 0.74, ...]
plt.plot(months, accuracies, '-o') plt.title("Model Accuracy Over Months") plt.xlabel("Months") plt.ylabel("Accuracy") plt.show()
Machine Learning de bout en bout

Exemple de visualisation

Graphique linéaire montrant l’exactitude hypothétique du modèle sur 12 mois

Machine Learning de bout en bout

Journalisation (logging)

  • Enregistrement d’événements

    • Suivi des variables, appels de fonctions
    • Infos utiles pour l’exécution et la performance
  • Le monitoring suit :

    • Usage, performance, erreurs/anomalies
2023-08-04 09:15:20 [INFO] Model version 1.2.7 started

2023-08-04 09:15:45 [INFO] Preprocessing input data for prediction
2023-08-04 09:15:47 [DEBUG] Input data shape: (1, 12)
2023-08-04 09:15:48 [INFO] Making prediction
2023-08-04 09:15:50 [DEBUG] Output prediction: [0.78]
...
Machine Learning de bout en bout

Exemples de visualisation

  • Indicateur utile : exactitude équilibrée dans le temps
  • Détecter les tendances, voir si la performance baisse
  • Vérifier si un réentraînement est nécessaire
  • Choisir des métriques adaptées au cas d’usage

Exemple :

  • Variation de l’exactitude équilibrée vs taux attendu réel
  • Peut indiquer un problème
  • Choisir et évaluer

Visualisation de l’exactitude équilibrée du modèle

Machine Learning de bout en bout

Passons à la pratique !

Machine Learning de bout en bout

Preparing Video For Download...