Ich habe eine Frage zum Cross-Validation-Prozess. Ich bin mitten in einem Kurs des Maschinellen Lernens auf der Cursera. Eines der Themen ist die Kreuzvalidierung. Ich fand es etwas schwierig zu folgen. Ich weiß, warum wir einen Lebenslauf benötigen, weil wir möchten, dass unsere Modelle auch für zukünftige (unbekannte) Daten geeignet sind und der Lebenslauf keine Überanpassung zulässt. Der Prozess selbst ist jedoch verwirrend.
Ich habe verstanden, dass ich Daten in drei Untergruppen aufspalte: Training, Validierung und Test. Train and Validation ist es, die optimale Komplexität eines Modells zu finden. Was ich nicht verstehe, ist die dritte Untergruppe. Ich verstehe, dass ich eine Reihe von Funktionen für das Modell nehme, es trainiere und in der Teilmenge Validierung validiere und nach der Mindestkostenfunktion suche, wenn ich die Struktur ändere. Als ich es gefunden habe, teste ich das Modell in der Teilmenge Test. Wenn ich bereits die minimale Kostenfunktion für die Teilmenge "Validierung" gefunden habe, warum muss ich sie dann erneut in der Teilmenge "Test" testen?
Könnte das bitte jemand für mich klären?
Vielen Dank
Antworten:
quelle
Wegen zufälliger Fehler: Normalerweise haben Sie nur eine begrenzte Anzahl von Fällen.
Die Optimierung der Validierungsleistung (innerer Test) bedeutet, dass Sie möglicherweise zu stark an diesen inneren Test angepasst sind. Der innere Testsatz trägt zur Schätzung des endgültigen Modells bei und ist daher nicht unabhängig vom Modell.
Dies bedeutet, dass Sie einen anderen (äußeren) Testsatz benötigen, der vom gesamten Modellierungsverfahren unabhängig ist (einschließlich aller Optimierungs- und datengesteuerten Vorverarbeitungs- oder Modellauswahlprozesse), wenn Sie die Generalisierungseigenschaften schätzen möchten.
Ich empfehle Ihnen, eine Simulation durchzuführen und die drei verschiedenen möglichen Fehlerschätzungen zu vergleichen
misst die Anpassungsgüte
In einer Simulation können Sie sie problemlos auch mit einem geeigneten, großen, unabhängig erstellten Testsatz vergleichen. Wenn der Aufbau korrekt ist, sollte der äußere Test unverzerrt sein (bezogen auf das ausgewertete Ersatzmodell, nicht auf ein "endgültiges" Modell, das auf dem gesamten Datensatz basiert). Der innere Test ist in der Regel optimistisch und die Resubstitution noch optimistischer.
In meinem Bereich würde der innere Test den Verallgemeinerungsfehler leicht um einen Faktor von 2 - 5 unterschätzen (viel mehr für aggressive Optimierungsschemata).
Hinweis: Die Nomenklatur der Sätze ist nicht universell. In meinem Fachgebiet (analytische Chemie) bedeutet Validierung normalerweise den Nachweis der Leistung des endgültigen Verfahrens - also mehr, was Ihr "Test" -Set als was Ihr "Validierungs" -Set tut.
Ich spreche daher lieber vom inneren und äußeren Testsatz oder vom Optimierungstestsatz (= innerer Testsatz), und dann würde der Validierungssatz den äußeren Testsatz bedeuten.
quelle
Während des Trainings des Modells muss man Metaparameter für das Modell auswählen (zum Beispiel Regularisierungsparameter) oder sogar aus mehreren Modellen auswählen. In diesem Fall wird die Validierungsuntermenge für die Parameterauswahl verwendet, die Testuntermenge jedoch für die endgültige Vorhersageschätzung.
quelle