3

Allgemein gesagt, ist es möglich zu sagen, ob das Training eines gegebenen neuralen Netzwerks der Tiefe X auf Y Trainingsbeispielen für Z-Epochen wahrscheinlich übermäßig ist? Oder kann Überanpassen nur mit Sicherheit erkannt werden, wenn man Verlust- und Genauigkeitsgraphen von Training und Testset betrachtet?Kann man in wenigen Epochen 250.000 Beispiele überarbeiten?

Konkret habe ich ~ 250.000 Beispiele, von denen jedes ein flaches Bild 200x200px ist. Das Modell ist ein CNN mit etwa 5 Faltung + Pooling-Schichten, gefolgt von 2 dichten Schichten mit jeweils 1024 Einheiten. Das Modell klassifiziert 12 verschiedene Klassen. Ich habe es für ungefähr 35 Stunden mit ~ 90% Genauigkeit auf Trainingssatz und ~ 80% Test-Set trainiert.

Antwort

3

Allgemein ist es möglich zu sagen, ob Training ein gegebenes neuronales Netzwerk der Tiefe X auf Y Trainingsbeispiele für Z-Epochen wahrscheinlich überfrachten wird?

Im Allgemeinen keine. Der Einbau von Deep-Learning-Modellen ist immer noch eine fast ausschließlich empirische Kunst, und die Theorie dahinter ist immer noch (sehr) schlecht. Und wenn man mehr und mehr Erfahrung gewinnt, ist es wahrscheinlicher, dass man vorher mitteilt, ob ein Modell zu Überanpassung neigt, das Vertrauen wird im Allgemeinen nicht hoch sein (extreme Fälle ausgeschlossen), und der einzige zuverlässige Richter wird das Experiment sein.

Noch ein wenig weiter: Wenn Sie Keras MNIST CNN example nehmen und die Zwischendichte Schicht (en) entfernen Pooling-Schichten und die endgültige softmax ein, werden Sie mit ~ 98,8% Test Genauigkeit nach der jemand nicht bewusst nur 20 Epochen, aber ich bin am Ende, dass diese zuverlässig vorher ...

vorhersagen konnten, können oder Überanpassung nur sicher erkannt werden, indem man die Verlust- und Genauigkeitsgraphen des Trainings gegenüber dem Testset betrachtet?

Genau, dies ist die einzige sichere Möglichkeit. Die verräterische Signatur der Überanpassung ist die Divergenz der Lernkurven (Trainingsfehler immer noch abnehmend, während Validierung oder Testfehler in die Höhe). Aber selbst wenn wir eine Überanpassung diagnostiziert haben, ist die Ursache möglicherweise nicht immer eindeutig (siehe eine relevante Frage und Antwort von mir here).

~ 90% Genauigkeit auf Trainingssatz und ~ 80% Testset

Wieder sehr allgemein gesprochen und nur im Prinzip, bedeutet dies nicht schlecht klingt für ein Problem mit 12 Klassen. Sie scheinen bereits zu wissen, dass, wenn Sie sich um mögliche Überanpassungen sorgen, eher die Kurven als die Werte selbst (oder die Trainingszeit) zu überwachen sind.


Auf dem allgemeineren Thema der Armen Theorie hinter tiefen Lernmodellen wie zum Thema Modell intepretability bezogen, könnten Sie this answer von mir nützlich ... finden

Verwandte Themen