Estimation des performances

Surveiller le Machine Learning en Python

Hakim Elakhrass

Co-founder and CEO of NannyML

Les algorithmes

  • CBPE - confidence based performance estimation
  • DLE - direct loss estimation
Surveiller le Machine Learning en Python

Estimation directe de la perte

  • Utilisé pour les tâches de régression
  • Estime la fonction de perte du modèle suivi
  • LGBM est utilisé comme modèle « supplémentaire »
  • NannyML prend en charge diverses métriques de régression comme MAE, MSE ou RMSE

 

L'image illustre le fonctionnement de l'algorithme DLE. D'abord, les données de production arrivent dans l'algorithme et, à partir des prédictions et des données de production, l'ensemble d'analyse est créé. Cet ensemble est transmis au modèle supplémentaire pour prédire la performance.

Surveiller le Machine Learning en Python

DLE - implémentation en code

# Initialize the DLE algorithm
estimator = nannyml.DLE(
    y_true='target',
    y_pred='y_pred',
    metrics=['rmse'],
    timestamp_column_name='timestamp',
    chunk_period='d'
    feature_column_names=features,
    tune_hyperparameters=False
)
# Fit the algorithm
estimator.fit(reference)
results = estimator.estimate(analysis)
Surveiller le Machine Learning en Python

Confidence based performance estimation

  • Utilisé pour les classifications binaire et multiclasse

  • Exploite les scores de confiance pour estimer la matrice de confusion

  • Estime toute métrique de performance en classification

 

L'image illustre le fonctionnement de l'algorithme CBPE. D'abord, on passe l'ensemble d'analyse à CBPE pour prédire la matrice de confusion. À partir de cette matrice, les autres métriques de classification sont calculées.

Surveiller le Machine Learning en Python

CBPE - implémentation en code

# Initialize the CBPE algorithm
estimator = nannyml.CBPE(
    y_pred_proba='y_pred_proba',
    y_pred='y_pred',
    y_true='targets',
    timestamp_column_name='timestamp',
    metrics=['roc_auc'],
    chunk_period='d',
    problem_type='classification_binary',
)
# Fit the algorithm
estimator.fit(reference)
results = estimator.estimate(analysis)
Surveiller le Machine Learning en Python

Résultats

results.plot().show()

Le graphique obtenu affiche l'estimation de la RMSE dans le temps.

Surveiller le Machine Learning en Python

Passons à la pratique !

Surveiller le Machine Learning en Python

Preparing Video For Download...