数学 におけるヘッセ行列 (ヘッセ-ぎょうれつ、英 : Hessian matrix )は、多変数スカラー 値関数の二階偏導関数 全体が作る正方行列 である。実数値関数の極値 判定に用いられる。ヘッセ行列は、ジェームス・ジョセフ・シルベスター が、ドイツの数学者ルートヴィヒ・オットー・ヘッセ に由来して名づけた。
実数値関数 f (x 1 , x 2 , ..., x n ) に全ての二階偏微分 が存在するとき、変数 x i に関する偏微分作用素 を ∇i = ∂/∂x i とおくと、f のヘッセ行列 H (f ) は、(i , j )-成分 H (f )ij が各点 x = (x 1 , x 2 , ..., x n ) において
H
(
f
)
i
j
(
x
)
=
∇
i
∇
j
f
(
x
)
=
∂
2
∂
x
i
∂
x
j
f
(
x
)
{\displaystyle H(f)_{ij}(\mathbf {x} )=\nabla _{i}\nabla _{j}f(\mathbf {x} )={\frac {\partial ^{2}}{\partial x_{i}\partial x_{j}}}f(\mathbf {x} )}
で与えられる行列、つまり
H
(
f
)
=
∇
⊗
∇
f
=
[
∂
2
f
∂
x
1
2
∂
2
f
∂
x
1
∂
x
2
⋯
∂
2
f
∂
x
1
∂
x
n
∂
2
f
∂
x
2
∂
x
1
∂
2
f
∂
x
2
2
⋯
∂
2
f
∂
x
2
∂
x
n
⋮
⋮
⋱
⋮
∂
2
f
∂
x
n
∂
x
1
∂
2
f
∂
x
n
∂
x
2
⋯
∂
2
f
∂
x
n
2
]
{\displaystyle H(f)=\nabla \otimes \nabla 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}}}
である。上記の行列の行列式 はヘッシアン (Hessian) と呼ばれる[ 1] 。
ヘッセ行列の主対角線 上以外の成分を混合微分 (mixed derivatives) という。
混合微分がすべて連続 のとき、微分の順序を考えなくて良い。
例えば、
∂
∂
x
(
∂
f
∂
y
)
=
∂
∂
y
(
∂
f
∂
x
)
{\displaystyle {\frac {\partial }{\partial x}}\left({\frac {\partial f}{\partial y}}\right)={\frac {\partial }{\partial y}}\left({\frac {\partial f}{\partial x}}\right)}
これは次のようにも書ける。
f
y
x
=
f
x
y
{\displaystyle f_{yx}=f_{xy}\,}
つまり、 f の二階微分がすべて連続な領域 D で、 f のヘッセ行列は、対称行列 である。
f の傾き (ベクトルの意味での一階導関数)∇f がある点 x で0のとき、f は x において臨界点 あるいは停留点 を持つと言う。x におけるヘッセ行列の行列式 は x における判別式 あるいはヘッシアンと呼ばれ、その値が0であるような x を f の退化臨界点 または非モース臨界点 という。ヘッシアンが 0 でない臨界点は非退化 であると言い、また、f のモース臨界点 と呼ぶ。
ヘッセ行列はモース理論 で重要な役割を果たす。理由は、臨界点でのヘッセ行列の核 (kernel) と固有値 が、臨界点(の種類)を分類するからである。
以下の判定法が非退化臨界点に対して適用できる。ヘッセ行列が
x において正定値 対称行列 であるとき、f は x において極小 である。
x において負定値 対称行列であるとき、f は x において極大 である。
x において正負両方の固有値 を持つとき、x は f の鞍点 である(これは x が退化する場合にも正しい)。
それ以外の場合には(この判定法だけでは)不確定である。特に、ヘッセ行列が半正定値や半負定値であるときにはこの判定法では何も言えていない。ただし、モース理論 の観点からはもう少し述べることができる。
この判定法が何を言っているかという点だけでいえば、一変数または二変数の場合は簡単である。一変数の場合にはヘッセ行列は唯一つの二階導関数しか持たず、その二階導関数が x で正ならば x は極小で、負ならば x は極大であり、ゼロならば何もいえない。二変数の場合には、判別式は固有値の積になるから、判別式が使えて、判別式の値が正ならば(固有値がともに正またはともに負となるから)極値 を持ち、負ならば二つの固有値が異なる符号を持つから鞍点となる。判別式がゼロのところは不確定である。
凸 開集合 O ⊆ R n 上で2階の偏導関数 が存在する実数値関数 f の凸性 はヘッセ行列で判定できる。以下の2条件は同値である[ 2] 。
関数 f は O 上で凸。
任意の点 x ∈ O でヘッセ行列 ∇2 f (x ) は半正定値 である。
また、任意の点 x ∈ O でヘッセ行列 ∇2 f (x ) が正定値 であることは関数 f が O 上で狭義凸関数 であるための十分条件を与える。
ある種の制限つき最適化問題の判定に境界つきヘッセ行列 (bordered Hessian) が利用される。与えられた関数 f (x 1 , x 2 , ..., x n ) に
g
(
x
1
,
x
2
,
…
,
x
n
)
=
c
{\displaystyle g(x_{1},x_{2},\dots ,x_{n})=c}
のような制約関数を付け加えて得られる境界つきヘッセ行列とは
H
(
f
,
g
)
=
[
0
∂
g
∂
x
1
∂
g
∂
x
2
⋯
∂
g
∂
x
n
∂
g
∂
x
1
∂
2
f
∂
x
1
2
∂
2
f
∂
x
1
∂
x
2
⋯
∂
2
f
∂
x
1
∂
x
n
∂
g
∂
x
2
∂
2
f
∂
x
2
∂
x
1
∂
2
f
∂
x
2
2
⋯
∂
2
f
∂
x
2
∂
x
n
⋮
⋮
⋮
⋱
⋮
∂
g
∂
x
n
∂
2
f
∂
x
n
∂
x
1
∂
2
f
∂
x
n
∂
x
2
⋯
∂
2
f
∂
x
n
2
]
{\displaystyle 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 x_{2}^{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}}}
のことである。もし、制約関数が m 本あるのならば、左上のかどに m × m のゼロ行列ブロックをおいて、上から m 本の境界行、左から m 本の境界列を並べる。
z が第一成分がゼロでなく、それ以外の成分がゼロとなるベクトルならば z'Hz = 0 となるから、境界つきヘッシアンは(正または負の)定値対称行列になれず、上記判定法の正定値や負定値という規約はここでは通用しない。
ここでの極値判定法は、境界つきヘッセ行列の n − m 小行列のある集合の行列式の符号制限からなる[ 3] 。直観的には、m 本の制約条件によって、最適化問題を自由変数 が n − m 個の場合に簡約化したと考えるのである。例えば、x 1 + x 2 + x 3 = 1 なる制限条件下における f (x 1 , x 2 , x 3 ) の最大化問題は、制約条件無しの f (x 1 , x 2 , 1 − x 1 − x 2 ) の最大化問題に帰着させることができる。
f が(スカラー値でなく)ベクトル値関数であるとき、つまりスカラー値関数のベクトルとして
f
=
(
f
1
,
f
2
,
…
,
f
n
)
{\displaystyle f=(f_{1},f_{2},\dots ,f_{n})}
のように表されるとき、二階導関数の配列を行列の形に書くことはできず、階数 3 のテンソル として捉えることができる。
(
M
,
g
)
{\displaystyle (M,g)}
をリーマン多様体 とし、
∇
{\displaystyle \nabla }
をそのレビ・チビタ接続 とする。
f
:
M
→
R
{\displaystyle f\colon M\to \mathbb {R} }
を滑らかな関数 とする。すると、ヘッセテンソル
Hess
(
f
)
∈
Γ
(
T
∗
M
⊗
T
∗
M
)
{\displaystyle \displaystyle {\mbox{Hess}}(f)\in \Gamma (T^{*}M\otimes T^{*}M)}
を
Hess
(
f
)
:=
∇
∇
f
=
∇
d
f
{\displaystyle {\mbox{Hess}}(f):=\nabla \nabla f=\nabla df}
により定義することができる。ここに、関数の一階共変微分は通常の微分と同じであることを活用する。局所座標
{
x
i
}
{\displaystyle \{x^{i}\}}
をとると、ヘシアンは次の式で局所的に表すことができる。
Hess
(
f
)
=
∇
i
∂
j
f
d
x
i
⊗
d
x
j
=
(
∂
2
f
∂
x
i
∂
x
j
−
Γ
i
j
k
∂
f
∂
x
k
)
d
x
i
⊗
d
x
j
.
{\displaystyle {\mbox{Hess}}(f)=\nabla _{i}\,\partial _{j}f\ dx^{i}\!\otimes \!dx^{j}=\left({\frac {\partial ^{2}f}{\partial x^{i}\partial x^{j}}}-\Gamma _{ij}^{k}{\frac {\partial f}{\partial x^{k}}}\right)dx^{i}\otimes dx^{j}.}
ここに
Γ
i
j
k
{\displaystyle \Gamma _{ij}^{k}}
は接続のクリストッフェル記号 である。ヘシアンの他の同値な形が以下で与えられる。
Hess
(
f
)
(
X
,
Y
)
=
⟨
∇
X
grad
f
,
Y
⟩
,
{\displaystyle {\mbox{Hess}}(f)(X,Y)=\langle \nabla _{X}{\mbox{grad}}f,Y\rangle ,}
Hess
(
f
)
(
X
,
Y
)
=
X
(
Y
f
)
−
d
f
(
∇
X
Y
)
.
{\displaystyle {\mbox{Hess}}(f)(X,Y)=X(Yf)-df(\nabla _{X}Y).}
^ Binmore, Ken ; Davies, Joan (2007). Calculus Concepts and Methods . Cambridge University Press. p. 190 . ISBN 9780521775410 . OCLC 717598615
^ Rockafellar, R. Tyrrell; Wets, Roger J. -B. (1998). Variational analysis . Grundlehren der Mathematischen Wissenschaften. 317 . Springer-Verlag. ISBN 3-540-62772-3 . MR 1491362 . Zbl 0888.49001 . https://books.google.co.jp/books?id=w-NdOE5fD8AC . "Theorem 2.14 (higer-dimensional derivative tests) "
^ Magnus, J.R. and H. Neudecker: "Matrix Differential Calculus with Applications in Statistics and Econometrics", page 136. Wiley, 1988