AI戦闘2019BUAA_第ジョブ_ _ハング興(S)

#AI戦闘2019BUAA_第ジョブ_ _ハング興(S)

0ナビゲーション

プロジェクト コンテンツ
この作品は、コースに属し AI戦闘2019
どこの仕事でこの要件 ここに
このコースでの私の目標です 理解し、人工知能のいくつかの一般的な知識を適用することができます
私は目標を達成する助けたジョブの特定の局面において おなじみの二変数の伝播

2. Pythonのデュアル可変のバック伝播計算

  • 更新重み
    コード:
from numpy import *
target = 150.0
w = 3.0
b = 4.0
z = 162
min = 1e-5;
print(z)
iter_count = 0
while ((abs(150 - z)) > min):
    iter_count +=1
    x = 2 * w + 3 * b
    y = 2 * b + 1
    z = x * y
    delta_b = ((z - 150) / ((2 * x + 3 * y)*2))
    delta_w = ((z - 150) / ((2 * y)*2))
    w = w - delta_w
    b = b - delta_b
    print("loop: %d, w = %.8f, b = %.8f, z = %.8f, error = %.8f"%(iter_count,w,b,z,abs(150-z)));
print("final result:loop = %d, w = %.8f, b = %.8f,z = %.8f,error = %.8f"%(iter_count,w,b,z,abs(z-150)));
  • 重みは更新されない
    だけするように変更て$ b、$ \デルタワットデルタの\値にする必要があり、この時点で
    コードを次のように変更します
from numpy import *
    target = 150.0
    w = 3.0
    b = 4.0
    z = 162
    min = 1e-5;
    print(z)
    iter_count = 0
    while ((abs(150 - z)) > min):
        iter_count +=1
        x = 2 * w + 3 * b
        y = 2 * b + 1
        z = x * y
        delta_b = ((z - 150) / ((63)*2))
        delta_w = ((z - 150) / ((18)*2))
        w = w - delta_w
        b = b - delta_b
        print("loop: %d, w = %.8f, b = %.8f, z = %.8f, error = %.8f"%(iter_count,w,b,z,abs(150-z)));
    print("final result:loop = %d, w = %.8f, b = %.8f,z = %.8f,error = %.8f"%(iter_count,w,b,z,abs(z-150)));

3.ファイル名を指定して実行結果

权重更新的反向传播计算过程:
z= 150.181405895692 w= 2.66666666666667 b= 3.90476190476190 deltz= 0.181405895691626 times= 1
z= 150.000044335267 w= 2.66151866151866 b= 3.90326327226406 deltz= 4.43352674039943e-5 times= 2
z= 150.000000000003 w= 2.66151740292746 b= 3.90326290576744 deltz= 2.67164068645798e-12 times= 3
Time used: 0.0634633
无权重更新的反向传播计算过程:
z= 150.181405895692 w= 2.66666666666667 b= 3.90476190476190 deltz= 0.181405895691626 times= 1
z= 150.005526139576 w= 2.66162761400857 b= 3.90332217543102 deltz= 0.00552613957617609 times= 2
z= 150.000169643281 w= 2.66147411013145 b= 3.90327831718041 deltz= 0.000169643281225262 times= 3
z= 150.000005208983 w= 2.66146939781808 b= 3.90327697080517 deltz= 5.20898345257592e-6 times= 4
Time used: 0.02040919999999999

おすすめ

転載: www.cnblogs.com/ReinHt/p/10979535.html