Оцініть Decision Tree
Ви можете оцінити якість своєї моделі за тим, наскільки добре вона працює на тестових даних. Оскільки модель не навчалася на цих даних, це є об'єктивною оцінкою моделі.
Матриця помилок дає зручний розклад передбачень порівняно з відомими значеннями. Вона має чотири клітинки, що відображають кількість:
- True Negatives (TN) — модель передбачає негативний результат, і відомий результат негативний
- True Positives (TP) — модель передбачає позитивний результат, і відомий результат позитивний
- False Negatives (FN) — модель передбачає негативний результат, але відомий результат позитивний
- False Positives (FP) — модель передбачає позитивний результат, але відомий результат негативний.
Ці кількості (TN, TP, FN і FP) мають сумуватися до числа записів у тестових даних, які є лише підмножиною даних про перельоти. Ви можете порівняти з кількістю записів у тестових даних, тобто flights_test.count().
Примітка. Передбачення виконано на тестових даних, тож ці кількості менші, ніж були б для передбачень на тренувальних даних.
Ця вправа є частиною курсу
Machine Learning з PySpark
Інструкції до вправи
- Створіть матрицю помилок, підрахувавши комбінації
labelіprediction. Відобразьте результат. - Підрахуйте кількість True Negatives, True Positives, False Negatives і False Positives.
- Обчисліть точність.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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)