Évaluer l'arbre de décision
Vous pouvez évaluer la qualité de votre modèle en mesurant sa performance sur les données de test. Comme le modèle n'a pas été entraîné sur ces données, il s'agit d'une évaluation objective du modèle.
Une matrice de confusion fournit une ventilation utile des prédictions par rapport aux valeurs connues. Elle comporte quatre cases qui représentent les décomptes suivants :
- Vrais négatifs (VN) — le modèle prédit un résultat négatif et le résultat connu est négatif
- Vrais positifs (VP) — le modèle prédit un résultat positif et le résultat connu est positif
- Faux négatifs (FN) — le modèle prédit un résultat négatif alors que le résultat connu est positif
- Faux positifs (FP) — le modèle prédit un résultat positif alors que le résultat connu est négatif.
Ces décomptes (TN, TP, FN et FP) devraient correspondre au nombre d'enregistrements dans les données de test, qui ne représentent qu'un sous-ensemble des données de vols. Vous pouvez comparer avec le nombre d'enregistrements dans les données de test, soit flights_test.count().
Note : Ces prédictions sont faites sur les données de test; les décomptes sont donc plus petits que s'il s'agissait de prédictions sur les données d'entraînement.
Cette activité fait partie du cours
Machine Learning avec PySpark
Instructions de l’exercice
- Créez une matrice de confusion en comptant les combinaisons de
labelet deprediction. Affichez le résultat. - Comptez le nombre de vrais négatifs, vrais positifs, faux négatifs et faux positifs.
- Calculez la précision.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Create a confusion matrix
prediction.groupBy(____, 'prediction').____().____()
# Calculate the elements of the confusion matrix
TN = prediction.filter('prediction = 0 AND label = prediction').count()
TP = prediction.____('____ AND ____').____()
FN = prediction.____('____ AND ____').____()
FP = prediction.____('____ AND ____').____()
# Accuracy measures the proportion of correct predictions
accuracy = ____
print(accuracy)