Ich verwende createFolds()
in R (Version: 3.3.0), um Zug/Test-Partitionen zu erstellen. Um die Ergebnisse reproduzierbar zu machen, verwendete ich set.seed()
mit einem Keimwert von 10. Wie erwartet, waren die Ergebnisse (erzeugte Falten) reproduzierbar.R: set.seed() Ergebnisse stimmen nicht überein, wenn das Caret-Paket geladen wurde
Aber sobald ich Caret-Paket direkt nach dem Setzen der Samen geladen. Und dann habe ich mit createFolds festgestellt, dass die erzeugten Falten anders waren (obwohl sie immer noch reproduzierbar sind).
Insbesondere die erzeugten Falten unterscheiden sich in den folgenden beiden Fällen:
Fall 1:
library(caret)
set.seed(10)
folds=createFolds(y,k=5,returnTrain=TRUE)
Fall 2:
set.seed(10)
library(caret)
folds=createFolds(y,k=5,returnTrain=TRUE)
wo y
ein Vektor ist.
Warum konnte das passieren?
Eine [ähnliche Frage] (https://github.com/topepo/caret/issues/452) kam neulich auf; einige Paket verwenden Zufallszahlen beim Start – topepo
@topepo gibt es in irgendeiner Weise um dieses Problem? Ich habe das gleiche Problem, aber selbst wenn ich den Seed nach dem Laden des Caret-Pakets setze. Wird das erwartet? Ich hatte gehofft, Caret für createFolds zu verwenden, aber ich brauche einen Weg, um es reproduzierbar zu machen. EDIT: Ich habe gerade gemerkt, dass ich nicht zwischen verschiedenen Aufrufen von 'createFolds()' den Grund gesetzt habe, das war das Problem. – Reilstein