Mit einem gut ausgebildeten Modell können Sie Prognosen über neue Daten machen. Sie müssen nichts umschulen, weil Ihr Modell (hoffentlich) das Lernen auf ungesehene Daten verallgemeinern und eine vergleichbare Genauigkeit erreichen kann.
füttern Sie einfach die Daten von „new_test2.csv“ auf Ihre vorhersagen Funktion:
prediction=model.predict_classes(content_of_new_test2)
Offensichtlich Sie Daten des gleichen Typs und Klassen müssen. Darüber hinaus müssen Sie alle Transformationen auf die neuen Daten anwenden, genauso wie Sie die Daten transformiert haben, auf denen Sie Ihr Modell trainiert haben.
Wenn Sie Echtzeit-Vorhersagen möchten Sie Setup eine API mit Flask konnte:
http://flask.pocoo.org/
In Bezug auf Terminologie und korrekte Methode der Ausbildung:
Sie Zug auf einem Trainingssatz (zB 70% aller Daten, die Sie haben).
Sie validieren Ihre Ausbildung mit einer Validierung gesetzt (zum Beispiel 15% der Daten). Sie verwenden die Genauigkeits- und Verlustwerte Ihres Trainings, um Ihre Hyperparameter zu optimieren.
Sie dann Ihre Modelle Endleistung auswerten, indem Daten von Ihrem Testset (wieder 15% Ihrer Daten) vorherzusagen. Das müssen Daten sein, Ihr Netzwerk hat es noch gar nicht gesehen und wurde von Ihnen nicht zur Optimierung von Trainingsparametern genutzt.
Danach können Sie auf Produktionsdaten vorhersagen.
Wenn Sie Ihre geschultes Modell Verwendung speichern wollen, dass diese (aus Keras Dokumentation entnommen):
from keras.models import load_model
model.save('my_model.h5') # creates a HDF5 file 'my_model.h5'
del model # deletes the existing model
# returns a compiled model
# identical to the previous one
model = load_model('my_model.h5')
https://keras.io/getting-started/faq/#how-can-i-save-a-keras-model
Vielen Dank für Ihre Antwort. Sie können sich ein Skript vorstellen, das den gesamten Zug- und Testcode zum Testen neuer Einträge enthält. Mit nur einem Skript habe ich jedes Mal das Netzwerk neu trainiert, um die Ausgabe für einen neuen Testsatz vorherzusagen. Meine vorherige Anfrage betrifft eine Art, wie ich tun sollte, um das trainierte neuronale Netzwerk zu speichern/abzurufen, um neue Daten zu testen. Im Grunde brauche ich etwas, das mein Netzwerk speichert und versucht, etwas von seinem Wissen zu erkennen. Ich hoffe, es war klar. @petezurich –
Von Ihrer Frage und Kommentar ist es mir nicht völlig klar, wenn Ihre Methode der Aufteilung Ihrer Daten in Zug, Validierung und Test von Daten korrekt ist. Siehe meine Beschreibung in meiner Antwort. Es ist sehr wichtig, so vorzugehen, sonst bekommen Sie falsche Ergebnisse. – petezurich
Um aus dem Weg zu gehen, um das zugrunde liegende Problem zu korrigieren ... (+1) –