2016-06-15 12 views
-1

Ich bin ein youtube Tutorial zum Erstellen eines neuronalen Netzwerks folgen. Ich kam dieser Fehler auf beim Versuch, meine Klasse zu instanziiert zu überprüfen, ob allesInstanziieren einer Klasse in Python und Fehlerpunkte bei Variablenname

File "neuralnet.py", line 24 
    n = Neural_Network(X) 
^
    SyntaxError: invalid syntax 

Mein Code hier ist,

class Neural_Network(object): 

    def __init__(self): 
     self.inputLayerSize = 2 
     self.outputLayerSize = 1 
     self.hiddenLayerSize = 3 
     self.W1 = np.random.randn(self.inputLayerSize, \ 
            self.hiddenLayerSize) 
     self.W2 = np.random.randn(self.hiddenLayerSize, \ 
            self.outputLayerSize) 

    def forward(self, X): 
     # Propogation 
     self.z2 = np.dot(X, self.W1) 
     self.a2 = self.sigmoid(self.z2) 
     self.z3 = np.dot(self.a2, self.W2) 
     yHat = self.sigmoid(self.z3) 
     return yHat 

    def sigmoid(z): 
     return 1/(1+np.exp(-z) 

    n = Neural_Network() 
    yHat = NN.forward(X) 
    print(yHat) 

Es ist wahrscheinlich etwas, das fehlt mir arbeitete. Ich habe versucht, X in die Instantiierung von n zu überführen, und es hat immer noch nicht funktioniert. Ich benutze Python 2.X.

Antwort

2

Diese Linie

return 1/(1+np.exp(-z) 

eine enge Klammer fehlt. Versuchen Sie folgendes:

return 1/(1+np.exp(-z)) 

Oft sonst unerklärlich „Syntaxfehler“ -Meldungen ist das Ergebnis von Fehlern in der vorherige Linie (n).

+0

Perfekt, löste mein Problem, danke! – chrishorton

1

Sie haben vergessen, a ')' am Ende dieser Zeile:

def sigmoid(z): 
    return 1/(1+np.exp(-z) 
Verwandte Themen