用語集

バックプロパゲーション

バックプロパゲーションがどのようにニューラルネットワークを訓練し、エラー率を低減し、画像認識やNLPのようなAIアプリケーションを効率的に強化するかを学ぶ。

Ultralytics HUB で
を使ってYOLO モデルをシンプルにトレーニングする。

さらに詳しく

バックプロパゲーションは、ニューラルネットワーク(NN)の学習に用いられる深層学習(DL)の分野における基本的なアルゴリズムである。これは、前のエポック(すなわち反復)で得られたエラー率に基づいてニューラルネットワークの重みを微調整する方法である。重みを適切に調整することで、より低いエラー率を保証し、汎化度を高めることでモデルの信頼性を高める。これはネットワークの重みに対する損失関数の勾配を計算することで機能する。基本的に、バックプロパゲーションはネットワークを前方へ通過するたびに、モデルのパラメータを調整しながら後方へ通過する(weights and biases)。このプロセスは、ネットワークが時間をかけて学習し、パフォーマンスを向上させるために重要である。

バックプロパゲーションの仕組み

バックプロパゲーション・アルゴリズムには、フォワードパスとバックワードパスという2つの主要フェーズがある。

  1. フォワード・パス:フォワード・パスでは、入力データがネットワークに供給され、ネットワークは出力予測を生成する。次に損失関数がこの予測値と実際の目標値を比較し、誤差を計算する。
  2. 後方パス:バックワードパスでは、アルゴリズムは微積分の連鎖法則を適用して、各重みに関する損失関数の勾配を計算する。その後、重みは勾配の反対方向に更新され、通常、勾配降下またはその亜種の1つのような最適化アルゴリズムを使用する。このステップは、その後の予測における誤差を最小化するために極めて重要である。

バックプロパゲーションの重要性

バックプロパゲーションは、ニューラルネットワークの重みを更新するために必要な勾配を計算するための効率的な方法を提供するため、ディープラーニングモデルのトレーニングに不可欠である。バックプロパゲーションがなければ、勾配を計算するための計算コストが法外に高くなるため、複数のレイヤーを持つディープネットワークをトレーニングすることは現実的ではないだろう。バックプロパゲーションは、誤差を最小化するために繰り返し重みを調整することで、ネットワークがデータ内の複雑なパターンと関係を学習することを可能にする。

バックプロパゲーションの実世界での応用

バックプロパゲーションは、様々な領域にわたる幅広いアプリケーションで使用されている。以下に2つの例を挙げる:

  1. 画像認識コンピュータビジョン(CV)では、バックプロパゲーションは、画像分類や 物体検出などのタスクのための畳み込みニューラルネットワーク(CNN)の学習に使用される。例えば、自律走行車では、CNNは歩行者、他の車両、交通標識などのオブジェクトを認識するように訓練され、車両が情報に基づいた運転判断を下せるようにします。自律走行車について詳しくはこちら
  2. 自然言語処理(NLP):NLPでは、バックプロパゲーションは、言語翻訳、感情分析、テキスト生成などのタスクのために、リカレント・ニューラル・ネットワーク(RNN)やトランスフォーマ・モデルを学習する。例えば、バックプロパゲーションは、SiriやAlexaのような仮想アシスタントの精度を向上させるのに役立ちます。自然言語処理(NLP)の詳細については、こちらをご覧ください。

関連用語

  • 勾配降下:勾配が最も急降下する方向に繰り返し重みを調整することにより、損失関数を最小化するために使用される最適化アルゴリズム。勾配降下について詳しく知る。
  • 損失関数:予測出力と実際の目標値との差を測定する関数。ニューラルネットワークをトレーニングする目的は、この関数を最小化することである。損失関数について詳しく知る。
  • ニューラル・ネットワーク:相互に接続されたノード(ニューロン)のネットワークで、層状に構成されている。ニューラルネットワークはパターンを認識するように設計されており、ディープラーニングの基本要素である。ニューラルネットワークに飛び込もう。
  • 活性化関数:ニューロンの出力に非線形性を導入する関数。一般的な活性化関数には、ReLUシグモイドtanhなどがある。活性化関数の詳細
  • エポック:学習プロセスにおいて学習データセット全体を通過すること。ニューラルネットワークを効果的に訓練するには、複数のエポックが必要になることが多い。エポックについて学ぶ。

これらの用語はバックプロパゲーションと密接に関連しており、ニューラルネットワークがどのように訓練されるかを理解するために不可欠である。バックプロパゲーションとその関連概念を理解することで、ディープラーニングの仕組みや、Ultralytics YOLO のようなモデルが様々なタスクに対してどのようにトレーニングされるのかについて、より深い洞察を得ることができる。

すべて読む