線形回帰: 勾配降下法

勾配降下法は、損失が最小になるモデルを生成する重みとバイアスを反復的に見つける数学的手法です。勾配降下法では、ユーザー定義の反復回数だけ次のプロセスを繰り返して、最適な重みとバイアスを見つけます。

モデルは、ゼロに近いランダムな重みとバイアスでトレーニングを開始し、次の手順を繰り返します。

  1. 現在の重みとバイアスを使用して損失を計算します。

  2. 損失を減らす重みとバイアスの移動方向を決定します。

  3. 損失を減らす方向に重みとバイアスの値を少しだけ移動します。

  4. ステップ 1 に戻り、モデルが損失をさらに減らすことができなくなるまで、このプロセスを繰り返します。

次の図は、勾配降下法が損失が最小のモデルを生成する重みとバイアスを見つけるために実行する反復ステップの概要を示しています。

図 11. 勾配降下法のプロセスを示す図。

図 11. 勾配降下法は、損失が最小になるモデルを生成する重みとバイアスを見つける反復プロセスです。

モデルの収束と損失曲線

モデルをトレーニングするときは、損失曲線を見て、モデルが収束したかどうかを判断することがよくあります。損失曲線は、モデルのトレーニング中に損失がどのように変化するかを示します。一般的な損失曲線は次のようになります。損失は y 軸、イテレーションは x 軸に表示されます。

図 12. 急激な減少と緩やかな減少を示す損失曲線のグラフ。

図 12. モデルが 1,000 回目の反復処理のマーク付近で収束していることを示す損失曲線。

最初の数回の反復処理で損失が大幅に減少し、その後徐々に減少して、1,000 回目の反復処理付近で平坦になっていることがわかります。1,000 回のイテレーションの後、モデルが収束したとほぼ確信できます。

次の図では、トレーニング プロセスの開始時、中間時、終了時の 3 つのポイントでモデルを描画しています。トレーニング プロセス中のスナップショットでモデルの状態を可視化すると、重みとバイアスの更新、損失の削減、モデルの収束の間の関連性が明確になります。

図では、特定のイテレーションで導出された重みとバイアスを使用してモデルを表します。データポイントとモデル スナップショットのグラフでは、モデルからデータポイントまでの青い損失線が損失の量を示しています。線が長いほど、損失が大きくなります。

次の図では、2 回目のイテレーション付近で損失が大きいため、モデルの予測精度が低下していることがわかります。

図 13. 損失曲線と、データポイントから傾斜しているモデルの対応するグラフ。

図 13. トレーニング プロセスの開始時の損失曲線とモデルのスナップショット。

400 回目の反復あたりで、勾配降下法がより優れたモデルを生成する重みとバイアスを見つけたことがわかります。

図 14. データポイントを最適な角度で切断していない、モデルの損失曲線と対応するグラフ。

図 14. トレーニングの中間付近の損失曲線とモデルのスナップショット。

約 1,000 回の反復で、モデルが収束し、損失が最小限のモデルが生成されていることがわかります。

図 15. データにうまく適合するモデルの損失曲線と対応するグラフ。

図 15. 損失曲線と、トレーニング プロセスの終了近くのモデルのスナップショット。

演習: 理解度を確認する

線形回帰における勾配降下法の役割は何ですか?
勾配降下法は、損失を最小限に抑える最適な重みとバイアスを見つける反復プロセスです。
勾配降下法は、モデルのトレーニング時に使用する損失のタイプ(L1 や L2 など)を決定するのに役立ちます。
モデル トレーニングの損失関数の選択に勾配降下法は使用されません。
勾配降下法は、データセットから外れ値を除去して、モデルがより正確な予測を行えるようにします。
勾配降下法ではデータセットは変更されません。

収束と凸関数

線形モデルの損失関数は、常に面を生成します。このプロパティの結果として、線形回帰モデルが収束すると、モデルが最小の損失を生成する重みとバイアスを見つけたことがわかります。

1 つの特徴を持つモデルの損失曲面をグラフにすると、その凸形状を確認できます。次の図は、仮想の燃費データセットの損失曲面です。重みは x 軸、バイアスは y 軸、損失は z 軸に表示されます。

図 16. 損失表面の 3D グラフ。

図 16. 凸形状を示す損失曲面。

この例では、重み -5.44 とバイアス 35.94 で損失が最小の 5.54 になります。

図 17. 損失曲面の 3D グラフ。一番下の点は (-5.44, 35.94, 5.54)。

図 17. 損失が最小になる重みとバイアスの値を示す損失表面。

線形モデルは、最小損失が見つかると収束します。勾配降下法で重みとバイアス点をグラフにプロットすると、丘を転がり落ちて、下り坂がなくなったところで止まるボールのように見えます。

図 18. 勾配降下点が最小点に移動する凸型の 3D 損失曲面。

図 18. 損失グラフ。グラフの最低点で停止する勾配降下点を示しています。

黒い損失点が損失曲線の形状を正確に表していることに注目してください。損失曲線の形状は、急激に減少してから、損失曲面の最低点に達するまで徐々に減少します。

損失が最小になる重みとバイアスの値(この場合は重みが -5.44、バイアスが 35.94)を使用して、モデルをグラフ化し、データへの適合度を確認します。

図 19. ポンド(1, 000 単位)とガロンあたりの走行距離のグラフ。データに適合するモデルが示されています。

図 19. 損失が最小になる重みとバイアスの値を使用してグラフ化したモデル。

このデータセットでは、これ以外の重みとバイアスの値では損失がより少ないモデルが生成されないため、これが最適なモデルになります。