Calcul et estimation de la valeur métier

Surveiller le Machine Learning en Python

Maciej Balawejder

Data Scientist

Valeur métier du modèle

  • L'objectif d'un modèle de Machine Learning est d'apporter de la valeur à l'entreprise.
  • La valeur métier du modèle peut baisser en raison :
    • Changement des habitudes des clients
    • Le modèle peut ne plus être utile
Surveiller le Machine Learning en Python

Matrice de confusion

L'image montre une matrice de confusion avec les valeurs TP, FN, FP et TN.

  • Vrai positif (TP) : le modèle prédit correctement qu'une réservation ne sera pas annulée
  • Faux positif (FP) : le modèle prédit à tort qu'une réservation ne sera pas annulée
  • Faux négatif (FN) : le modèle prédit à tort qu'une réservation sera annulée
  • Vrai négatif (TN) : le modèle prédit correctement qu'une réservation sera annulée
Surveiller le Machine Learning en Python

Formule de valeur métier

L'image montre la multiplication et la sommation de la matrice de confusion et de la matrice de valeur métier.

  • Vrai positif (TP) : n'ajoute ni ne retire de valeur.
  • Faux positif (FP) : entraîne relogements et remises, coûte 200 $ à l'hôtel.
  • Faux négatif (FN) : coûte 100 $ à l'hôtel, une nuit jusqu'à remplacement.
  • Vrai négatif (TN) : vaut 1 000 $, car la chambre peut être relouée.
Surveiller le Machine Learning en Python

Quand les labels sont disponibles

L'image montre le calcul de la valeur métier du modèle quand les labels sont disponibles.

# Initialize the calculator
calculator = nannyml.PerformanceCalculator(...
    problem_type='classification_binary',
    metrics=['business_value'],
    # [value_of_TN, value_of_FP], [value_of_FN, value_of_TP]]
    business_value_matrix = [[0, -200],[-100, 1000]],
    normalize_business_value='None')
Surveiller le Machine Learning en Python

Quand les labels ne sont pas disponibles

L'image montre l'estimation de la valeur métier du modèle quand les labels ne sont pas disponibles.

# Initialize the estimator
estimator = nannyml.CBPE(...
    problem_type='classification_binary',
    metrics=['business_value'],
    # [value_of_TN, value_of_FP], [value_of_FN, value_of_TP]]
    business_value_matrix = [[0, -200],[-100, 1000]],
    normalize_business_value='per_prediction')
Surveiller le Machine Learning en Python

Passons à la pratique !

Surveiller le Machine Learning en Python

Preparing Video For Download...