Ich habe ein neuronales Netzwerk (Feed-Forward Single Layer), mit dem ich versuche, eine umweltbezogene Variable aus zwei Finanzvariablen vorherzusagen (Regression). Ich benutze die "Zug" -Funktion aus dem Caret-Paket.
Ich benutze den nnet()
Algorithmus im Caret-Paket. Ich habe zwei kontinuierliche Prädiktoren und 420 Datenpunkte.
Zum theoretischen Verständnis versuche ich, mein Modell absichtlich zu überarbeiten. Nach meinem Verständnis sollte dies normalerweise mit jedem Datensatz funktionieren , z. B. beim Erhöhen der "Größe" (dh der Anzahl der versteckten Einheiten). Eine drastische Vergrößerung versteckter Einheiten führt jedoch nicht zu einer Überanpassung.
Ist es also falsch anzunehmen, dass Sie jedes neuronale Netzwerk durch Erhöhen der "Größe" überanpassen können? Welche andere Variable könnte stattdessen zu einer Überanpassung führen?
grid <- expand.grid(size = 20
)
control <- trainControl(method = "cv",
number = 10,
verboseIter = TRUE
)
fit <- train(x=train_parametres, y=train_result,
method = "mlp",
metric = "Rsquared",
learnFunc = "Std_Backpropagation",
learnFuncParams = c(0.2, 0.0),
maxit = 1000,
trControl = control,
tuneGrid = grid,
preProcess = c("center", "scale"),
linout = T,
verbose = T,
allowParallel = T
)