Monitor Qualifizierung/Validierung im Caffe
Ich trainiere Caffe-Referenz-Modell für die Klassifizierung von Bildern.
Meine Arbeit verlangt von mir, das training zu überwachen Prozess durch zeichnen von Graphen der Genauigkeit des Modells nach jeweils 1000 Iterationen auf den gesamten Trainings-set und Validierungsdaten, die hat 100K und 50K Bilder beziehungsweise.
Gerade jetzt, Im nehmend der naive Ansatz, machen Schnappschüsse nach jeweils 1000 Iterationen, führen Sie das C++ classififcation code liest die raw-JPEG-Bild und freuen sich auf die Netto-und Ausgang dem vorhergesagten labels. Allerdings nimmt diese zu viel Zeit auf meinem Rechner (mit einer Geforce GTX 560 Ti)
Gibt es einen schnelleren Weg, dass ich tun kann, um die Grafik der Genauigkeit der snapshot-Modelle auf training und Validierung setzt?
Ich dachte über die Verwendung von LMDB-format anstelle des raw-Bilder. Aber ich finde keine Dokumentation/code zu tun Einstufung in C++ unter Verwendung von LMDB-format.
- Warum bist du nicht mit ZIFFERN um Ihnen zu helfen in der Ausbildung? Es hat ein build-in-monitoring-Funktionen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
1) können Sie die NVIDIA-ZIFFERN app zum überwachen Ihrer Netzwerke. Sie bieten eine GUI inklusive dataset Vorbereitung, Modell-Auswahl, und die Lernkurve Visualisierung. Mehr, verwenden Sie eine caffe-Verteilung ermöglicht multi-GPU-Ausbildung.
2) Oder Sie verwenden einfach die log-parser innerhalb caffe.
Dies ermöglicht Ihnen das speichern Zug-log-in "lenet_train.log". Dann mit:
Sie analysieren Ihre Zug-log in zwei csv-Dateien, mit dem Zug und testen Sie den Verlust. Sie können dann zeichnen Sie mit dem folgenden python-Skript
Caffe Protokolle erstellt jedes mal, wenn Sie versuchen, zu trainieren, etwas, und befindet sich im tmp-Ordner (beide linux und windows).
Ich schrieb auch einer Plot-Skript in python, die Sie problemlos verwenden können, zu visualisieren Verlust/Genauigkeit.
Legen Sie einfach Ihre trainingsprotokolle mit
.log
Erweiterung neben dem Skript, und doppelklicken Sie auf es.Sie können die Eingabeaufforderung so gut, aber für eine einfache verwenden, wenn ausgeführt, lädt er alle logs (*.Protokoll), die es finden kann in das aktuelle Verzeichnis.
es zeigt auch die top 4 Genauigkeit und die Genauigkeit, die Sie erlangt wurden.
finden Sie es hier : https://gist.github.com/Coderx7/03f46cb24dcf4127d6fa66d08126fa3b
Befehl erzeugt die folgende Fehlermeldung:
Lösung:
Für eine erfolgreiche Durchführung der "parse_log.py" Befehl, wir sollten vorbei an den beiden Argumenten:
Also der richtige Befehl ist wie folgt: