2017-11-17 5 views
0

Komplette Keras/ML Anfänger hier!Anwendung von Keras CNN auf neuen Datensatz

Bei einem erfolgreich trainierte NN (CNN oder auf andere Weise), die sich in my_model.h5, kann ich das Modell als

from keras import load_model 
model = load_model("my_model.h5") 

laden einen neuen Datensatz wird geladen, auf dem ich einfach zu meine NN anwenden möchten (nicht trainieren oder validieren), wie mache ich das? Soweit ich verstehe, sollte ich für jede Probe, die ich einspeise, in der Lage sein, eine Punktzahl zwischen 0 und 1 zu erhalten, die das Vertrauen des NN in diese Probe quantifiziert, die signalartig ist. Wie bekomme ich diese Nummern, z. in der Form {sample1: score, sample2: score,...}?

Jede Hilfe sehr geschätzt!

Antwort

1

Das ist es:

results = model.predict(inputData) 

Die inputData müssen die gleiche Anzahl von Dimensionen haben, die Sie Trainingsdaten hatten, und die Formen kompatibel sein müssen.

Wie es Standard ist, sind die Proben in der ersten Dimension.

for res in results: 
    #res is the score for a sample 
+0

Großartig, danke! Also werde ich eine Liste herausbringen - keine Möglichkeit, sie mit den Originalproben in Übereinstimmung zu bringen, außer die Reihenfolge der Proben, die ich einspeise, im Auge zu behalten? – Demosthene

+1

Sie werden ein numpy Array erhalten. (Und die InputData sollte auch ein numpy Array sein). Die Output-Samples sind die Input-Samples, 1 bis 1. Sie können mit einem 'zip (InputData, results)' arbeiten und Sie haben Input/Output-Elemente gepaart. –

Verwandte Themen