Оцініть модель Decision Tree
Ви можете оцінити якість своєї моделі за тим, наскільки добре вона працює на тестових даних. Оскільки модель не навчалася на цих даних, це дає об'єктивну оцінку моделі.
Матриця помилок (confusion matrix) дає корисний розподіл передбачень щодо відомих значень. Вона має чотири клітинки, які відображають кількість:
- 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)