どうも、カタミチです。
さて、今日も「最短コースでわかる PyTorch&深層学習プログラミング」のひとり読書会、やっていきますかねー。
さて、3章も10節です。ぼちぼち、線形回帰問題も大詰めですね。
3-10. 繰り返し計算
さてさて、これまでの式を総動員して、繰り返し計算ですね。
コードを追ってみましょう。
WとBは既に定義済みだったんですが、改めて書き直していますね。一旦中身をリセットするために書いたようです。
で、次のnum_epochsは「繰り返し回数」ですね。今回は500回まわすようです。
次のlrは、前にも出てきた「学習率」ですね。0.001がセットされています。
最後のhistoryは、経過を記録するための配列です。前著の「ディープラーニングの数学」のときもhistory変数を使って記録をしていましたね。しかし今回はPyTorchを使っているので少しは簡単に記述できるようになってるんですかねー。
さて、繰り返し処理です。
for文で500回まわす内容は…前回までに作った式ですね。
ただ、一番最後のif文はこれまでに無かったですね。こいつがさっき言ってた記録用のコードですね。PyTorch、特に使ってないですね(ふむ)。
lossがテンソルなので、item()関数を使って値を取り出してる…というところがこれまでのhistoryの書き方と違う点ですかね。
で、実行すると結果は…
こんな感じですね。epochは0から始まって10刻みで出力されたので、上のキャプチャは途中からのものです。
ということで
繰り返し計算まで終わりました。ここまで来たら、線形回帰問題もあと一息ですね。がんばって完走したいと思います!
ではまた。