Ich möchte ein CNN trainieren, aber ich möchte alle Daten verwenden, um das Netzwerk zu trainieren und somit keine Validierung durchzuführen. Ist das eine gute Wahl? riskiere ich, mein CNN zu überfrachten, wenn ich nur den Trainingsverlust als Kriterium für den frühen Stopp des CNN verwende?Was ist die beste Metrik, um zu beurteilen, wie gut CNN trainiert wird? Validierungsfehler oder Trainingsverlust?
Mit anderen Worten, was ist der beste 'Monitor' Parameter in KERAS (zum Beispiel) für frühes Stoppen, unter den folgenden Optionen?
early_stopper=EarlyStopping(monitor='train_loss', min_delta=0.0001, patience=20)
early_stopper=EarlyStopping(monitor='train_acc', min_delta=0.0001, patience=20)
early_stopper=EarlyStopping(monitor='val_loss', min_delta=0.0001, patience=20)
early_stopper=EarlyStopping(monitor='val_acc', min_delta=0.0001, patience=20)
Es gibt eine Diskussion, wie dies in Stackoverflow Keras: Validation error is a good measure for stopping criteria or validation accuracy? aber sie sprechen nur über die Validierung. Ist es besser, Kriterien in Validierungs- oder Trainingsdaten zu verwenden, um ein CNN-Training frühzeitig zu stoppen?