エネルギーに基づくモデル
概要1 2 3
エネルギーベースモデルとは、データのエネルギーenergyという関数を定義し、エネルギーが低いデータほどもっともらしいデータ(=確率が高いデータ)とみなして確率密度関数を推定する方法論だ。エネルギーベースモデルは、データの分布を従来の既知の分布に仮定せず、データの分布を直接モデル化する方法論で、複雑なデータを扱う際に有用だ。
ビルドアップ
確率モデルでデータを扱う伝統的なアプローチは、データがある既知の分布(例: 正規分布、ベルヌーイ分布、ポアソン分布など)に従うと仮定し、その分布のパラメータを推定することだ。例えば、データが正規分布に従うと仮定すると、平均と分散を推定することでデータの全体の分布をモデル化できる。この方法は統計的によく確立されており、数学的な解釈も可能で、簡単なデータに対して効果的に機能する。
しかし、このようなアプローチには明らかな限界がある。実際に我々が直面するデータは高次元で複雑であり、正規分布のような単純な形で表現するのは難しい。さらに、複雑な構造を持つデータでは、分布の形を事前に明確に知ることが難しいため、「正規分布に従う」という仮定そのものが非現実的な場合もある。このように、分布を事前に仮定してそこにデータを当てはめる方式は、データの本質的な構造を反映できないリスクがある。
例えば、人の顔写真を考えてみよう。人の顔写真は無数のピクセルで構成されており、各ピクセルの色はからまでの整数で表される。このとき各ピクセルの色は独立していないし、特定のパターンを持っている。例えば、目、鼻、口などの位置と形が互いに関連している。このようなデータは、上で説明した通りのシンプルな確率密度関数で表現するのが困難だ。特定の確率分布を仮定し、そのパラメータを推定することは、実際にデータがそのような分布に従うという強い推測もあろうが、形がうまく合わなくても最大限当てはめるという意図もある。そのため、複雑なデータを扱う際には、データの分布を仮定するのではなく、データの分布を直接モデル化することがより良い方法になるかもしれない。このような方法の一つがエネルギーベースモデルenergy-based modelである。
エネルギーベースモデルのアイデアはその名前からも分かるように物理学から由来している。温度がである系systemのエネルギーがである確率は次の通りで、これをボルツマン分布という。
はボルツマン定数である。ここで「系がどうこう」「温度がどうこう」という内容は重要ではない。重要なのはエネルギーが低い状態ほど確率が高いということだ。実際に物質が安定しているというのはエネルギーが低い状態を意味する。これをデータに適用すると、エネルギーが低いデータほど抽出される確率が高い、すなわちもっともらしいデータということになる。したがってエネルギーベースモデルはデータの確率密度関数を次のように定義する。
定義
データが従う分布の確率密度関数を次のように仮定するのをエネルギーベースモデルenergy-based modelという。
ここでをエネルギー関数energy functionという。分母のzは
説明
が確率密度関数になるためには積分した値がでなければならないので、のような正規化定数を掛けてやる。をパーティション関数partition functionとも呼ぶ。指数関数部分を簡単に次のように示すこともある。
ここでが正規化されていないため、このようなモデルを非正規化モデルnon-normalized modelsという。
エネルギー関数をどのように定義するかによっての表現力が変わり、複雑なデータも十分にうまくモデル化できる。また、複雑に見えても結果的には指数関数の形なので、情報理論の文脈でも適合するということができる。情報とは確率のマイナスログで定義されるので、次を得る。
第二項はに対して定数であるため、エネルギーベースモデルでデータのエネルギーとはデータの情報と同じである。