多変数関数の最適化(ラグランジュ乗数法含む)

多変数関数の最適化は、機械学習や強化学習において、目的関数(損失関数など)を最小化または最大化する際に非常に重要なテーマです。特に制約付き最適化を扱う際に登場するラグランジュ乗数法は、解析的に解を求めるための強力な手法です。


1 多変数関数の最適化とは

定義

多変数関数の最適化とは、関数

f(x1,x2,...,xn)f(x_1, x_2, …, x_n)

が最大または最小となる点 (x1,x2,...,xn)(x_1^*, x_2^*, …, x_n^*) を求める問題です。

この最適化問題には次の2つの形があります:

  • 制約なし最適化(unconstrained optimization)

  • 制約付き最適化(constrained optimization)


2 制約なし最適化の方法

勾配ベクトルの利用

極値(最大または最小)をとる点では、勾配ベクトルがゼロになります。

f(x1,x2,...,xn)=(fx1,fx2,...,fxn)=0\nabla f(x_1, x_2, …, x_n) = \left( \frac{\partial f}{\partial x_1}, \frac{\partial f}{\partial x_2}, …, \frac{\partial f}{\partial x_n} \right) = 0

この条件を満たす点を**臨界点(critical point)**といい、これが極値候補になります。

ヘッセ行列(Hessian)による判定

臨界点が極小・極大・鞍点のどれであるかを判定するためには、ヘッセ行列(Hessian matrix)を使います。

ヘッセ行列:

H=[2fx122fx1xn2fxnx12fxn2]H = \begin{bmatrix} \frac{\partial^2 f}{\partial x_1^2} & \cdots & \frac{\partial^2 f}{\partial x_1 \partial x_n} \\ \vdots & \ddots & \vdots \\ \frac{\partial^2 f}{\partial x_n \partial x_1} & \cdots & \frac{\partial^2 f}{\partial x_n^2} \end{bmatrix}

  • 正定値なら:極小点

  • 負定値なら:極大点

  • 符号が混在:鞍点


3 制約付き最適化とラグランジュ乗数法

問題の定式化

制約付き最適化では、関数 f(x,y,...)f(x, y, …) を制約条件

g(x,y,...)=0g(x, y, …) = 0

の下で最適化する問題です。

ラグランジュ乗数法(Lagrange multiplier method)

このとき、ラグランジュ関数 L\mathcal{L} を定義します:

L(x,y,λ)=f(x,y)λg(x,y)\mathcal{L}(x, y, \lambda) = f(x, y) – \lambda g(x, y)

目的関数と制約条件を1つの関数にまとめたものです。最適解は次の方程式系を満たす点になります:

xL=0,yL=0,g(x,y)=0\nabla_x \mathcal{L} = 0,\quad \nabla_y \mathcal{L} = 0,\quad g(x, y) = 0

ここで λ\lambda はラグランジュ乗数であり、幾何学的には制約面に沿った勾配の関係を表します。

幾何学的直感

  • 最適解では、目的関数 ff の勾配ベクトルと制約関数 gg の勾配ベクトルが平行になる。

  • すなわち、

f=λg\nabla f = \lambda \nabla g


4 拡張:複数制約がある場合

制約が複数ある場合 g1(x,y)=0,g2(x,y)=0,...g_1(x, y) = 0, g_2(x, y) = 0, …、それぞれに対応するラグランジュ乗数 λ1,λ2,...\lambda_1, \lambda_2, … を導入します:

L(x,y,λ1,λ2,...)=f(x,y)λ1g1(x,y)λ2g2(x,y)\mathcal{L}(x, y, \lambda_1, \lambda_2, …) = f(x, y) – \lambda_1 g_1(x, y) – \lambda_2 g_2(x, y) – \cdots

同様に勾配ベクトルをとって方程式系を解くことで最適解が得られます。


5 機械学習における応用

  • 正則化付きの最小化問題(例えば Ridge 回帰)は制約付き最適化に対応。

  • SVM(サポートベクターマシン)では、ラグランジュの双対問題を解く。

  • 強化学習において、期待報酬の最大化を制約付きで行うような問題(例えば安全性制約)に応用。


まとめ

項目 内容
最適化対象 多変数関数 f(x1,...,xn)f(x_1, …, x_n)
方法(制約なし) 勾配ゼロ+ヘッセ行列で分類
方法(制約付き) ラグランジュ乗数法を使って条件付き最適化
応用 回帰、分類、ポリシー最適化など

生成日:2025/06/01