Налаштування Random Forest для виявлення шахрайства
У цій вправі ви розглянете параметри класифікатора випадкового лісу: ми будемо призначати ваги та коригувати структуру дерев рішень у лісі. Ви визначите ваги вручну, щоб трохи компенсувати незбалансованість. У нашому випадку маємо 300 випадків шахрайства проти 7000 не шахрайських, тож, встановивши співвідношення ваг 1:12, ми отримаємо приблизно 1/3 шахрайських до 2/3 не шахрайських, чого достатньо для навчання моделі.
Дані у цій вправі вже поділено на тренувальну та тестову вибірки, тож вам потрібно зосередитися лише на визначенні моделі. Потім ви можете скористатися функцією get_model_results() як скороченим шляхом: вона навчає модель на тренувальних даних, робить передбачення та обчислює метрики якості — подібно до кроків, які ви виконували у попередніх вправах.
Ця вправа є частиною курсу
Виявлення шахрайства в Python
Інструкції до вправи
- Змініть параметр
weight, щоб встановити співвідношення 1 до 12 для не шахрайських і шахрайських випадків, а також задайте критерій розбиття 'entropy'. - Встановіть максимальну глибину на 10.
- Встановіть мінімальну кількість зразків у листкових вузлах на 10.
- Встановіть кількість дерев у моделі на 20.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Change the model options
model = RandomForestClassifier(bootstrap=True, class_weight={0:____, 1:____}, criterion='____',
# Change depth of model
max_depth=____,
# Change the number of samples in leaf nodes
min_samples_leaf=____,
# Change the number of trees to use
n_estimators=____, n_jobs=-1, random_state=5)
# Run the function get_model_results
get_model_results(X_train, y_train, X_test, y_test, model)