Задание 1. Расчёт количества экспериментов Grid Search
Для модели градиентного бустинга рассматриваются следующие
гиперпараметры:
max_depth = [2, 3, 4, 5]
learning_rate = [0.01, 0.05, 0.1]
cv_folds = 5
Необходимо:
- Определить
количество комбинаций гиперпараметров.
- Рассчитать
количество обучений при пятикратной перекрёстной проверке.
- Реализовать
вычисления на Python.
- Создать
GridSearchCV для модели GradientBoostingRegressor.
- Объяснить,
почему тестовая выборка не должна участвовать в подборе гиперпараметров.
Задание 2. Сравнение Grid Search и Random Search
Используя make_classification и DecisionTreeClassifier,
необходимо:
- Создать
300 наблюдений с 6 признаками.
- Разделить
данные на обучающую и тестовую выборки.
- Подготовить
значения max_depth=[2, 3, 4, 5, 6].
- Подготовить
значения min_samples_leaf=[1, 2, 3, 4].
- Выполнить
Grid Search с cv=5.
- Выполнить
Random Search с n_iter=8 и cv=5.
- Вывести
лучшие гиперпараметры и точность обеих моделей на тестовых данных.
- Сравнить
количество проверенных конфигураций.
Задание 3. Интерпретация и устойчивость модели
Используя make_classification, необходимо:
- Создать
400 наблюдений с 5 признаками.
- Разделить
данные на обучающую и тестовую выборки.
- Обучить
RandomForestClassifier.
- Вычислить
исходную точность модели.
- Определить
важность признаков с помощью permutation_importance.
- Добавить
небольшой случайный шум к тестовым признакам.
- Повторно
вычислить точность модели.
- Сравнить
показатели и объяснить, что результаты говорят об устойчивости модели.
- Объяснить,
почему важность признаков не является доказательством причинности.