ヘッセ行列
数学におけるヘッセ行列(ヘッセ-ぎょうれつ、Hessian matrix)は、多変数スカラー値関数の二階偏導関数全体が作る正方行列である。ヘッセ行列は、ジェームス・ジョセフ・シルベスターが、ドイツの数学者ルードヴィヒ・オットー・ヘッセに由来して名づけた。ヘッセ行列は、BFGS法の最適化問題で使われる。
目次 |
定義 [編集]
実数値関数 f(x1, x2, ..., xn) に全ての二階偏微分が存在するとき、変数 xi に関する偏微分作用素を Di = ∂/∂xi とおくと、f のヘッセ行列 H(f) は、(i, j)-成分 H(f)ij が各点 x = (x1, x2, ..., xn) において
で与えられる行列、つまり
である。
ヘッセ行列の対称性 [編集]
ヘッセ行列の主対角線上以外の成分を混合微分 (mixed derivatives) という。 混合微分がすべて連続のとき、微分の順序を考えなくて良い。
例えば、
これは(逆順になるが)次のようにも書ける。
つまり、 f の二階微分がすべて連続な領域 D で、 f のヘッセ行列は、対称行列である。
臨界点と判別式 [編集]
f の傾き(ベクトルの意味での一階導関数)∇f がある点 x で0のとき、f は x において臨界点あるいは停留点を持つと言う。x におけるヘッセ行列の行列式は x における判別式あるいは単にヘッシアンと呼ばれ、その値が0であるような x を f の退化臨界点または非モース臨界点という。ヘッシアンが0でない臨界点は非退化であると言い、また、f のモース臨界点と呼ぶ。
極値点の判定条件 [編集]
以下の判定法が非退化臨界点に対して適用できる。ヘッセ行列が
- x において正定値対称行列であるとき、f は x において極小である。
- x において負定値対称行列であるとき、f は x において極大である。
- x において正負両方の固有値を持つとき、x は f の鞍点である(これは x が退化する場合にも正しい)。
それ以外の場合には(この判定法だけでは)不確定である。特に、ヘッセ行列が半正定値や半負定値であるときにはこの判定法では何も言えていない。ただし、モース理論の観点からはもう少し述べることができる。
この判定法が何を言っているかという点だけでいえば、一変数または二変数の場合は簡単である。一変数の場合にはヘッセ行列は唯一つの二階導関数しか持たず、その二階導関数が x で正ならば x は極小で、負ならば x は極大であり、ゼロならば何もいえない。二変数の場合には、判別式は固有値の積になるから、判別式が使えて、判別式の値が正ならば(固有値がともに正またはともに負となるから)極値を持ち、負ならば二つの固有値が異なる符号を持つから鞍点となる。判別式がゼロのところは不確定である。
境界条件のついたヘッセ行列 [編集]
ある種の制限つき最適化問題の判定に境界つきヘッセ行列 (bordered Hessian) が利用される。与えられた関数f(x1, x2, ..., xn) に
のような制約関数を付け加えて得られる境界つきヘッセ行列とは
のことである。もし、制約関数が m 本あるのならば、左上のかどに m × m のゼロ行列ブロックをおいて、上から m 本の境界行、左から m 本の境界列を並べる。
z が第一成分がゼロでなく、それ以外の成分がゼロとなるベクトルならば z′Hz = 0 となるから、境界つきヘッシアンは(正または負の)定値対称行列になれず、上記判定法の正定値や負定値という規約はここでは通用しない。
ここでの極値判定法は、境界つきヘッセ行列の n − m 小行列のある集合の行列式の符号制限からなる[1]。直観的には、m 本の制約条件によって、最適化問題を自由変数が n − m 個の場合に簡約化したとかんがえるのである。例えば、x1 + x2 + x3 = 1 なる制限条件下における f(x1, x2, x3) の最大化問題は、制約条件無しの f(x1, x2, 1 − x1 − x2) の最大化問題に帰着させることができる。
ベクトル値関数の場合 [編集]
f が(スカラー値でなく)ベクトル値関数であるとき、つまりスカラー値関数のベクトルとして
のように表されるとき、二階導関数の配列を行列の形に書くことはできず、階数 3 のテンソルとして捉えることができる。
注 [編集]
- ^ Magnus, J.R. and H. Neudecker: "Matrix Differential Calculus with Applications in Statistics and Econometrics", page 136. Wiley, 1988

![H(f) = \begin{bmatrix}
\cfrac{\partial^2 f}{\partial x_1^2} & \cfrac{\partial^2 f}{\partial x_1\partial x_2} & \cdots & \cfrac{\partial^2 f}{\partial x_1\partial x_n} \\[16pt]
\cfrac{\partial^2 f}{\partial x_2\partial x_1} & \cfrac{\partial^2 f}{\partial x_2^2} & \cdots & \cfrac{\partial^2 f}{\partial x_2\partial x_n} \\[16pt]
\vdots & \vdots & \ddots & \vdots \\[16pt]
\cfrac{\partial^2 f}{\partial x_n\partial x_1} & \cfrac{\partial^2 f}{\partial x_n\partial x_2} & \cdots & \cfrac{\partial^2 f}{\partial x_n^2}
\end{bmatrix}](http://upload.wikimedia.org/math/9/9/7/99704ea154b17dd780642f6211cfe80e.png)



![H(f,g) = \begin{bmatrix}
0 & \cfrac{\partial g}{\partial x_1} & \cfrac{\partial g}{\partial x_2} & \cdots & \cfrac{\partial g}{\partial x_n} \\[16pt]
\cfrac{\partial g}{\partial x_1} & \cfrac{\partial^2 f}{\partial x_1^2} & \cfrac{\partial^2 f}{\partial x_1\,\partial x_2} & \cdots & \cfrac{\partial^2 f}{\partial x_1\,\partial x_n} \\[16pt]
\cfrac{\partial g}{\partial x_2} & \cfrac{\partial^2 f}{\partial x_2\,\partial x_1} & \cfrac{\partial^2 f}{\partial^2 x_2} & \cdots & \cfrac{\partial^2 f}{\partial x_2\,\partial x_n} \\[16pt]
\vdots & \vdots & \vdots & \ddots & \vdots \\[16pt]
\cfrac{\partial g}{\partial x_n} & \cfrac{\partial^2 f}{\partial x_n\,\partial x_1} & \cfrac{\partial^2 f}{\partial x_n\,\partial x_2} & \cdots & \cfrac{\partial^2 f}{\partial x_n^2}
\end{bmatrix}](http://upload.wikimedia.org/math/4/c/c/4cc19c5816d8de5472e8096bbb5b9710.png)
