R Метрика RMSE не применяется для классификационных моделей

Я пытаюсь исследовать свою модель с R с помощью xgboost. Модель обучения в целом работает хорошо, но с кареткой это некоторая проблема с метрикой.

Я попытался установить коэффициент для столбца класса, бит все еще нет результата.

мои данные

ID  var1var2TARGET
1   5   0   1
2   4   3   1
3   4   2   0
4   3   1   0
5   2   4   1
6   1   2   1
7   5   3   1
8   4   1   0
9   4   1   0
10  2   4   1
11  5   5   1

для этого я делаю

train <- read.csv()
train.y <- train$TARGET
train$TARGET <- NULL
train$ID <- NULL
train.y <- lapply(train.y, factor)

затем я готовлю параметры модели

xgb_grid_1 = expand.grid(
  nrounds = 1000,
  eta = c(0.01, 0.001, 0.0001),
  max_depth = c(2, 4, 6, 8, 10),
  gamma = 1
)

# pack the training control parameters
xgb_trcontrol_1 = trainControl(
  method = "cv",
  number = 5,
  verboseIter = TRUE,
  returnData = FALSE,
  returnResamp = "all",                                                        # save losses across all models
  classProbs = TRUE,                                                           # set to TRUE for AUC to be computed
  summaryFunction = twoClassSummary,
  allowParallel = TRUE
)

и после всего этого я вызываю функцию поезда

xgb_train_1 = train(
  x = train,
  y = train.y,
  trControl = xgb_trcontrol_1,
  tuneGrid = xgb_grid_1,
  method = "xgbTree"
)

это дает мне

Error in train.default(x = train, y = train.y, trControl = xgb_trcontrol_1,  : 
  Metric RMSE not applicable for classification models

почему это может быть?

1 ответов


вы должны попытаться изменить train.y <- lapply(train.y, factor) до train.y <- factor(train.y, labels = c("yes", "no")).

caret обычно жалуется, если метки 0 или 1, поэтому попробуйте изменить его.