Surveillance et visualisation

Apprentissage Machine de bout en bout

Joshua Stapleton

Machine Learning Engineer

Et après ?

  • Entraîné, optimisé, déployé, prédit... et après ?
  • Surveillance
    • Consigner les résultats
    • Visualiser la performance

Phase de surveillance dans le cycle de vie du machine learning

Apprentissage Machine de bout en bout

Journalisation avec 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]}')
Apprentissage Machine de bout en bout

Journalisation avec 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 la journalisation Python pour suivre la performance du modèle
Apprentissage Machine de bout en bout

Visualisation

  • Examiner 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()
Apprentissage Machine de bout en bout

Exemple de visualisation

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

Apprentissage Machine de bout en bout

Journalisation

  • Enregistrement d'événements

    • Suivi des valeurs de variables, appels de fonctions
    • Information utile à l'exécution et à la performance
  • La surveillance permet de suivre :

    • Utilisation, 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]
...
Apprentissage Machine de bout en bout

Exemples de visualisation

  • Indicateur utile pour notre modèle : exactitude équilibrée dans le temps
  • Repérer les tendances, voir si la performance se dégrade
  • Vérifier si un réentraînement est nécessaire
  • Choisir des indicateurs utiles à notre cas d'usage

Exemple :

  • Variation de l'exactitude équilibrée selon le taux réel attendu
  • Possiblement révélateur d'un problème
  • Choisir et évaluer

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

Apprentissage Machine de bout en bout

Passons à la pratique !

Apprentissage Machine de bout en bout

Preparing Video For Download...