weight, goal_pred, input = (0.0, 0.8, 1.1)
for iteration in range(4):
print("当前循环iteration是第:", iteration ,"次")
print("-----\n本次循环初始Weight值为:" + str(weight))
pred = input * weight
error = (pred - goal_pred) ** 2
delta = pred - goal_pred
weight_delta = delta * input
weight = weight - weight_delta
print("***均方误差Error值为:" + str(error) + " ;预测值为Prediction:" + str(pred))
print("***纯误差Delta值为:" + str(delta) + " ;权重因子Weight Delta值为:" + str(weight_delta))
print("修改权重后的 weight是:", weight)
结果为
C:\Users\admin\AppData\Local\Programs\Python\Python39\python.exe "D:\python test\BPtest.py"
当前循环iteration是第: 0 次
-----
本次循环初始Weight值为:0.0
***均方误差Error值为:0.6400000000000001 ;预测值为Prediction:0.0
***纯误差Delta值为:-0.8 ;权重因子Weight Delta值为:-0.8800000000000001
修改权重后的 weight是: 0.8800000000000001
当前循环iteration是第: 1 次
-----
本次循环初始Weight值为:0.8800000000000001
***均方误差Error值为:0.02822400000000005 ;预测值为Prediction:0.9680000000000002
***纯误差Delta值为:0.16800000000000015 ;权重因子Weight Delta值为:0.1848000000000002
修改权重后的 weight是: 0.6951999999999999
当前循环iteration是第: 2 次
-----
本次循环初始Weight值为:0.6951999999999999
***均方误差Error值为:0.0012446784000000064 ;预测值为Prediction:0.76472
***纯误差Delta值为:-0.03528000000000009 ;权重因子Weight Delta值为:-0.0388080000000001
修改权重后的 weight是: 0.734008
当前循环iteration是第: 3 次
-----
本次循环初始Weight值为:0.734008
***均方误差Error值为:5.4890317439999896e-05 ;预测值为Prediction:0.8074088
***纯误差Delta值为:0.007408799999999993 ;权重因子Weight Delta值为:0.008149679999999992
修改权重后的 weight是: 0.72585832
进程已结束,退出代码0