xgboost выбор ошибки при поиске экстремальных значений
Тренирую регрессию xgboost c objective = 'reg:squarederror.
Результаты имеют нормальное распределение от -10 до +10. Для меня важна ошибка reg:squarederror в предсказаний положительных значений свыше 7. Их 10% от всего датасета. Ошибка предсказания целей от -10 до 7 значения не имеет.
Какие есть подходы к решению такой задачи:
- задать веса наблюдений через
sample_weight? - использовать другой
objective, какой? oversamplingвсего что выше 7?
Пример.
- Предсказали 10 реально -10 или (-10/10). самая большая ошибка
- Предсказали 10 реально 7. небольшая ошибка
- Предсказали 10 реально 0. большая ошибка
- Предсказали -10 реально (от -10 до 6). ошибка не интересна