python学习-神经网络梯度下降

在这里插入图片描述

weight = 0.5
goal_pred = 0.8
input = 0.5

for iteration in range(20):
    pred = input * weight
    error = (pred - goal_pred) ** 2
    C_error = pred - goal_pred
    direction_and_amount = (pred - goal_pred) * input
    weight = weight - direction_and_amount
    print("%%%%%%#####*****"*10)

    print("当前循环次数是:", iteration)
    print("预测值 pred 是:", pred)
    print("均方误差  error 是:", error )
    print("纯误差 C_error 是:",  C_error)
    #纯误差是(pred-goal pred),也就是预测值和真实值的差值。它表示当前错误的原始方向和幅度。如果它是一个正数,那么你的预测就太高了,反之亦然。如果它是一个很大的数字,那么你就错了很多,以此类推。

    print("缩放、负值反转和停止direction_and_amount是:", direction_and_amount)
    #这三个属性的共同作用是将纯误差转换为我们需要的权重调节的绝对幅度它们通过处理三种主要的边界情况来做到这一点,在这些边界情况下,纯误差不足以对权重进行良好的修正。
    print("修改权重后的 weight是:", weight)


    print("Error:" + str(error) + " Prediction:" + str(pred))weight = 0.5

输出结果为

C:\Users\admin\AppData\Local\Programs\Python\Python39\python.exe "D:\python test\BPtest.py" 
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 0
预测值 pred 是: 0.25
均方误差  error 是: 0.30250000000000005
纯误差 C_error 是: -0.55
缩放、负值反转和停止direction_and_amount是: -0.275
修改权重后的 weight是: 0.775
Error:0.30250000000000005 Prediction:0.25
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 1
预测值 pred 是: 0.3875
均方误差  error 是: 0.17015625000000004
纯误差 C_error 是: -0.41250000000000003
缩放、负值反转和停止direction_and_amount是: -0.20625000000000002
修改权重后的 weight是: 0.9812500000000001
Error:0.17015625000000004 Prediction:0.3875
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 2
预测值 pred 是: 0.49062500000000003
均方误差  error 是: 0.095712890625
纯误差 C_error 是: -0.309375
缩放、负值反转和停止direction_and_amount是: -0.1546875
修改权重后的 weight是: 1.1359375
Error:0.095712890625 Prediction:0.49062500000000003
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 3
预测值 pred 是: 0.56796875
均方误差  error 是: 0.05383850097656251
纯误差 C_error 是: -0.23203125000000002
缩放、负值反转和停止direction_and_amount是: -0.11601562500000001
修改权重后的 weight是: 1.251953125
Error:0.05383850097656251 Prediction:0.56796875
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 4
预测值 pred 是: 0.6259765625
均方误差  error 是: 0.03028415679931642
纯误差 C_error 是: -0.17402343750000004
缩放、负值反转和停止direction_and_amount是: -0.08701171875000002
修改权重后的 weight是: 1.33896484375
Error:0.03028415679931642 Prediction:0.6259765625
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 5
预测值 pred 是: 0.669482421875
均方误差  error 是: 0.0170348381996155
纯误差 C_error 是: -0.1305175781250001
缩放、负值反转和停止direction_and_amount是: -0.06525878906250004
修改权重后的 weight是: 1.4042236328125
Error:0.0170348381996155 Prediction:0.669482421875
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 6
预测值 pred 是: 0.70211181640625
均方误差  error 是: 0.00958209648728372
纯误差 C_error 是: -0.09788818359375007
缩放、负值反转和停止direction_and_amount是: -0.04894409179687503
修改权重后的 weight是: 1.453167724609375
Error:0.00958209648728372 Prediction:0.70211181640625
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 7
预测值 pred 是: 0.7265838623046875
均方误差  error 是: 0.005389929274097089
纯误差 C_error 是: -0.07341613769531252
缩放、负值反转和停止direction_and_amount是: -0.03670806884765626
修改权重后的 weight是: 1.4898757934570312
Error:0.005389929274097089 Prediction:0.7265838623046875
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 8
预测值 pred 是: 0.7449378967285156
均方误差  error 是: 0.0030318352166796153
纯误差 C_error 是: -0.05506210327148442
缩放、负值反转和停止direction_and_amount是: -0.02753105163574221
修改权重后的 weight是: 1.5174068450927733
Error:0.0030318352166796153 Prediction:0.7449378967285156
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 9
预测值 pred 是: 0.7587034225463867
均方误差  error 是: 0.0017054073093822882
纯误差 C_error 是: -0.04129657745361337
缩放、负值反转和停止direction_and_amount是: -0.020648288726806685
修改权重后的 weight是: 1.53805513381958
Error:0.0017054073093822882 Prediction:0.7587034225463867
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 10
预测值 pred 是: 0.76902756690979
均方误差  error 是: 0.0009592916115275371
纯误差 C_error 是: -0.030972433090210028
缩放、负值反转和停止direction_and_amount是: -0.015486216545105014
修改权重后的 weight是: 1.553541350364685
Error:0.0009592916115275371 Prediction:0.76902756690979
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 11
预测值 pred 是: 0.7767706751823426
均方误差  error 是: 0.0005396015314842384
纯误差 C_error 是: -0.023229324817657493
缩放、负值反转和停止direction_and_amount是: -0.011614662408828746
修改权重后的 weight是: 1.5651560127735138
Error:0.0005396015314842384 Prediction:0.7767706751823426
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 12
预测值 pred 是: 0.7825780063867569
均方误差  error 是: 0.000303525861459885
纯误差 C_error 是: -0.017421993613243147
缩放、负值反转和停止direction_and_amount是: -0.008710996806621574
修改权重后的 weight是: 1.5738670095801353
Error:0.000303525861459885 Prediction:0.7825780063867569
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 13
预测值 pred 是: 0.7869335047900676
均方误差  error 是: 0.00017073329707118678
纯误差 C_error 是: -0.013066495209932416
缩放、负值反转和停止direction_and_amount是: -0.006533247604966208
修改权重后的 weight是: 1.5804002571851015
Error:0.00017073329707118678 Prediction:0.7869335047900676
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 14
预测值 pred 是: 0.7902001285925507
均方误差  error 是: 9.603747960254256e-05
纯误差 C_error 是: -0.009799871407449312
缩放、负值反转和停止direction_and_amount是: -0.004899935703724656
修改权重后的 weight是: 1.5853001928888262
Error:9.603747960254256e-05 Prediction:0.7902001285925507
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 15
预测值 pred 是: 0.7926500964444131
均方误差  error 是: 5.402108227642978e-05
纯误差 C_error 是: -0.007349903555586956
缩放、负值反转和停止direction_and_amount是: -0.003674951777793478
修改权重后的 weight是: 1.5889751446666196
Error:5.402108227642978e-05 Prediction:0.7926500964444131
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 16
预测值 pred 是: 0.7944875723333098
均方误差  error 是: 3.038685878049206e-05
纯误差 C_error 是: -0.005512427666690245
缩放、负值反转和停止direction_and_amount是: -0.0027562138333451225
修改权重后的 weight是: 1.5917313584999646
Error:3.038685878049206e-05 Prediction:0.7944875723333098
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 17
预测值 pred 是: 0.7958656792499823
均方误差  error 是: 1.7092608064027242e-05
纯误差 C_error 是: -0.004134320750017739
缩放、负值反转和停止direction_and_amount是: -0.0020671603750088696
修改权重后的 weight是: 1.5937985188749735
Error:1.7092608064027242e-05 Prediction:0.7958656792499823
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 18
预测值 pred 是: 0.7968992594374867
均方误差  error 是: 9.614592036015323e-06
纯误差 C_error 是: -0.0031007405625133044
缩放、负值反转和停止direction_and_amount是: -0.0015503702812566522
修改权重后的 weight是: 1.5953488891562302
Error:9.614592036015323e-06 Prediction:0.7968992594374867
%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****%%%%%%#####*****
当前循环次数是: 19
预测值 pred 是: 0.7976744445781151
均方误差  error 是: 5.408208020258491e-06
纯误差 C_error 是: -0.0023255554218849506
缩放、负值反转和停止direction_and_amount是: -0.0011627777109424753
修改权重后的 weight是: 1.5965116668671726
Error:5.408208020258491e-06 Prediction:0.7976744445781151

进程已结束,退出代码0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值