Überanpassung des neuronalen Netzes

9

Ich habe gelernt, dass eine Überanpassung erkannt werden kann, indem der Trainingsfehler und der Testfehler gegen die Epochen aufgetragen werden. Wie in:

Geben Sie hier die Bildbeschreibung ein

Ich habe diesen Blogpost gelesen, in dem sie sagen, dass das neuronale Netzwerk net5 überpasst und sie diese Zahl liefern:

Geben Sie hier die Bildbeschreibung ein

Was für mich seltsam ist, da der Validierungs- und Trainingsfehler von net5 immer wieder abnimmt (aber langsam).

Warum würden sie behaupten, es sei zu passend? Liegt es daran, dass der Validierungsfehler stagniert?

Olivier_s_j
quelle

Antworten:

10

Überanpassung tritt nicht nur auf, wenn der Testfehler mit den Iterationen zunimmt. Wir sagen, dass es zu einer Überanpassung kommt, wenn die Leistung am Testsatz viel geringer ist als die Leistung am Zugsatz (weil das Modell zu gut zu den sichtbaren Daten passt und nicht gut verallgemeinert wird).

In Ihrem zweiten Diagramm können wir sehen, dass die Leistungen an Testsätzen fast zehnmal niedriger sind als die Leistungen an Zugsätzen, was als Überanpassung angesehen werden kann.

Es ist fast immer so, dass ein Modell auf dem Trainingssatz eine bessere Leistung erbringt als auf dem Testsatz, da das Modell die Daten bereits gesehen hat. Ein gutes Modell sollte jedoch in der Lage sein, unsichtbare Daten gut zu verallgemeinern und dann die Lücke zwischen den Leistungen in Zug- und Testsätzen zu verringern.

Ihr erstes Beispiel für eine Überanpassung kann beispielsweise durch frühzeitiges Anhalten gelöst werden. Ihr zweites Beispiel kann durch Regularisierung, durch Verfälschung der Eingabe usw. gelöst werden.

jpl
quelle
Warum ist Überanpassung in diesem Fall schlecht? Wir können sehen, dass es auf dem Test-Set besser abschneidet, also verallgemeinern Sie es besser, oder?
Fractale
1
@Fractale Es gibt viele andere Aspekte, die über den Trainingsschritt hinaus berücksichtigt werden müssen. Beispielsweise kann ein anderer Satz von Hyperparametern zu einem besseren Testfehler und einem schlechteren Trainingsfehler führen (stärkere Regularisierung). Daher würde eine solche Konfiguration zu einer geringeren Überanpassung führen. "Über" -Anpassung impliziert immer einen Vergleich. Wenn Sie etwas so ändern, dass es zu einem erheblich besseren Trainingsfehler, aber zu einem schlechteren oder nicht wesentlich besseren Testfehler führt, werden die Trainingsbeispiele im Vergleich zur ursprünglichen Einstellung überpasst. Die "Änderung" kann alles sein: die Anzahl der Trainingsiterationen, Hyperparams usw.
isarandi