我刚刚安装了Neurolab,我尝试了一个提供的例子(Feed Forward Multilayer Perceptron(newff)):
import neurolab as nl
import numpy as np
# Create train samples
x = np.linspace(-7, 7, 20)
y = np.sin(x) * 0.5
size = len(x)
inp = x.reshape(size,1)
tar = y.reshape(size,1)
# Create network with 2 layers and random initialized
net = nl.net.newff([[-7, 7]],[5, 1])
# Train network
error = net.train(inp, tar, epochs=500, show=100, goal=0.02)
# Simulate network
out = net.sim(inp)
但是我遇到了这个错误。
Traceback (most recent call last):
File "C:/Python27/newff.py", line 17, in <module>
error = net.train(inp, tar, epochs=500, show=100, goal=0.02)
File "build\bdist.win32\egg\neurolab\core.py", line 165, in train
return self.trainf(self, *args, **kwargs)
File "build\bdist.win32\egg\neurolab\core.py", line 349, in __call__
train(net, *args)
File "build\bdist.win32\egg\neurolab\train\spo.py", line 73, in __call__
from scipy.optimize import fmin_bfgs
ImportError: No module named scipy.optimize
答案 0 :(得分:0)
您删除了训练例程调用,这可能是在网络对象中设置.ci
属性。因此,错误不在示例中,而是在您的修改中。
现在问题非常简单 - 您没有安装scipy
。