Я пытался построить модель ML, которая предсказывает время, необходимое различным продуктам для прохождения конвейера развертывания.Я создал около 30-40 различных функций, 90% которых являются категориальными, а 10% - числовыми.Например, у меня есть одна функция «категория продукта», которая может принимать 5 различных значений.Затем я создаю фиктивные значения для всех моих категориальных переменных, и вместо этого получаю около 200-300 переменных.
Я обучил модель XGboost, проверил важность функций и заметил, что большинство моих функций имеют значение <0,001.и многие из них, около 30 по 0. Что мне делать с этой информацией?Должен ли я отбросить эти переменные (например, отбросить половину категорий товаров) или сгруппировать их все вместе в категорию «Другие»?Любые советы или стандартные способы борьбы с этим? </p>
РЕДАКТИРОВАТЬ: Мои гиперпараметры.
xgb = xgboost.XGBRegressor(
max_depth = 11,
n_estimators= 150,
min_child_weight= 1,
eta= .3,
subsample= 0.9,
gamma= 0.1,
colsample_bytree= 0.9,
objective= 'reg:gamma'
)