Začněte nyníZačněte zdarma

Vyhodnocení rozhodovacího stromu

Kvalitu modelu můžeš posoudit tak, že zjistíš, jak dobře si vede na testovacích datech. Protože model na těchto datech nebyl trénován, jde o objektivní zhodnocení jeho výkonu.

Matice záměn (confusion matrix) přehledně ukazuje, jak se předpovědi shodují se skutečnými hodnotami. Obsahuje čtyři buňky s počty:

  • True Negatives (TN) — model předpovídá záporný výsledek a skutečný výsledek je také záporný
  • True Positives (TP) — model předpovídá kladný výsledek a skutečný výsledek je také kladný
  • False Negatives (FN) — model předpovídá záporný výsledek, ale skutečný výsledek je kladný
  • False Positives (FP) — model předpovídá kladný výsledek, ale skutečný výsledek je záporný.

Součet těchto hodnot (TN, TP, FN a FP) by měl odpovídat počtu záznamů v testovacích datech, která jsou jen podmnožinou dat o letech. Pro srovnání můžeš použít flights_test.count().

Poznámka: Tyto předpovědi jsou vytvořeny na testovacích datech, takže počty jsou nižší, než by byly u předpovědí na trénovacích datech.

Toto cvičení je součástí kurzu

Machine Learning with PySpark

Zobrazit kurz

Pokyny k cvičení

  • Vytvoř matici záměn tak, že spočítáš kombinace hodnot label a prediction. Výsledek zobraz.
  • Spočítej počet True Negatives, True Positives, False Negatives a False Positives.
  • Vypočítej přesnost modelu.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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)
Upravit a spustit kód