神经网络的Python误差计算问题

问题描述 投票:0回答:0
total_error = (target - output)**2

if total_error != 0:
    for layer in range(len(self.weights)):
        for weight_list in range(len(self.weights[layer])):
            for weight in range(len(self.weights[layer][weight_list])):
                self.weights[layer][weight_list][weight] -= total_error / self.weights[layer][weight_list][weight] #this on the line above

我似乎无法弄清楚如何计算错误,我正在制作一个神经网络来解决和没有模块的 python 中的 XOR 门,因为我的 pip 似乎不起作用,任何人都可以提供任何关于如何修复的见解这个问题。

我得到的结果偶尔会解决它,但除此之外,它会给出看似随机的值,范围从 0 到 1,完全无视目标值 我得到的结果

----------
0.0
0.0
0.0
0.0
----------
0.9994810006919062
0.9994810091976934
0.9994810111599509
0.9994810163419373
----------

当目标数据是

[0, 1, 1, 0]
我看不出我哪里错了 非常感谢任何帮助,谢谢

python deep-learning neural-network
© www.soinside.com 2019 - 2024. All rights reserved.