Создание функций для поиска по сетке
В науке о данных очень полезно реализовывать алгоритмы, модели и процессы «с нуля» — это позволяет глубже понять, что происходит внутри. Конечно, для такой работы существуют отличные пакеты и библиотеки (мы скоро к ним перейдём!), но самостоятельная реализация даст вам значительное преимущество в работе с данными.
В этом упражнении вы создадите функцию, которая принимает 2 гиперпараметра, строит модели и возвращает результаты. Эту функцию вы будете использовать в одном из следующих упражнений.
Вам будут доступны наборы данных X_train, X_test, y_train и y_test.
Это упражнение является частью курса
Подбор гиперпараметров в Python
Инструкции к упражнению
- Создайте функцию, принимающую два параметра:
learning_rate(скорость обучения) иmax_depth(максимальная глубина). - Добавьте в функцию возможность строить модель GBM и обучать её на данных с заданными гиперпараметрами.
- Настройте функцию так, чтобы она возвращала результаты работы модели и выбранные гиперпараметры (
learning_rateиmax_depth).
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Create the function
def gbm_grid_search(____, ____):
# Create the model
model = GradientBoostingClassifier(____=___, ____=____)
# Use the model to make predictions
predictions = model.fit(____, ____).predict(____)
# Return the hyperparameters and score
return([____, ____, accuracy_score(____, ____)])