Skip to content

第3章:最適化の数理 —— 勾配法とリプシッツ連続

前章までで、線形モデルの解析的な解法(正規方程式や擬似逆行列)を見てきました。しかし、現代の機械学習で扱う複雑なモデル(深層学習など)では、方程式を解いて一発で最適なパラメータを求めることは不可能です。 そこで本章では、少しずつパラメータを更新して最小値を探り当てる「勾配法」について、なぜその更新式で確実に最小値へ向かえるのかを、テイラー展開と「リプシッツ連続」という強力な数学的道具を用いて証明します。

1. 逐次最小化とテイラー展開(1変数)

ある目的関数 を最小化するパラメータ を見つけたいとします。現在のパラメータを としたとき、 の近傍での関数の振る舞いは、テイラー展開によって2次関数として近似できます。

この2次関数が「下に凸」な二次関数(お椀型)であれば、その頂点を求めることで現在の位置 より関数の値が小さくなる新しい を見つけることができます。 しかし、2階微分 を毎回計算するのは大変です。そこで、この をある正の定数 に置き換えた関数を考えます。

この右辺を「平方完成」して頂点を探してみましょう。

この2次関数が最小となるのは、括弧の中が になる時、すなわち次の更新式を満たす時です。

これが勾配法の基本式です。定数 は「学習率」に相当します。

2. リプシッツ連続による上界の保証

前節で「2階微分を に置き換えた2次関数」が、元の関数 を常に上から覆いかぶさる「上界(代理関数)」となるためには、数学的な保証が必要です。ここで登場するのがリプシッツ連続です。

関数の導関数 が、ある定数 (リプシッツ定数)を用いて以下の条件を満たすとき、その勾配はリプシッツ連続であると言います。

これは「勾配(傾き)の変化があまり激しすぎない(変化率が で抑えられている)」ことを意味します。ここで と置きます。 微積分学の基本定理より、 は積分を用いて次のように変形できます。

ここに無理やり を足して引くというテクニックを使います。

この第3項に対してリプシッツ連続の条件 を適用して積分を評価します。

したがって、以下の不等式(上界)が厳密に証明されます。

この「上界となる2次関数(代理関数)」の頂点を更新先とすることで、元の関数 の値も必ず単調に減少することが保証されるのです。

3. 多変数関数への拡張とヘッセ行列

次に、パラメータが複数のベクトル である場合へ拡張します。 多変数関数のテイラー展開では、1階微分は勾配ベクトル 、2階微分はヘッセ行列 となります。

ヘッセ行列 が正定値(すべての固有値が正)であれば、この関数は「下に凸の2次関数(お椀型)」になります。平方完成を行って頂点を求めると、次のような更新式が得られます(ニュートン法)。

しかし、機械学習において巨大なヘッセ行列 の逆行列 を計算することは、計算コストの面で現実的ではありません。

4. 代理関数と勾配法の完成(ベクトル版)

そこで、1変数の時と同様に、複雑なヘッセ行列 を単純な対角行列 に置き換えることで、計算を劇的に簡単にします。

ベクトル空間におけるリプシッツ連続の条件 と、ベクトルの内積に関するコーシー・シュワルツの不等式)を用いることで、このベクトル版の不等式も厳密に証明できます。

コーシー・シュワルツの不等式とリプシッツ条件()を適用すると、第2項は次のように上から抑えられます。

こうして導かれた代理関数を最小化するよう平方完成を行うと、次式が得られます。

ノルムが最小(ゼロ)になるのは、括弧の中が のときです。これにより、機械学習で最も広く使われる**勾配降下法(Gradient Descent)**の更新式が、厳密な数学的保証とともに完成します。

ヘッセ行列の計算という重い負担を捨て去り、「現在地の勾配(傾き)の逆方向へ、学習率 の歩幅で進む」という極めてシンプルなルールだけで、最適解へと確実に近づけるのです。

Released under the MIT License.