我正在关注创建神经网络的youtube教程。我在尝试实例化我的课程以检查一切是否正常时遇到了这个错误
File "neuralnet.py", line 24
n = Neural_Network(X)
^
SyntaxError: invalid syntax
我的代码在这里,
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)
这可能是我缺少的东西。我试图将X传递给n的实例化,但它仍然无效。我使用的是python 2.X。
答案 0 :(得分:2)
这一行
return 1/(1+np.exp(-z)
缺少一个紧密的括号。试试这个:
return 1/(1+np.exp(-z))
通常情况下,否则无法解释"语法错误"消息是上一行行中的错误的结果。
答案 1 :(得分:1)
你忘记了')'在这一行的最后:
def sigmoid(z):
return 1/(1+np.exp(-z)