Évaluer le modèle de régression logistique
L'exactitude est généralement une mesure peu fiable, car elle peut être biaisée par la classe cible la plus fréquente.
Il existe deux autres mesures utiles :
- la précision et
- le rappel.
Consultez le diaporama de cette leçon pour obtenir les formules pertinentes.
La précision correspond à la proportion de prédictions positives qui sont correctes. Pour tous les vols prédits en retard, quelle proportion est réellement en retard?
Le rappel correspond à la proportion de résultats positifs correctement prédits. Pour tous les vols en retard, quelle proportion est correctement prédite par le modèle?
La précision et le rappel sont généralement définis par rapport à la classe cible positive. Mais il est aussi possible de calculer des versions pondérées de ces mesures qui tiennent compte des deux classes cibles.
Les composantes de la matrice de confusion sont disponibles sous les noms TN, TP, FN et FP, ainsi que l'objet prediction.
Cette activité fait partie du cours
Machine Learning avec PySpark
Instructions de l’exercice
- Trouvez la précision et le rappel.
- Créez un évaluateur multiclasse et évaluez la précision pondérée.
- Créez un évaluateur binaire et évaluez l'AUC à l'aide de la mesure
"areaUnderROC".
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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.____(____, {____})