R каретка с воспроизводимым результатом/результатами

Я использую пакет caret в R для контролируемого многомерного анализа. Я пытаюсь добавить в свой сценарий некоторые функции, которые позволят получать воспроизводимые результаты при каждом запуске сценария.

У меня есть эта настройка для использования 2 моделей классификации (каждая модель запускается отдельно, а не как enesmble):

library(caret)

load.data = ....
cleaned.data = cleaning(load.data)
mycontrol = trainControl(...)
train, test = createDatapartition(...)

model1 = train(...,
               data=train, ...,
               trControl=mycontrol,
               preprocess=c('center'))
model2 = train(...,
               data=train, ...,
               trControl=mycontrol,
               preprocess=c('pca'))

feature.importances = ...
summary(resamples(list(m1=model1,m2=model2)))
learing_curve_dat(...) #see link 1. below.
predict()
Evaluate(....) #see link 2. below

Где в этом конвейере я должен использовать set.seed(#) и что должен # для получения воспроизводимых результатов при каждом запуске скрипта - или я просто выбираю любое значение для # случайным образом?

Ссылки:

1. 2.


person edesz    schedule 21.07.2017    source источник


Ответы (1)


Вам следует прочитать Примечания по воспроизводимости на веб-странице пакета.

Номер семян не имеет значения. Я генерирую один с sample.int(100000, 1). В зависимости от того, как вы делаете модель, вы, по крайней мере, должны установить начальное значение непосредственно перед вызовом train (но, пожалуйста, прочитайте ссылку выше).

person topepo    schedule 22.07.2017