勾配降下法 - 山を下って最適解へ

勾配降下法と学習率の基本を解説。パラメータ最適化の仕組みを理解しよう。

編集・検証: AIパスポートスタディ編集部 公式情報: GUGA 生成AIパスポート公式ページ 制作・検証方針

『山を下る』発想で最適解を探す『勾配降下法』を学びます。学習率のさじ加減がなぜ重要なのか、クイズで体感しましょう(つむぎのダジャレも炸裂するかも)。

香月 リサ 先生(普段) 香月 リサ 先生

ではクイズ。
『目隠しで山頂にいる。
足元の傾斜だけを頼りに谷底を目指す。
あなたの戦略は?』

戸倉 ジャスミン(普段) 戸倉 ジャスミン

うそっ!?
そんなん一歩ずつ下り坂の方に進むしかなくね? あ、でも歩幅どれくらいにすればいいか迷うかも。

雪村 ましろ(しょんぼり) 雪村 ましろ

えへへ、おっかなびっくり小さく進みます〜。

深見 つむぎ(あせる) 深見 つむぎ

まさに…坂の仕事は勾配(こうばい)におまかせ、ってとこでしょうか…

戸倉 ジャスミン(笑い) 戸倉 ジャスミン

つむぎ、今ダジャレ言わなかった?

深見 つむぎ(恥ずかしい) 深見 つむぎ

い、いえ…ただの偶然です。

香月 リサ 先生(笑顔) 香月 リサ 先生

ふふ、つむぎさん珍しい。
さて本題、この戦略がまさに勾配降下法なの。
損失関数を山と見立てて、傾きの方向に少しずつパラメータを更新し、谷底(損失最小)を探すわ。

深見 つむぎ(普段) 深見 つむぎ

補足すると、一歩の大きさを学習率と呼びます。

雪村 ましろ(あせる) 雪村 ましろ

学習率が大きすぎたら、どうなっちゃうんですかぁ?

香月 リサ 先生(普段) 香月 リサ 先生

谷底を飛び越えて山の反対側に着地しちゃうの。
それを繰り返すと延々収束しない、いわゆる発散状態ね。

戸倉 ジャスミン(あせる) 戸倉 ジャスミン

小さすぎたら…あ、あたしわかったかも!
ずっとチマチマで終わらないじゃん。

深見 つむぎ(普段) 深見 つむぎ

正解です。
ちょうどいい学習率を選ぶのが重要で、そのための手法としてスケジューラやAdamのような適応的最適化が発達しています。

香月 リサ 先生(普段) 香月 リサ 先生

またバッチ全体で勾配を計算するバッチ勾配降下、1件ずつ更新する確率的勾配降下(SGD)、中間のミニバッチ法など、データの扱い方にもバリエーションがあるわ。
深層学習ではミニバッチ法が標準ね。

雪村 ましろ(普段) 雪村 ましろ

ちょうどいい歩幅って、生活でも大事ですよね〜。

戸倉 ジャスミン(笑い) 戸倉 ジャスミン

ほんとそれ。
試験勉強も一夜漬けじゃダメだし、ちびちびすぎても終わらないのと同じだね。

深見 つむぎ(普段) 深見 つむぎ

注意すべき落とし穴として、損失関数に谷が複数ある『局所最適解』があります。
大域最適解ではなくローカルな谷に嵌まってしまう現象ですね。

香月 リサ 先生(普段) 香月 リサ 先生

SGDのランダム性や学習率スケジューリング、モメンタム、Adam最適化などの工夫で、この問題を緩和するのが現代の機械学習の定石よ。

戸倉 ジャスミン(普段) 戸倉 ジャスミン

山で言えば『一番低い谷』を探したいのに『そこそこの谷』で安心しちゃう、みたいな。
試合でも油断は禁物だね。

雪村 ましろ(笑顔) 雪村 ましろ

AIも人間みたいに迷子になるんですね〜、なんだか親近感です。

深見 つむぎ(普段) 深見 つむぎ

現代の深層学習フレームワーク(PyTorchやTensorFlow)では、Adamなどの最適化アルゴリズムがデフォルトで用意されていて、学習率の調整もある程度自動化されています。
とはいえ基本を理解していないと適切なチューニングはできません。

戸倉 ジャスミン(普段) 戸倉 ジャスミン

便利なツールがあっても、中身を知ってるかどうかで差がつくわけか。

雪村 ましろ(笑顔) 雪村 ましろ

自動で賢くなる裏には、こんな仕組みがあったんですね〜。
感動です!

戸倉 ジャスミン(普段) 戸倉 ジャスミン

学習率ひとつで収束が決まるなんて、ちょっとした職人芸だね。

香月 リサ 先生(普段) 香月 リサ 先生

仕上げクイズ。
学習率が大きすぎるとどうなる? 発散、収束が遅い、過学習、データ増加。

戸倉 ジャスミン(普段) 戸倉 ジャスミン

発散に一票。

香月 リサ 先生(笑顔) 香月 リサ 先生

正解。
試験では『勾配降下法=誤差最小化の最適化手法』『学習率の大小で発散や遅延』を押さえて。

確認クイズ

勾配降下法で『学習率』が大きすぎるとどうなるか?

  1. 学習が速く完了する
  2. 最適解を飛び越えて収束しない
  3. 過学習が防止される
  4. 特徴量の数が増える
こたえを見る

正解: 2. 最適解を飛び越えて収束しない

学習率が大きすぎると、一歩あたりの更新幅が広すぎて谷底を飛び越え、パラメータが振動または発散します。適切な学習率の設定が不可欠で、Adam等の適応的手法が実務では重宝されます。

🔖 この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。