НачатьНачать бесплатно

Ограничения кросс-валидационного тестирования

Вы можете задать очень большие значения для параметров nfold и num_boost_round, если хотите провести интенсивную кросс-валидацию. Датафрейм cv_results_big уже загружен в рабочее пространство и был создан следующим кодом:

cv = xgb.cv(params, DTrain, num_boost_round = 600, nfold=10,
            shuffle = True)

Здесь cv() выполнил 600 итераций кросс-валидации! Параметр shuffle указывает функции перемешивать записи при каждой итерации.

Изучите эти данные, чтобы посмотреть, каких значений достигает AUC, и проверьте, достигает ли он 1.0 при кросс-валидации. Также постройте график значений AUC на тестовой выборке, чтобы отследить динамику.

Датафрейм cv_results_big загружен в рабочее пространство.

Это упражнение является частью курса

Моделирование кредитного риска на Python

Посмотреть курс

Инструкции к упражнению

  • Выведите первые пять строк датафрейма с результатами кросс-валидации.
  • Выведите среднее значение AUC на тестовой выборке из датафрейма результатов кросс-валидации, округлённое до двух знаков.
  • Постройте линейный график значений AUC на тестовой выборке по итерациям.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Print the first five rows of the CV results data frame
print(____.____())

# Calculate the mean of the test AUC scores
print(np.____(____[____]).round(2))

# Plot the test AUC scores for each iteration
plt.____(____[____])
plt.title('Test AUC Score Over 600 Iterations')
plt.xlabel('Iteration Number')
plt.ylabel('Test AUC Score')
plt.____()
Редактировать и запускать код