2016-09-29 8 views
1

Ich brauche ein einfaches Beispiel über Keras-Modell zu verwenden. Es ist für mich nicht klar, welchen Unterschied zwischen model.evaluate und model.predict.Wie Keras für binäre Klassifizierung zu verwenden?

Ich möchte ein Modell für die binäre Klassifizierung erstellen. Sagen wir, ich habe Bilder von Katzen und Hunden, trainiere das Modell und kann damit vorhersagen, welches Tier auf dem gegebenen Foto ist. Vielleicht gibt es etwas gutes in oder Tutorials. Ich habe in den ersten fünf Seiten von Google alles gelesen, aber nur Tutorials und Diskussionen auf komplexem Niveau gefunden.

Antwort

3

Um es kurz zu machen:

  • model.evaluate wertet ein Paar (X, Y) und gibt den Verlust (und alle anderen für das Modell konfiguriert Metriken). Dies dient zum Testen Ihres Modells in einem Test- oder Testset.
  • model.predict prognostiziert das Ergebnis bei einer Eingabe X. Dies ist zum Beispiel für die Vorhersage der Klasse aus einem Eingabebild.

Dies ist unter anderem auch in der verknüpften Dokumentation eindeutig dokumentiert.

Sie können eine Vielzahl von Beispielmodellen für Keras im Git-Repository (keras/examples) oder auf der Keras-Website (here und here) finden.

Für binäre Klassifizierung Sie dieses Modell zum Beispiel verwenden:

model = Sequential() 
model.add(Dense(300, init='uniform')) 
model.add(Activation('relu')) 
model.add(Dense(2, init='uniform')) 
model.add(Activation('softmax')) 

model.compile(loss='categorical_crossentropy', optimizer=Adam(lr=0.02)) 
model.fit(X, Y) 
Verwandte Themen