Ich versuche eine 10-fache Kreuzvalidierung für einige Glm-Modelle, die ich früher in R gebaut habe. Ich bin ein wenig verwirrt über die cv.glm()
Funktion im boot
Paket, obwohl Ich habe viele Hilfedateien gelesen. Wenn ich die folgende Formel liefern:Kreuzvalidierung für glm() Modelle
library(boot)
cv.glm(data, glmfit, K=10)
Ist das „Daten“ Argument verweist hier auf den gesamten Datensatz oder nur auf das Test-Set?
Die Beispiele, die ich bisher gesehen habe, liefern das "Daten" -Argument wie das Test-Set, aber das hat keinen Sinn ergeben, wie zum Beispiel warum 10-fach auf demselben Test-Set? Sie werden alle genau dasselbe Ergebnis liefern (ich nehme an!).
Leider ?cv.glm
erklärt es in einem nebligen Weise:
Daten: eine Matrix oder ein Datenrahmen, der die Daten enthält. Die Zeilen sollten Fälle sein, und die Spalten entsprechen den Variablen, von denen die Antwort
Meine andere Frage über das $delta[1]
Ergebnis sein würde. Ist dies der durchschnittliche Vorhersagefehler über die 10 Studien hinweg? Was, wenn ich den Fehler für jede Falte bekommen möchte?
Hier ist, was mein Skript wie folgt aussieht:
##data partitioning
sub <- sample(nrow(data), floor(nrow(x) * 0.9))
training <- data[sub, ]
testing <- data[-sub, ]
##model building
model <- glm(formula = groupcol ~ var1 + var2 + var3,
family = "binomial", data = training)
##cross-validation
cv.glm(testing, model, K=10)
Blick auf das Beispiel Abschnitt 'boot ::: cv. glm'. Sie sollten die gesamten Daten, das Modell und den Lebenslauf eingeben. –
Vielen Dank für Ihre Antwort @ RomanLuštrik. Klingt gut. Ich wundere mich immer noch über ein paar Dinge. Verwendet diese Funktion alle gelieferten Daten in der Kreuzvalidierung? Angenommen, ich habe einen Datenrahmen von 1000 Zeilen für die 'cv.glm (Daten, Glm, K = 10) geliefert' 'macht es 10 Partionen der Daten, jede von einer 100 und machen die Kreuzvalidierung? Tut mir leid, dass ich durch den? Lebenslauf gegangen bin.Glm, aber ich habe das nicht gefunden. – Error404
Wenn Sie einen 2-fachen CV erstellen würden, würde die Funktion 50% der Daten benötigen und zum Modell passen. Es würde die anderen 50% der Daten verwenden, um zu sehen, wie gut das Modell die Daten beschreibt. Oder, in Leave-One-out CV, würde es das Modell zu allen außer einem Datenpunkt passen und sehen, wie gut der ausgewählte "Punkt" getan hat. Wiederhole N mal und du bekommst dein Ergebnis. –