XGBoost использует только часть функций

#r #machine-learning #xgboost

Вопрос:

Я реализую XGBoost в R. В моих данных у меня 54 функции и 7000 образцов, но после обучения я получаю модель только с 13 функциями. Мне было интересно, кто-нибудь знает причину, по которой используется только небольшая часть функций? Благодарю

Вот параметры, которые я использую:

 trainm <- sparse.model.matrix(number ~ .-1, data = train)
train_label <- train[,"number"]
train_matrix <- xgb.DMatrix(data = as.matrix(trainm), label = train_label)

testm <- sparse.model.matrix(number~.-1, data = test)
test_label <- test[,"number"]
test_matrix <- xgb.DMatrix(data = as.matrix(testm), label = test_label)

# Parameters
xgb_params <- list("eval_metric" = "mae")
watchlist <- list(train = train_matrix, test = test_matrix)

bst_model <- xgb.train(data = train_matrix,
                       params = xgb_params,
                       nrounds = 100,         ## iteration
                       watchlist = watchlist,
                       eta = 0.005,            ## learning rate
                       max.depth = 10,          ## tree depth
                       gamma = 0.2,            ## artificial bias (avoid overfitting)
                       subsample = 0.8,        ## random sampling
                       colsample_bytree = 0.8, ## subsample columns when constructing each tree.
                       num_feature = 54)