🧠順伝播と逆伝播のプロセス
順伝播 (Forward Propagation)
重みの適用: ネットワークの各層において、入力されたデータ(または前の層からの出力)に重みが乗算されます。この重みは、入力信号の強さを調整する役割を果たします。
バイアスの加算: 重み付けされた入力にバイアス(定数項)が加えられます。バイアスはニューロンが活性化する閾値を調整します。
活性化関数: 重み付けとバイアス加算を経た合計入力は、活性化関数によって変換されます。活性化関数(例:ReLU、シグモイド、tanhなど)は非線形性を導入し、ネットワークに複雑なパターンを学習させる能力を与えます。
出力の生成: このプロセスは、ネットワークの各層を順に通過し、最終的に出力層で予測結果を生成します。
逆伝播 (Backpropagation)
コスト関数の計算: 出力層での予測値と実際のターゲット値との間の誤差は、コスト関数(例:平均二乗誤差、クロスエントロピーなど)を用いて計算されます。このコストはモデルの性能を表します。
誤差の伝播: コスト関数から得られた誤差は、ネットワークを逆向きに伝播させます。この過程では、連鎖律を用いて各層の重みに対する誤差の偏微分(勾配)が計算されます。
重みの更新: 勾配降下法(またはその他の最適化アルゴリズム)を使用して、重みを更新します。このステップでは、誤差を減少させる方向
に重みを調整し、モデルの性能を向上させます。
繰り返しのプロセス: この逆伝播プロセスは、ネットワークのすべての層を通じて繰り返されます。各イテレーションで、重みは誤差を最小限に抑えるように徐々に調整されます。
まとめ
順伝播: データがネットワークの各層を通過し、重みとバイアスが適用された後、活性化関数を通じて次の層に伝達されるプロセス。最終的に出力層で予測が生成されます。
逆伝播: 出力層での予測と実際のラベルとの間の誤差をコスト関数を用いて計算し、この誤差をネットワークを逆方向に伝播させて重みを更新するプロセス。
このサイクルがディープラーニングの訓練プロセスの核心を成し、モデルがデータから学習し、最終的には高い精度で予測を行う能力を得ることになります。