Gradient Descent
Gradient Descent
Gradient Descent(勾配降下法)とは
ひとことで
損失関数(誤差)の値が小さくなる方向、つまり勾配の逆方向へ、パラメータを少しずつ動かして最適な値を探す方法。1回に動かす幅は学習率で決める。
たとえると
霧で周りが見えない山の中で、足元の傾きだけを頼りに、低い方へ一歩ずつ下りて谷底を目指すようなものです。歩幅が大きすぎると谷を飛び越え、小さすぎるといつまでも着きません。
現場ではこう使う
需要予測モデルの学習で、損失がまったく下がらず値が大きく振れ続けました。担当者が設定を見直すと学習率が大きすぎたことがわかり、値を下げたところ損失が安定して減るようになりました。チームは学習率の設定が結果を大きく左右することを実感しました。
試験のポイント
EXAM POINT「勾配の逆方向にパラメータを更新」「学習率」と出てきたら勾配降下法です。更新式は「新しい重み = 今の重み − 学習率 × 勾配」です。学習率が大きすぎると発散・振動し、小さすぎると時間がかかる点や、局所最適解や鞍点にとどまってしまう課題が問われます。全データを使うバッチ学習、1件ずつのSGD、少数ずつのミニバッチ学習の違いも整理しましょう。
混同しやすい用語との違い
- SGD勾配降下法の一種で、ランダムに選んだ一部のデータで勾配を計算して更新する
- Backpropagation勾配を効率よく計算する方法。勾配降下法はその勾配でパラメータを更新する