Показники якості для моделі RF
У попередніх вправах ви отримали значення accuracy для своєї моделі випадкового лісу. Цього разу ми знаємо, що accuracy може бути оманливою у задачах виявлення шахрайства. Для сильно незбалансованих даних про шахрайство крива AUROC є надійнішим показником якості, який використовують, щоб порівнювати різні класифікатори. Крім того, classification report показує точність (precision) і повноту (recall) вашої моделі, а confusion matrix фактично демонструє, скільки випадків шахрайства ви передбачили правильно. Отже, дістаньмо ці показники якості.
Ви продовжуєте працювати з тією самою моделлю випадкового лісу з попередньої вправи. Вашу модель, визначену як model = RandomForestClassifier(random_state=5), уже навчено на тренувальних даних, а X_train, y_train, X_test, y_test доступні.
Ця вправа є частиною курсу
Виявлення шахрайства в Python
Інструкції до вправи
- Імпортуйте classification report, confusion matrix і ROC score з
sklearn.metrics. - Отримайте бінарні передбачення зі свого навченного випадкового лісу
model. - Отримайте ймовірності передбачень, виконавши функцію
predict_proba(). - Здобудьте classification report і confusion matrix, порівнявши
y_testзpredicted.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Import the packages to get the different performance metrics
from sklearn.metrics import ____, ____, ____
# Obtain the predictions from our random forest model
predicted = model.____(X_test)
# Predict probabilities
probs = ____.____(X_test)
# Print the ROC curve, classification report and confusion matrix
print(____(y_test, probs[:,1]))
print(____(____, predicted))
print(____(____, ____))