Valuta il modello di Logistic Regression
L'accuracy in generale non è una metrica molto affidabile perché può essere influenzata dalla classe target più comune.
Ci sono altre due metriche utili:
- precision e
- recall.
Controlla le diapositive di questa lezione per le formule di riferimento.
La precision è la quota di predizioni positive che sono corrette. Tra tutti i voli previsti in ritardo, quale percentuale è effettivamente in ritardo?
La recall è la quota di esiti positivi predetti correttamente. Tra tutti i voli in ritardo, quale percentuale è predetta correttamente dal modello?
Precision e recall sono in genere definite rispetto alla classe target positiva. Ma è anche possibile calcolare versioni pesate di queste metriche che considerano entrambe le classi target.
I componenti della matrice di confusione sono disponibili come TN, TP, FN e FP, oltre all'oggetto prediction.
Questo esercizio fa parte del corso
Machine Learning con PySpark
Istruzioni dell'esercizio
- Trova precision e recall.
- Crea un evaluator multiclasse e valuta la precision pesata.
- Crea un evaluator binario e valuta l'AUC usando la metrica
"areaUnderROC".
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
from pyspark.ml.evaluation import MulticlassClassificationEvaluator, BinaryClassificationEvaluator
# Calculate precision and recall
precision = ____
recall = ____
print('precision = {:.2f}\nrecall = {:.2f}'.format(precision, recall))
# Find weighted precision
multi_evaluator = ____
weighted_precision = multi_evaluator.____(prediction, {multi_evaluator.metricName: "____"})
# Find AUC
binary_evaluator = ____
auc = binary_evaluator.____(____, {____})