Ich führte eine computerbasierte Bewertung verschiedener Methoden zur Anpassung eines bestimmten in den Paläowissenschaften verwendeten Modelltyps durch. Ich hatte ein umfangreiches Trainingsset und habe daher ein Testset nach dem Zufallsprinzip (geschichtete Zufallsauswahl) beiseite gelegt. Ich habe verschiedene Methoden an die Proben des Trainingssatzes angepasst und unter Verwendung der resultierenden Modelle die Reaktion für die Proben des Testsatzes vorhergesagt und einen RMSEP über die Proben im Testsatz berechnet. Dies ist ein einzelner Lauf .
Ich habe diesen Vorgang dann viele Male wiederholt, jedes Mal, wenn ich einen anderen Trainingssatz ausgewählt habe, indem ich einen neuen Testsatz zufällig ausgewählt habe.
Nachdem ich dies getan habe, möchte ich untersuchen, ob eine der Methoden eine bessere oder schlechtere RMSEP-Leistung aufweist. Ich möchte auch mehrere Vergleiche der paarweisen Methoden durchführen.
Mein Ansatz bestand darin, ein Modell mit linearen Mischeffekten (LME) mit einem einzelnen Zufallseffekt für Run anzupassen . Ich habe lmer()
das lme4- Paket verwendet, um meinem Modell zu entsprechen, und die Funktionen des multcomp- Pakets, um die mehrfachen Vergleiche durchzuführen. Mein Modell war im Wesentlichen
lmer(RMSEP ~ method + (1 | Run), data = FOO)
Dabei method
handelt es sich um einen Faktor, der angibt, mit welcher Methode die Modellvorhersagen für den Testsatz erstellt wurden, und Run
um einen Indikator für jeden einzelnen Lauf meines "Experiments".
Meine Frage bezieht sich auf die Reste der LME. Angesichts des einzelnen Zufallseffekts für den Lauf gehe ich davon aus, dass die RMSEP-Werte für diesen Lauf bis zu einem gewissen Grad korreliert sind, aber zwischen den Läufen nicht korreliert sind, basierend auf der induzierten Korrelation, die der Zufallseffekt bietet.
Ist diese Annahme der Unabhängigkeit zwischen den Läufen gültig? Wenn nicht, gibt es eine Möglichkeit, dies im LME-Modell zu berücksichtigen, oder sollte ich nach einer anderen Art der statischen Analyse suchen, um meine Frage zu beantworten?
quelle
Antworten:
Sie führen hier im Wesentlichen eine Art Kreuzvalidierung für jede Ihrer m Methoden durch und möchten dann sehen, welche Methode besser abschneidet. Die Ergebnisse zwischen den Läufen sind auf jeden Fall abhängig, da sie auf denselben Daten basieren und Sie Überschneidungen zwischen Ihren Zügen / Testsätzen haben. Die Frage ist, ob dies wichtig sein sollte, wenn Sie die Methoden vergleichen.
Angenommen, Sie führen nur einen Durchlauf durch und stellen fest, dass eine Methode besser ist als die anderen. Sie würden sich dann fragen - liegt das einfach an der konkreten Auswahl des Test-Sets? Aus diesem Grund wiederholen Sie Ihren Test für viele verschiedene Züge / Testsätze. Um festzustellen, dass eine Methode besser als andere Methoden ist, führen Sie sie mehrmals aus und vergleichen Sie sie bei jedem Durchlauf mit den anderen Methoden (Sie haben verschiedene Möglichkeiten, den Fehler / Rang / usw. zu untersuchen). Wenn Sie nun feststellen, dass eine Methode bei den meisten Läufen die bessere Leistung erbringt, ist das Ergebnis das, was es ist. Ich bin mir nicht sicher, ob es hilfreich ist, einen p-Wert anzugeben. Oder, wenn Sie einen p-Wert angeben möchten, fragen Sie sich, was das Hintergrundmodell hier ist?
quelle
Kann nicht wirklich verstehen, was Sie getan haben, aber
Ja, das spiegelt wider, wie herausfordernd das Testset in diesem Lauf war
Nein, aufgrund der Art und Weise, wie Sie die Testsätze abgetastet haben, überlappen sich einige stärker als andere (definitiv keine unabhängigen Replikationen).
Sie müssten die Abhängigkeit auf der Grundlage der Überlappung modellieren oder die Bewertung entwerfen, damit die Läufe unabhängig sind. Ich würde die Statistik zur Kreuzvalidierung lesen ;-)
quelle