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). ошибка не интересна

Ответы (0 шт):