Cálculo e estimativa de valor de negócio

Monitoramento de Machine Learning em Python

Maciej Balawejder

Data Scientist

Valor de negócio do modelo

  • O objetivo de um modelo de Machine Learning é gerar valor para o negócio.
  • O valor de negócio do modelo pode cair por:
    • Mudança nos hábitos dos clientes
    • O modelo pode deixar de ser útil
Monitoramento de Machine Learning em Python

Matriz de confusão

A imagem mostra uma matriz de confusão com valores de TP, FN, FP e TN.

  • True positive (TP) - o modelo prevê corretamente que uma reserva não será cancelada
  • False positive (FP) - o modelo prevê incorretamente que uma reserva não será cancelada
  • False negative (FN) - o modelo prevê incorretamente que uma reserva será cancelada
  • True negative (TN) - o modelo prevê corretamente que uma reserva será cancelada
Monitoramento de Machine Learning em Python

Fórmula de valor de negócio

A imagem mostra a multiplicação e a soma da matriz de confusão com a matriz de valor de negócio.

  • True positive (TP) - não adiciona nem subtrai valor.
  • False positive (FP) - gera realocações e descontos; custa $200 ao hotel.
  • False negative (FN) - custa $100 ao hotel, uma diária até achar substituto.
  • True negative (TN) - vale $1000, pois o hotel pode alugar o quarto para outra pessoa.
Monitoramento de Machine Learning em Python

Quando há rótulos disponíveis

A imagem mostra o processo de calcular o valor de negócio do modelo quando há rótulos disponíveis.

# 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')
Monitoramento de Machine Learning em Python

Quando não há rótulos disponíveis

A imagem mostra o processo de estimar o valor de negócio do modelo quando não há rótulos disponíveis.

# 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')
Monitoramento de Machine Learning em Python

Vamos praticar!

Monitoramento de Machine Learning em Python

Preparing Video For Download...