Ab welchen Werten ist das Training fertig (Models, CMD, Validation/Training Loss)?
Ich trainiere gerade ein Model mit Python. Ich bin noch Anfänger mit Codes, Programmieren usw., und würde gerne wissen, ab welchem Wert das Model "fertig" ist mit dem Training, also welche Werte gut sind.
Hier ist der jetzige Stand:
Freue mich auf eure Antworten.
1 Antwort
Hallo AngelBritney,
als Faustregel gilt, sobald sich der Validation Loss nicht mehr ändert.
Bei dir ist der Loss schon ab Epoche 0 sehr gering, d.h. du könntest schon nach 1 Epoche das Training beenden. Der Trainingsloss sinkt zwar noch - aber das validation loss nicht, was auf Overfitting hindeutet.
Hallo AngelBritney, darauf gibt es keine universelle Antwort. Das hängt u.a. von der Modellkomplexität und den verwendeten Daten ab.
Eine Möglichkeit besteht darin, den Gradienten des Validation Loss zu betrachten. Sobald dieser unter einen vorgegebenen Grenzwert kommt, bspw. 0.001 kann man dann das Training sofort beenden.
In deinem konkret angegebenen Fall würde ich maximal noch 3-5 Epochen länger trainieren. Bis zur 10. Epoche brauchst du nicht unbedingt warten.
Danke dir! Wie kann man Overfitting verhindern?
Und angenommen der 2. Epoch hat "best validation loss". Nun geht es aber weiter, ohne, dass der Validation Loss weiter sinkt als beim 2. Epoch. Wieviele Epochs sollte man warten bevor man das Training beendet, wenn sich der Validation Loss nicht mehr ändert (wenn man jetzt z. B. schon bei Epoch 10 ist und der Validation Loss immernoch nicht tiefer ist als bei Epoch 2)?
Freue mich auf deine weitere Hilfe.