Можно ли в млр3 прогнозировать новые данные без переобучения модели?

Пример с радужной оболочкой. У нас есть данные, которые называются tr.

df = iris
set.seed(1)
sp = sample(nrow(iris), 0.7*nrow(iris))
tr = df[sp,]
newdata = df[-sp,]

Строим модель в mlr3 по имеющимся у нас данным:

tsk = TaskClassif$new(id="A", backend=tr, target="Species")
lrn = mlr_learners$get("classif.rpart")
train_set <- sample(tsk$nrow, 0.8*tsk$nrow)
test_set <- setdiff(seq_len(tsk$nrow), train_set)
# train the model
lrn$train(tsk, row_ids = train_set)
# predict data
pred <- lrn$predict(tsk, row_ids = test_set)

Теперь я хочу предсказать новые данные с помощью созданной мной модели, но я нахожу row_ids только в качестве аргумента для предсказания. В наборе данных newdata нет row_ids в tsk. Я знаю, что могу включить эти данные в модель и переобучиться. Но у меня вопрос: есть ли способ прогнозировать без переобучения tsk?

Спасибо!

0 ответов

Другие вопросы по тегам