Estimativa de performance

Monitoramento de Machine Learning em Python

Hakim Elakhrass

Co-founder and CEO of NannyML

Os algoritmos

  • CBPE - confidence based performance estimation
  • DLE - direct loss estimation
Monitoramento de Machine Learning em Python

Estimativa direta de perda

  • Usado em tarefas de regressão
  • Estima a função de perda do modelo monitorado
  • LGBM é usado como um modelo "extra"
  • NannyML oferece várias métricas de regressão como MAE, MSE ou RMSE

 

A imagem mostra como o algoritmo DLE funciona. Primeiro, os dados de produção chegam ao algoritmo e, com base nas previsões e nos dados de produção, o conjunto de análise é criado. O conjunto de análise é enviado ao modelo extra para prever a performance.

Monitoramento de Machine Learning em Python

DLE - implementação em código

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

Estimativa de performance baseada em confiança

  • Usado em problemas de classificação binária e multiclasse

  • Usa escores de confiança para estimar a matriz de confusão

  • Estima qualquer métrica de performance de classificação

 

A imagem mostra como o algoritmo CBPE funciona. Primeiro, passamos o conjunto de análise ao algoritmo CBPE e prevemos a matriz de confusão. Com base na matriz de confusão, outras métricas de classificação são calculadas.

Monitoramento de Machine Learning em Python

CBPE - implementação em código

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

Resultados

results.plot().show()

O gráfico resultante mostra as métricas de RMSE estimadas ao longo do tempo.

Monitoramento de Machine Learning em Python

Vamos praticar!

Monitoramento de Machine Learning em Python

Preparing Video For Download...