Встречается на собеседованиях • сегодня
Может ли градиентный бустинг деревьев дать отрицательное значение при положительной осевой переменной
Градиентный бустинг деревьев может дать отрицательное предсказание даже при положительной целевой переменной. Это происходит из-за:
- Аддитивной природы бустинга - каждое дерево вносит коррекцию в предсказание, и суммарный результат может выйти за границы исходного диапазона.
-
Использования функций потерь, которые не ограничивают выходные значения (например, MSE).
-
Особенностей начального приближения (базового предсказания), которое может быть отрицательным.
Пример с XGBoost:
python
import xgboost as xgb
import numpy as np
X = np.array([[1], [2], [3]])
y = np.array([1, 2, 3]) # Все целевые значения положительные
model = xgb.XGBRegressor()
model.fit(X, y)
print(model.predict([[0]])) # Может выдать отрицательное значениеДля ограничения диапазона можно использовать:
- Трансформацию целевой переменной (логарифмирование)
- Функции потерь с ограничениями (Poisson, Gamma)
- Постобработку предсказаний (например,
max(pred, 0))

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы