#r #xgboost
Вопрос:
Я построил следующую модель, но не могу понять, как ее реализовать в xgboost.
Я пытаюсь приблизить вероятности в рамках данного портфеля, используя в качестве основы существующую электронную таблицу (начальные значения y_test).
Предполагая, что я разделил свой набор данных на таблицы данных train_db и test_db:
oos_error <- Inf
repeat {
rf <-
train(
train_dt[, .(<x values>)],
train_dt[, y / y_test],
weights = train_dt$WEIGHTS,
preProcess = c("center", "scale"),
method = "rpart2",
tuneGrid = expand.grid(maxdepth = 2)
)
train_dt[, y_test := 0.99 * y_test 0.01 * y_test * predict(rf, newdata = train_dt)]
test_dt[, y_test := 0.99 * y_test 0.01 * y_test * predict(rf, newdata = test_dt)]
oos_error_prev <- oos_error
oos_error <- test_dt[, LOSS_FUNCTION(.)] ## Residual squared error
if (oos_error > oos_error_prev) {
break()
}
}
При попытке построить мой ввод train_dt xgb.DMatrix, я не уверен, что вводить в качестве входных данных, так как то, что пытается быть предсказано, основано на предыдущем вводе.