勾配計算とトレーニング

x_data = [1.0、2.0、3.0]
y_data = [2.0、4.0、6.0]

= 1.0#任意のランダムな値のw


#我々のモデルは、往路
前方デフ(X):
リターンのx *ワット


#損失関数
損失DEF(X、Y):
y_pred =前方(X)
リターン(y_pred - Y)*(y_pred - Y)


#計算勾配
DEF勾配(X、Y):#d_loss / d_w
戻り2 * X *(X * W - Y)

トレーニングの前に#
(フォワード")トレーニングの前に(予測"、4、(4))の印刷

#トレーニングループ
範囲のエポックのために(10):
ZIPでy_val x_val、(x_data、y_data)用:
グラ=勾配(x_val、y_val)
W = W - 0.01 *グラ
プリント( "\ tgrad:"、x_val、y_val、卒業生)
L =損失(x_val、y_val)

印刷( "進行:"、エポック、L)

#トレーニング後
プリント(前方、4、 "()研修後の予測"(4))

=========================================

計算

4 4.0(トレーニング前に)予測
グラ:1.0 2.0 -2.0
グラ:2.0 4.0 -7.84
グラ:3.0 6.0 -16.2288
進捗:0 4.919240100095999
グラ:1.0 2.0 -1.478624
グラ:2.0 4.0 -5.796206079999999
グラ:3.0 6.0 -11.998146585599997
進展:1 2.688769240265834
グラ:1.0 2.0 -1.093164466688
グラ:2.0 4.0 -4.285204709416961
グラ:3.0 6.0 -8.87037374849311
進行:2 1.4696334962911515
グラ:1.0 2.0 -0.8081896081960389
グラ:2.0 4.0 -3.1681032641284723
グラ:3.0 6.0 -6.557973756745939
進捗:3 0.8032755585999681
グラ:1.0 2.0 - 0.59750427561463
大学院:2.0 4.0 -2.3422167604093502
大学院:3.0 6.0 -4.848388694047353
進行:4 0.43905614881022015
グラ:1.0 2.0 -0.44174208101320334
グラ:2.0 4.0 -1.7316289575717576
グラ:3.0 6.0 -3.584471942173538
進捗:5 0.2399802903801062
グラ:1.0 2.0 -0.3265852213980338
グラ:2.0 4.0 -1.2802140678802925
グラ:3.0 6.0 -2.650043120512205
進行:6 0.1311689630744999
グラ。 -0.241448373202223 2.0 1.0
グラ:2.0 4.0 -0.946477622952715
グラ:3.0 6.0 -1.9592086795121197
進捗:7 0.07169462478267678
グラ:1.0 2.0 -0.17850567968888198
グラ:2.0 4.0 -0.6997422643804168
グラ:3.0 6.0 -1.4484664872674653
進行:8 0.03918700813247573
グラ:1.0〜2.0 -0.13197139106214673
グラ:2.0 4.0 -0.5173278529636143
グラ:3.0 6.0 -1.0708686556346834
進捗:9 0.021418922423117836は
(訓練後)を予測4 7.804863933862125

おすすめ

転載: www.cnblogs.com/songyuejie/p/11998927.html