Appearance
生成モデルの数理 4 —— スコアモデルと擬似最尤法
前章までのボルツマンマシンやエネルギーベースモデルの学習において、最大の障壁となっていたのは「確率の和を1にするための規格化定数(分配関数 )」の計算でした。 本章では、この厄介な の計算を回避するための2つの強力なアプローチ、「スコアマッチング」と「擬似最尤法」の数理を解き明かします。未知のデータ分布の微分を「部分積分の魔法」で消し去る展開は、現代の拡散モデルへと直接繋がる極めて重要な概念です。
1. 分配関数の呪縛と勾配法
モデルの分布 を用いて、データ分布とのKL情報量を最小化する(最尤推定を行う)ための勾配法を振り返ります。 エネルギー関数 を持つボルツマンマシン の対数尤度をパラメータ で微分すると、次のような更新式が現れます。
第1項はデータから直接計算できますが、第2項にはモデルの期待値(すべての状態 についての和)が含まれており、ここに分配関数 を計算するのと同じ指数関数的な計算コストが潜んでいます。
2. エネルギーからスコアモデルへ
この分配関数 を計算せずに済む方法はないのでしょうか。 ここで、確率分布 そのものではなく、空間に対する「確率の対数の傾き(勾配)」に注目します。この対数確率の空間微分を「スコア」と呼びます。
ボルツマンマシンの定義式をこれに代入して微分を計算してみましょう。
ここで驚くべきことが起こります。分配関数 は空間変数 に依存しない定数であるため、空間 で微分すると完全に消滅するのです。
つまり、「スコア(確率分布の傾き)」は、厄介な を一切計算することなく、エネルギー関数の空間微分だけで正確に求めることができます。
3. 明示的スコアマッチングとその困難
実際のデータのスコアと、モデルのスコアを一致させるように学習を行う手法を「明示的スコアマッチング」と呼びます。 目的関数 は、両者の二乗誤差のデータ分布 による期待値として定義されます。
「確率の山の高さ」を合わせるのではなく「山の斜面の傾き」を合わせれば同じ分布が復元できるという理念は素晴らしいですが、ここで大きな問題が生じます。 手元にあるのは離散的なデータ点のみであり、未知の真のデータ生成分布 の微分(真のスコア)など計算しようがないのです。
4. 暗黙的スコアマッチングと部分積分の魔法
未知の の微分を避けるため、先ほどの目的関数 を展開してみます。
第3項はパラメータ に依存しない定数なので無視できます。問題は真ん中の交差項です。対数の微分の性質 を使うと、次のように書き換えられます。
ここで「部分積分」の魔法を使います。
空間の無限遠ではデータが存在する確率 はゼロになる( で )と仮定すれば、境界項(第1項)は消滅します。 結果として、最適化すべき新しい目的関数「暗黙的スコアマッチング」が導かれます。
見事なことに、未知の の微分が跡形もなく消え去りました!残ったのはモデルのスコア と、その空間微分 だけです。これらはすべてモデル側で計算可能であり、積分は手元のデータによる「単なる平均計算」に置き換えることができます。
5. 局所的な条件付き確率 —— 擬似最尤法
の呪縛から逃れるもう一つの古典的かつ強力なアプローチが「擬似最尤法」です。 すべての変数を同時に扱う同時確率 の分配関数を計算するのは不可能ですが、ある1つの変数 以外のすべての変数 が固定されている(データとして与えられている)状況での「条件付き確率」であればどうでしょうか。
この場合の局所的な分配関数 は、単に が取り得る値について和をとるだけで済むため一瞬で計算できます。擬似最尤法では、本来の同時確率の代わりに、これらすべての局所的な条件付き確率の積を最大化します。
計算困難な全体問題に正面から挑むのではなく、「微分して定数を消し、部分積分で未知の分布を回避する(スコアモデル)」か「局所的な条件付き確率に分解する(擬似最尤法)」という数学的工夫によって壁を突破するこれらの手法は、大規模なデータから複雑な分布を学習する上で欠かせない数理的基盤となっています。