Задание 1. Вычисление корректировки прогноза
Для модели градиентного бустинга известны следующие
значения:
- Фактическое
значение: y = 25.
- Текущий
прогноз: F₀(x) = 19.
- Скорость
обучения: η = 0.3.
Необходимо:
- Вычислить
остаток y − F₀(x).
- Определить
новый прогноз, предполагая, что дерево выдаёт корректировку, равную
остатку.
- Реализовать
вычисление на Python.
- Объяснить
роль скорости обучения в обновлении прогноза.
Начальный код:
actual = 25
prediction = 19
learning_rate = 0.3
Задание 2. Сравнение скорости обучения
Используя make_regression и GradientBoostingRegressor,
необходимо:
- Создать
300 наблюдений с 5 признаками.
- Разделить
данные на обучающую и тестовую выборки.
- Обучить
модели с learning_rate=0.1 и learning_rate=0.01.
- Использовать
для каждой скорости обучения 50 и 200 деревьев.
- Рассчитать
MSE.
- Сравнить
полученные результаты.
- Объяснить
связь между скоростью обучения и количеством деревьев.
Задание 3. Глубина деревьев и ранняя остановка
Используя GradientBoostingRegressor, необходимо:
- Создать
набор данных из 400 наблюдений с 6 признаками.
- Разделить
данные на обучающую и тестовую выборки.
- Обучить
модель с max_depth=2.
- Обучить
модель с max_depth=4.
- Для
обеих моделей включить раннюю остановку с n_iter_no_change=10.
- Сравнить
количество фактически использованных деревьев и MSE.
- Объяснить,
как глубина деревьев и ранняя остановка влияют на сложность модели.