我尝试了LMS算法的例子:
import numpy as np
from neupy import algorithms
input_data = np.array([[1, 0], [2, 2], [3, 3], [0, 0]])
target_data = np.array([[1], [0], [0], [1]])
lmsnet = algorithms.LMS((2, 1), step=0.5)
lmsnet.train(input_data, target_data, epochs=200)
lmsnet.predict(np.array([[4, 4], [0, 0]])) 但是我在这一行得到"OverflowError: cannot convert float infinity to integer“错误(file:summary_info.py):
scale = math.ceil(self.delay_limit / average_delay)我不能将示例中的输入参数与错误联系起来,我知道除以零可以解决这个问题,但我不知道如何解决这个问题。我不想修改库文件来解决这个问题。
发布于 2017-11-18 04:12:03
你的例子对我来说非常好。
如果您在环路中训练您的网络,您可以克服这个问题,如下所示
import numpy as np
from neupy import algorithms
input_data = np.array([[1, 0], [2, 2], [3, 3], [0, 0]])
target_data = np.array([[1], [0], [0], [1]])
# Used smaller step since 0.5 is too big
lmsnet = algorithms.LMS((2, 1), step=0.1)
for _ in range(200):
lmsnet.train(input_data, target_data, epochs=1)
lmsnet.predict(np.array([[4, 4], [0, 0]])) https://stackoverflow.com/questions/47337134
复制相似问题