AI用語集・ディープラーニングの概要

確率的勾配降下法とは

かくりつてきこうばいこうかほうstochastic gradient descent略語 SGD

  • シラバス 技術16
  • ◯×チェック3問
  • 練習問題7問

最終更新日:作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未出典

1行定義

確率的勾配降下法とは、訓練データからランダムに選んだ一部のデータで勾配を計算し、重みを少しずつ更新していく最適化手法のことです。

くわしく

確率的勾配降下法(SGD)は、ニューラルネットワークの重みを調整する最も基本的な最適化手法です。

勾配降下法の考え方

学習とは、誤差関数の値が小さくなる重みを探すことです。勾配降下法では、誤差関数の勾配(傾き)を計算し、坂を下る向きに重みを少しだけ動かします。式で書くとw ← w − η × 勾配です。η(イータ)は学習率で、1回にどれだけ動かすかを決めます。霧の中で、足元の傾きだけを頼りに山を下りる様子にたとえられます。

「確率的」とは

訓練データ全体で勾配を計算してから1回更新する方法を、バッチ学習(最急降下法)といいます。正確ですが、データが多いと1回の更新に時間がかかります。

確率的勾配降下法では、ランダムに選んだ1件のデータだけで勾配を計算し、すぐに更新します。どのデータを使うかがランダムなので「確率的」と呼びます。実際のディープラーニングでは、数十〜数百件のまとまり(ミニバッチ)ごとに更新するミニバッチ学習が主流で、これも広い意味でSGDと呼ばれます。

長所と短所

1回の更新が軽いので、大量のデータや、データが届くたびに学習するオンライン学習に向いています。また、勾配にばらつきがあるため、進む方向が少しずつ揺れます。この揺れのおかげで、浅い局所最適解から抜け出せることがあります。

一方、揺れのために、最適解の近くで行ったり来たりしやすくなります。そこで、学習が進むにつれて学習率を下げる工夫や、過去の更新の勢いを使うモーメンタム、学習率を自動で調整するAdaGrad・RMSprop・Adamなどの改良手法が考えられてきました。

考え方の起源は、1951年のロビンスとモンローによる確率近似法の研究です。

覚え方

「全員に聞かずに数人に聞き、すぐに一歩動く」と覚えます。

G検定での出題

出題のされ方

全データを使う最急降下法(バッチ学習)との違い、ミニバッチ学習やオンライン学習との関係、更新のばらつきが局所最適解からの脱出に役立つ点、モーメンタムやAdamなどの改良手法が問われます。

シラバスでは「確率的勾配降下法(SGD)」と表記されています。

混同しやすい用語

用語意味
確率的勾配降下法このページの用語訓練データからランダムに選んだ一部のデータで勾配を計算し、重みを少しずつ更新していく最適化手法
ミニバッチ学習訓練データを数十〜数百件ずつの小さなまとまり(ミニバッチ)に分け、まとまりごとに勾配を計算して重みを更新する学習方法

◯×チェック

3問

次の文が正しいか、誤りかを選んでください。

  1. 確率的勾配降下法では、ランダムに選んだ一部のデータ(1件またはミニバッチ)から勾配を求めて、重みを更新する。

    答えを見る

    答え ◯ 正しい

    全データで勾配を求めるバッチ学習より1回の更新が軽く、同じ時間で多くの回数を更新できます。

  2. 確率的勾配降下法は、勾配のばらつきのおかげで、浅い局所最適解から抜け出せることがある。

    答えを見る

    答え ◯ 正しい

    一部のデータから求めた勾配は、本来の勾配から少しずれます。このずれが、浅いくぼみから押し出す揺れとして働くことがあります。

  3. 確率的勾配降下法は、毎回すべての訓練データを使って勾配を正確に求めるため、1回の更新にかかる計算量が大きい。

    答えを見る

    答え × 誤り

    毎回すべてのデータを使うのはバッチ学習(最急降下法)です。確率的勾配降下法は一部のデータだけを使います。

この用語の練習問題

7問
  1. #0362誤差逆伝播法と最適化手法の役割難易度 基礎・単一選択未回答
  2. #0044勾配降下法の改良手法の違い難易度 標準・単一選択未回答
  3. #0045バッチサイズと更新回数難易度 標準・単一選択未回答

ほかに4問あります。続けて解くと、すべての問題を順に出題します。

出典

作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未 最終確認日: 対応シラバス:シラバス第1.4版 技術16

誤りを報告

表示設定

テーマ
文字の大きさ
問題演習