title: 【文系合格者が図解】G検定「誤差逆伝播法・勾配消失問題」攻略|ニューラルネットワークが学習する仕組みを一気に理解
tags: G検定 AI ディープラーニング JDLA 資格
はじめに
こんにちは。2026年1月のG検定に合格した、文系出身のエンジニアです。
G検定の勉強をしていて、「誤差逆伝播法(バックプロパゲーション)」という言葉が出てきた瞬間、思考停止した経験はありませんか?私は完全にそうでした。「逆伝播…?何が逆なの?」と、名前だけで拒否反応が出たのを覚えています。
でも、ここはニューラルネットワークが「学習する仕組み」そのものを問う超重要パートです。仕組みのストーリーさえ掴めば、数式が読めなくても試験問題は解けます。この記事では、文系の私が「なるほど」と腑に落ちた順番で、順伝播・誤差逆伝播法・勾配消失問題の流れを整理します。
※ この記事はJDLA公式のものではありません。個人の学習経験に基づく内容です。
まず全体像:ニューラルネットワークの学習は「答え合わせ」の繰り返し
難しく考えがちですが、ニューラルネットワークの学習は要するにテストの復習と同じです。
- 問題を解く(順伝播)
- 答え合わせをして、どれだけ間違えたか測る(損失の計算)
- 間違いの原因をさかのぼって、考え方を修正する(誤差逆伝播法)
- 修正した状態でまた解く(繰り返し)
この4ステップをひたすら回して、少しずつ賢くなっていく。これがニューラルネットワークの学習の正体です。まずこのイメージを持つと、個々の用語が「あの工程のことか」とつながります。
ステップ1:順伝播(フォワードプロパゲーション)
順伝播は、入力から出力へ向かって前から後ろへデータを流していく計算です。
入力(画像や数値)→ 各層で「重み」をかけて足し合わせ → 活性化関数で変換 → 次の層へ……を繰り返し、最終的に予測(出力)を出します。「猫の画像を入れたら、猫である確率0.7」のように答えを出す工程ですね。
ここで登場する「重み(パラメータ)」が、ネットワークの賢さの正体です。学習とは、この重みを最適な値に調整していく作業に他なりません。
ステップ2:損失を計算する
順伝播で出した予測が、正解とどれだけズレているかを損失関数で数値化します(回帰なら二乗誤差、分類なら交差エントロピーが定番)。
この損失が大きいほど「まだまだ間違えている」、小さいほど「正解に近い」。学習のゴールは、この損失をできるだけ小さくすることです。
ステップ3:誤差逆伝播法(バックプロパゲーション)
ここが本丸です。誤差逆伝播法とは、出力層で計算した誤差(損失)を、出力側から入力側へ逆向きにさかのぼらせて、各重みをどう修正すべきかを求める手法です。
なぜ「逆」なのか。テストで間違えたとき、「最後の計算ミス?それとも途中の理解不足?」と原因を後ろからさかのぼって探しますよね。あれと同じで、出力の誤差から「どの重みがどれだけ悪さをしたか」を後ろから順に割り出していくのです。
このとき使われる数学的な道具が**微分(勾配)と連鎖律(チェインルール)**ですが、文系の方は「各重みの責任の大きさを、傾き(勾配)として計算している」というイメージで十分です。
そして、求めた勾配をもとに重みを更新するのが、SGDやAdamといった**最適化手法(オプティマイザ)**の役割です。
| 用語 | 役割 | ひとことで言うと |
|---|---|---|
| 順伝播 | 入力→出力で予測を出す | 問題を解く |
| 損失関数 | 予測と正解のズレを数値化 | 答え合わせ |
| 誤差逆伝播法 | 誤差を逆向きに伝えて勾配を求める | 間違いの原因探し |
| 最適化手法 | 勾配をもとに重みを更新 | 考え方を修正 |
| 勾配降下法 | 損失が小さくなる方向へ進む | 坂を下りる |
ステップ4:勾配消失問題 ── ディープラーニングを長年阻んだ壁
ここがG検定の超頻出ポイントです。
層を深く(ディープに)すればするほど賢くなりそうですが、昔のニューラルネットワークでは層を増やすと逆に学習できなくなる問題が起きました。それが**勾配消失問題(vanishing gradient problem)**です。
誤差逆伝播法では、誤差を後ろからさかのぼるたびに勾配を掛け算していきます。このときシグモイド関数を使うと、その微分の最大値が0.25しかないため、層をさかのぼるごとに勾配がどんどん小さくなり、入力層に近い層ではほぼ0になってしまう。勾配が0ということは「修正すべき量が分からない」=学習が止まる、ということです。
どう解決したか(試験で問われる対策)
- ReLU関数の登場:正の入力に対して勾配が1のままなので、勾配が消えにくい。ディープラーニング普及の立役者
- バッチ正規化(Batch Normalization):各層の出力の分布を整え、学習を安定させる
- スキップ結合(ResNetの残差接続):層を飛び越える経路を作り、勾配を伝わりやすくする
この「勾配消失問題 → ReLUなどで解決」という流れは、ディープラーニングがブレイクした歴史とも直結しているので、ストーリーで覚えると忘れません。
文系の私が理解するためにやったこと
- 4ステップのストーリーで丸ごと覚える:順伝播→損失→逆伝播→更新、の流れを言葉で言えるようにした
- 「逆伝播=間違いの原因探し」と言い換える:数式ではなく日本語のイメージで固定する
- 勾配消失は"掛け算でしぼむ"とイメージ:小さい数を何度も掛けると0に近づく、という直感で十分
- 対策をセットで暗記:勾配消失=シグモイドが原因、ReLU・バッチ正規化・スキップ結合で対策、をワンセットに
試験直前の確認リスト
- 順伝播と誤差逆伝播法の向き(前→後/後→前)を区別できるか
- 誤差逆伝播法が「勾配を求める」手法だと説明できるか
- 勾配消失問題がなぜ起きるか(シグモイドの微分が小さい)を言えるか
- 勾配消失への対策(ReLU・バッチ正規化・スキップ結合)を挙げられるか
- 勾配を使って重みを更新するのが最適化手法だと理解しているか
まとめ
誤差逆伝播法は、名前の難しさに反して、やっていることは「間違いの原因を出力側からさかのぼって探し、重みを修正する」というシンプルな仕組みです。そして、そのさかのぼりの途中で勾配がしぼんでしまうのが勾配消失問題。これをReLUなどで乗り越えたことで、今のディープラーニング時代が始まりました。
文系の方は、数式を追うより4ステップの流れと勾配消失とその対策を言葉で説明できるようにするのが合格への近道です。
おすすめの学習リソース
G検定の学習には、分野ごとに体系的にまとめられた教材が役立ちます。私も受験前にお世話になったサイトを紹介します。
誤差逆伝播法や勾配消失問題を含むディープラーニングの基礎分野の解説が充実しており、試験対策に活用できます。
この記事はJDLA認定の公式コンテンツではありません。筆者個人の学習経験に基づく非公式の情報共有です。