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

Кросс-валидация

Кросс-валидация — это метод оценки качества модели на отложенных данных. Он позволяет убедиться, что результаты на тестовой выборке не зависят от конкретного способа разбиения данных. В этом упражнении вы воспользуетесь инструментами из sklearn, чтобы выполнить K-блочную кросс-валидацию с помощью модуля KFold() и оценить точность и полноту модели на основе дерева решений.

В вашем рабочем пространстве доступны X_train, y_train, X_test, y_test, а также pandas как pd, numpy как np и sklearn. Кроме того, из sklearn.model_selection доступны KFold() и cross_val_score().

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

Прогнозирование CTR с помощью машинного обучения на Python

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

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

  • Создайте классификатор на основе дерева решений.
  • Настройте K-блочную кросс-валидацию с четырьмя разбиениями и присвойте результат переменной k-fold.
  • Используйте k_fold для запуска кросс-валидации с помощью cross_val_score(), чтобы оценить точность и полноту вашей модели (не используйте recall_score() или precision_score()).

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

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

# Create model 
clf = ____

# Set up k-fold
k_fold = ____(n_splits = 4, random_state = 0, shuffle = True)

# Evaluate precision and recall for each fold
precision = ____(
  clf, X_train, ____, cv = ____, scoring = 'precision_weighted')
recall = ____(
  clf, X_train, ____, cv = ____, scoring = 'recall_weighted')
print("Precision scores: %s" %(precision)) 
print("Recall scores: %s" %(recall))
Редактировать и запускать код