我有一段手动实现感知机的代码。不幸的是,我遇到了一个错误,我不知道如何修复它…我搜索过,发现这种错误通常发生在使用方法但未调用方法时,但在错误行上,我不知道有哪些方法需要被调用。
我的代码如下:
Traceback (most recent call last): File “C:/Users/nick/PycharmProjects/CursoMachineLearning/redes_neurais/perceptronzin.py”, line 58, in rede.treinar() File “C:/Users/nick/PycharmProjects/CursoMachineLearning/redes_neurais/perceptronzin.py”, line 31, in treinar uzin += (self.pesos[j])*(self.amostras[i][j]) TypeError: unsupported operand type(s) for *: ‘builtin_function_or_method’ and ‘int’
回答:
在第19行,你创建了一个函数对象列表,而不是浮点数列表。
使用:
self.pesos.append(random.random())
而不是
self.pesos.append(random.random)