Das mag wie eine dumme Frage erscheinen, aber ich versuche zu verstehen, in welchem Ausmaß die Testphase in Caffe wichtig für gute Ergebnisse ist. Natürlich ist die Trainingsphase wichtig, aber ist die Testphase einfach, um zu testen, wie viel Verlust in einem Set, das nicht trainiert ist, periodisch erreicht wird? Wenn das der Fall ist, spielt die Größe meines Testsets wirklich eine Rolle? Ist Testen überhaupt von Bedeutung? Ich frage, weil ich momentan einige ernsthafte Überarbeitungen habe. Wenn ich einen großen Datensatz (> 50 000 Bilder) habe, wie soll ich sie dann zwischen Test und Zug aufteilen?Unterschied zwischen Trainings- und Testphase in Caffe
Antwort
Caffe nie das Ergebnis der Testsätze während des Trainings verwenden und einige Parameter ändern, um einige Probleme wie Überanpassen zu beheben. Die Verwendung eines Validierungssatzes (Testsatz während des Trainings) dient der Visualisierung, ob das Modell die Daten überlagert, indem es die Genauigkeits- oder Verlustwerte betrachtet, sie plottet oder die Ausgaben betrachtet.
Wenn beispielsweise der Verlust des Trainingssatzes bei jeder Iteration abnimmt und der Verlust des Testsets weiter zunimmt, ist dies ein solider Fall, in dem das Modell den Trainingssatz überkompensiert. Um solche Schlüsse zu ziehen, sollten die für den Testsatz ausgewählten Bilder nicht mit denen des Trainingssatzes übereinstimmen. Es ist ideal, um ein Verhältnis von 1:10 für die Anzahl der Testzugbilder einzuhalten. Wenn der Testsatz eine Teilmenge des Zugverbandes verwendet, wäre der Verlust des Testsatzes verringert worden, und wir könnten das Überanpassungsverhalten des Modells nicht erkennen.
- 1. Ändern der Eingabedatenschicht während des Trainings in Caffe
- 2. Caffe Lenet: Unterschied zwischen `solver.step (1)` und `solver.net.forward()`
- 3. CoreNLP Neuronaler Netzwerkabhängigkeitsparser - Unterschied zwischen der Evaluierung während des Trainings und dem Testen
- 4. Unterschied zwischen `% in%` und `==`
- 5. Eingangsgrößen, SoftmaxWithLoss und Labels in Caffe verstehen
- 6. Unterschied zwischen $ @ und $! in Perl
- 7. Unterschied zwischen '.' und "." in Java
- 8. Unterschied zwischen $ {} und $() in Bash
- 9. Unterschied zwischen und „-“ in r
- 10. Unterschied zwischen .. und ... in Ruby
- 11. Unterschied zwischen "" und "" in Python
- 12. Unterschied zwischen // und /// in C#
- 13. Unterschied zwischen. und #
- 14. MySQL: Unterschied zwischen ', `,' und '
- 15. C++ Unterschied zwischen '//' und '///'
- 16. Unterschied zwischen String.Empty und ""
- 17. Unterschied zwischen = und: =
- 18. Limit Caffe CPU-Kernnutzung?
- 19. Unterschied zwischen Vorzeichen & und *?
- 20. VBA: Unterschied zwischen & und +
- 21. Unterschied zwischen "**/* /" und "** /"?
- 22. Unterschied zwischen $ # und $ {# @}
- 23. Unterschied zwischen '#', '%' und '$'
- 24. Unterschied zwischen numpy.logical_and und &
- 25. Unterschied zwischen // und http: //
- 26. Über binäre Klassifizierung in Caffe
- 27. Caffe: Kann ich das Laden neuer Daten während des Trainings vermeiden?
- 28. Monitor Training/Validierungsprozess in Caffe
- 29. Kombinieren von Trainings-, Validierungs- und Testdatensätzen
- 30. Unterschied zwischen -Wconversion zwischen gcc und g ++
danke, das war auch mein Eindruck! – jerpint