Регуляризация
Регуляризация — это процесс добавления в модель дополнительной информации для предотвращения переобучения. Она помогает улучшить метрики оценки, с которыми вы познакомились ранее в этой главе. В данном упражнении вы будете изменять параметр максимальной глубины дерева решений, чтобы проследить, как это влияет на результаты классификации.
X_train, y_train, X_test, y_test доступны в вашем рабочем пространстве. Там же доступны pandas как pd, numpy как np и sklearn. Кроме того, из sklearn.metrics доступны функции confusion_matrix(), precision_score() и recall_score().
Это упражнение является частью курса
Прогнозирование CTR с помощью машинного обучения на Python
Инструкции к упражнению
- Постройте несколько деревьев решений, варьируя максимальную глубину каждого дерева.
- Для каждого дерева выполните обучение и получите предсказания на тестовой выборке.
- Оцените матрицу ошибок, точность и полноту для каждого дерева.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Iterate over different levels of max depth
for max_depth_val in [2, 3, 5, 10, 15, 20]:
# Create and fit model
clf = ____(____ = max_depth_val)
print("Evaluating tree with max_depth = %s" %(max_depth_val))
y_pred = clf.fit(____, ____).predict(____)
# Evaluate confusion matrix, precision, recall
print("Confusion matrix: ")
print(____(y_test, y_pred))
prec = ____(____, ____, average = 'weighted')
recall = ____(____, ____, average = 'weighted')
print("Precision: %s, Recall: %s" %(prec, recall))