ヘッシアンとは、多変数関数の2階偏導関数を並べた正方行列のことです。深層学習の最適化やモデルの損失関数の曲率を解析する際に用いられ、学習の安定性や損失地形の形状を評価する重要な指標となります。
ヘッシアンとは
一言でいうと、ヘッシアンとは損失関数の曲がり具合(曲率)を詳細に表す2階微分係数の行列です。
詳しく解説
ヘッシアン(ヘッセ行列)は、多変数関数のすべての組み合わせにおける2階偏導関数を成分とする正方行列です。ディープラーニングにおける最適化プロセスでは、損失関数がどのような形状をしているかを理解するために用いられます。勾配降下法が「どちらの方向に進むべきか」の傾きを示すのに対し、ヘッシアンは「その傾きがどのように変化するか」という地形の曲率を示します。これにより、損失関数の最小値、最大値、あるいは鞍点を数学的に判別することが可能になります。しかし、ディープラーニングのモデルはパラメータ数が数百万から数千億に及ぶため、ヘッシアンを直接計算し保存することは計算量的に極めて困難という課題があります。
具体例・使われ方
深層学習における具体的な利用例として、損失地形の解析やシャープレネス(鋭さ)に基づく汎化性能の評価があります。また、ニュートン法などの二次最適化手法において、効率的なパラメータ更新を行うための逆行列の計算や近似にヘッシアンの情報が利用されます。
似た用語との違い
1階の偏導関数を並べたベクトルである「勾配」とは異なります。勾配が傾きの方向を示すのに対し、ヘッシアンはその曲率や変化率を表します。また、パラメータ数が膨大なディープラーニングでよく使われる「フィッシャー情報行列」とは、特定の条件下で近似的な関係を持つことが知られていますが、概念としては異なります。
注意点
パラメータ数が膨大になるとヘッシアンの次元数も巨大になり、メモリや計算時間の観点から直接計算することは実質的に不可能です。そのため、ヘッシアン・ベクトル積を用いた近似手法などを用いる必要がありますが、数値的な不安定さや誤解を招く解釈に注意が必要です。