マナビングITパスポート

バックプロパゲーションが学習で調整するものと目的

ITパスポート試験 令和8年度 問82 / 基礎理論 › 情報に関する理論

過去問にチャレンジ

令和8年度 問82

ニューラルネットワークの学習に用いられるバックプロパゲーションで行われていることはどれか。

  1. ア

    各ノードの重みを調整して,誤差を小さくする。

  2. イ

    各ノードの重みを調整して,最適な活性化関数を選択する。

  3. ウ

    ノードの数を変更して,誤差を小さくする。

  4. エ

    ノードの数を変更して,処理速度を高める。

会話形式の解説

講師講師
今回はバックプロパゲーションが学習の中で何をしているかを問う問題です。選択肢は「何を変えるのか」と「何のために変えるのか」の2点で見比べると整理しやすくなります。
受験者受験者
カタカナ語なので、正直なところ名前だけではイメージがわきません。AI関連の用語だということは分かるのですが。
講師講師
日本語名を覚えておくと手がかりになります。誤差逆伝播法といいます。出力と正解の差である誤差を、出力側から入力側へ逆向きに伝える手法です。
受験者受験者
誤差を逆向きに伝えるということは、目的は誤差を小さくすることですか。
講師講師
そのとおりです。各ノードの重み、つまり入力をどれだけ強く次へ伝えるかを表す値が誤差にどれだけ影響しているかを微分で計算し、誤差が小さくなる方向へ重みを調整します。なので、重みを調整して誤差を小さくするという選択肢が正解です。
受験者受験者
ノードの数を変えて誤差を小さくするという選択肢も、目的は合っているので迷いました。これはなぜ誤りなのでしょうか。
講師講師
そこが一番の引っかけです。ノード数はモデルの構造として学習の前に設計者が決めるものです。学習で誤差を減らすために調整するのは主に重みなので、変えるものが違っています。
受験者受験者
ノード数を変えて処理速度を高めるという選択肢は、目的も変えるものも違うということですね。
講師講師
はい。それはモデルの設計や軽量化に関する話です。バックプロパゲーションの目的は処理速度ではなく、誤差を小さくすることです。
受験者受験者
重みを調整して最適な活性化関数を選ぶという選択肢は、重みが出てくるので正しそうに見えました。
講師講師
活性化関数は、ノードへの入力を出力に変換する関数です。これも通常は設計者が事前に選ぶもので、バックプロパゲーションが選ぶことはありません。重みという言葉が入っていても、目的の部分が違います。
受験者受験者
整理すると、学習で変えるのは重みで、目的は誤差を小さくすること。ノード数や活性化関数は学習前に決める項目、ということですね。
講師講師
よく整理できています。補足すると、厳密にはバックプロパゲーションは重みの勾配を計算する方法で、実際に重みを更新するのは勾配降下法などの最適化手法です。ただ、この試験では両方をまとめて「重みを調整して誤差を小さくする」と理解しておけば十分です。

まとめ

バックプロパゲーションは日本語で誤差逆伝播法といい、出力と正解の差である誤差を出力側から入力側へ逆向きに伝える手法です。各重みが誤差に与える影響を微分(連鎖律)で求め、誤差が小さくなるように重みを調整します。ノード数や活性化関数は学習の前に設計者が決める項目で、バックプロパゲーションで変えるものではありません。選択肢は「何を変えるのか」と「何のために変えるのか」の2点で確認すると、目的だけ合っている引っかけを見抜けます。

解答・解説

正解はアです

この問題のテーマ

ニューラルネットワークの学習で使われるバックプロパゲーション(誤差逆伝播法)が、学習の中で何をしているのかを問う問題です。

解き方の考え方

まず、日本語名の「誤差逆伝播法」を思い出します。名前のとおり、出力と正解の差である誤差を出力側から入力側へ逆向きに伝え、誤差が小さくなるように各ノードの重みを調整する手法です。次に、選択肢を「何を変えるのか」と「何のために変えるのか」の2点で見比べます。変えるのが重みで、目的が誤差を小さくすることになっている選択肢が正解です。ノード数や活性化関数は学習の前に設計者が決めるものなので、それらを変えると書いた選択肢は外せます。

選択肢ごとの解説

  1. ○ア  各ノードの重みを調整して,誤差を小さくする。
    アの「重みを調整して誤差を小さくする」という説明は、バックプロパゲーションの処理そのものです。各重みが誤差にどれだけ影響しているかを微分(連鎖律)で計算し、その結果を使って誤差が小さくなる方向へ重みを更新します。
  2. ×イ  各ノードの重みを調整して,最適な活性化関数を選択する。
    イは、重みを調整して最適な活性化関数を選ぶとしていますが、これは誤りです。活性化関数はノードへの入力を出力に変換する関数で、通常は設計者が事前に選びます。バックプロパゲーションが活性化関数を選ぶことはありません。
  3. ×ウ  ノードの数を変更して,誤差を小さくする。
    ウは「誤差を小さくする」という目的は合っていますが、変えるものがノードの数になっている点が誤りです。ノード数はモデル構造の設計で決めるもので、学習で誤差を減らすために調整するのは主に重みです。
  4. ×エ  ノードの数を変更して,処理速度を高める。
    エの「ノード数を変更して処理速度を高める」という説明は、モデルの設計や軽量化に関する話です。バックプロパゲーションの目的は誤差を小さくすることで、処理速度を高めることではありません。

補足

ウのように目的の部分だけが正しい選択肢は引っかけになりやすいので、「何を変えるのか」まで確認することが大切です。なお、厳密にはバックプロパゲーションは重みの勾配を計算する方法で、実際に重みを更新するのは勾配降下法などの最適化手法です。この試験では、両方をまとめて「重みを調整して誤差を小さくする」と理解しておけば十分です。

POINT

  • バックプロパゲーションは日本語で誤差逆伝播法といい、誤差を出力側から入力側へ逆向きに伝えます。
  • バックプロパゲーションでは、各重みが誤差に与える影響を微分(連鎖律)で求めます。
  • 学習で調整するのは重みで、目的は出力と正解の差である誤差を小さくすることです。
  • ノード数や活性化関数は、学習の前に設計者が決める項目です。

※出典:令和8年度 ITパスポート試験 問82