2016-06-14 6 views
0

Ich versuche, genau this tutorial in neuronalen Netzen mit dem MNIST-Datensatz zu replizieren. Wenn ich copy-paste es einfach in meinen Python-Editor, erhalte ich die folgende Ausnahme:input_shape Problem in neuronalen Netzwerken mit Keras in Python

Exception: The first layer in a Sequential model must get an `input_shape` or `batch_input_shape` argument. 

Also habe ich versucht, den Eingang sheme angeben

model.add(Convolution2D(32, 1, 3, 3, border_mode='same', input_sheme=(1,28,28))) 

verwenden, aber ich denke, ich das falsch gemacht habe.

Kann jemand helfen?

Antwort

2

Typo

model.add(Convolution2D(32, 1, 3, 3, border_mode='same', input_sheme=(1,28,28))) 
                   ^

sollte

model.add(Convolution2D(32, 1, 3, 3, border_mode='same', input_shape=(1,28,28))) 
0

Es sagt so genau dort

Ausnahme: Die erste Schicht in einem Sequential Modell ein input_shape oder batch_input_shape Argument bekommen müssen.

Ich werde jetzt versuchen, diese Fehlermeldung für Sie zu brechen. Das nächste Mal versuchst du es selbst.

Die erste Schicht in einem sequentiellen Modell [...]

Ein sequentielles Modell ist ein Modell, das eine Abfolge von Schichten verwendet einen Ausgang von einem Eingang zu erzeugen. Ich gehe davon aus, dass die Schicht Convolution2D tatsächlich die erste Schicht in Ihrem Modell ist.

[...] muss ein input_shape oder batch_input_shape Argument erhalten.

Keras muss wissen, welche Form der Eingang hat. Sie müssen es also der ersten Ebene zuweisen oder eine Input Ebene mit dieser Form verwenden. Sie liefern den Parameter input_sheme, den diese Schicht nicht einmal hat. Versuchen Sie stattdessen, input_shape zu liefern. Für MNIST ist dies normalerweise (784,), denn das ist die Anzahl der Pixel, die ein 28 mal 28 Bild hat.

Verwandte Themen