Kom igångKom igång gratis

Utvärdera beslutsträdet

Du kan bedöma kvaliteten på din modell genom att utvärdera hur väl den presterar på testdata. Eftersom modellen inte tränades på dessa data ger det en objektiv bedömning av modellen.

En förväxlingsmatris ger en tydlig uppdelning av förutsägelser jämfört med kända värden. Den har fyra celler som visar antalet:

  • Sanna negativa (TN) — modellen förutsäger negativt utfall och det kända utfallet är negativt
  • Sanna positiva (TP) — modellen förutsäger positivt utfall och det kända utfallet är positivt
  • Falska negativa (FN) — modellen förutsäger negativt utfall men det kända utfallet är positivt
  • Falska positiva (FP) — modellen förutsäger positivt utfall men det kända utfallet är negativt.

Summan av dessa värden (TN, TP, FN och FP) ska motsvara antalet poster i testdata, vilket bara är en delmängd av flygdata. Du kan jämföra med antalet poster i testdata via flights_test.count().

Obs! Dessa förutsägelser görs på testdata, så antalen är lägre än de hade varit för förutsägelser på träningsdata.

Den här övningen är en del av kursen

Maskininlärning med PySpark

Visa kurs

Övningsinstruktioner

  • Skapa en förväxlingsmatris genom att räkna kombinationerna av label och prediction. Visa resultatet.
  • Räkna antalet sanna negativa, sanna positiva, falska negativa och falska positiva.
  • Beräkna noggrannheten.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod