オムライスの備忘録

数学・統計学・機械学習・プログラミングに関することを記す

【深層学習】エネルギーベースモデル / Energy Based Model / EBM

Index

エネルギーベースモデル / Energy Based Model / EBM

データ  x\ \in\ X の生成モデルの確率分布  q_{\theta} (x) は、次のように表現したとする.

 
\begin{eqnarray}
q_{\theta} (x)\ &=&\ \displaystyle \frac{\gamma_{\theta} (x)}{Z(\theta)} \\
 \\
Z(\theta)\ &=&\ \displaystyle \int_{x'\ \in\ X}\ \gamma_{\theta} (x')\ dx'
\end{eqnarray}




また、統計力学との関連性から非正規化確率密度関数をエネルギー関数  f(x;\ \theta)\ :\ R^{d}\ \rightarrow\ R を使って  \gamma_{\theta} (x)\ =\ \exp(-\ f_{\theta} (x)) と表した確率モデルをエネルギーベースモデルとよぶ.



 
\begin{eqnarray}
q_{\theta} (x)\ &=&\ \displaystyle \frac{\exp(-\ f_{\theta} (x))}{Z(\theta)} \\
 \\
Z(\theta)\ &=&\ \displaystyle \int_{x'\ \in\ X}\ \exp(-\ f_{\theta} (x')\ dx'
\end{eqnarray}

エネルギー関数

エネルギー関数には、非負制約はない. (結局、exp で正の値になる.)

ベクトルを入力として、スカラーになる関数.

状態を入力して、エネルギー値になるようなイメージ?

分配関数

分配関数は、とりうるすべてのデータについての積分が必要であるため、一般に計算が困難.

メリット / デメリット

メリット

エネルギーベースモデルは、次元間の任意の関係をエネルギー関数内で、 自由に記述できる.

また、エネルギー関数は、確率分布としての制約がなく、自由な値を取ることができる.

デメリット

分配関数を求める必要がでてくる.

学習方法

尤度ベースモデルの考え方.

次の目的関数  L(\theta) を最大化することを考える.

 
\begin{eqnarray}
L({\theta})\ &=&\ \frac{1}{N}\ \log q_{\theta} (D) \\
 \\
 &=&\ \frac{1}{N}\ \log\ \displaystyle \prod_{i}\ q_{\theta} (x^{(i)}) \\
 &\because&\ 尤度は、各データの確率の積 \\
 \\
 &=&\ \frac{1}{N}\ \displaystyle \sum_{i}\ \log\ q_{\theta} (x^{(i)}) \\
 \\
 &=&\ \frac{1}{N}\ \displaystyle \sum_{i} \log\ \left\{ \frac{\exp(-\ f_{\theta} (x^{i}))}{Z(\theta)} \right\} \\
 &\because&\ q_{\theta}(x)\ =\ \displaystyle \frac{\exp(-\ f_{\theta} (x))}{Z(\theta)} \\
 \\
 &=&\ \frac{1}{N}\ \displaystyle \sum_{i} \left\{ \log\ \exp(-\ f_{\theta} (x^{i}))\ -\ \log\ Z(\theta) \right\} \\
 \\
 &=&\ \frac{1}{N}\ \displaystyle \sum_{i} \left\{ -\ f_{\theta} (x^{i}) \right\}\ -\ \log\ Z(\theta) \\
 \\
 &=&\ - \frac{1}{N}\ \displaystyle \sum_{i} \left\{ f_{\theta} (x^{i}) \right\}\ -\ \log\ \displaystyle \int_{x^{'}\ \in\ X} \exp (-f_{\theta} (x^{'}))\ dx^{'} \\

\end{eqnarray}



 L(\theta) を最大化するパラメータとは、



  • 第1項より、訓練データの位置のエネルギーを低くする
  • 第2項より、その他のすべての位置のエネルギーを高くする

のような条件を求められる.

MCMC

分配関数の困難を回避した上でサンプリングできる方法として、マルコフ連鎖モンテカルロ法がある.

  • マルコフ連鎖モンテカルロ

  • メリット

    • 尤度比さえ求まれば、サンプリングすることができる
    • 尤度比には分配関数は打ち消されて登場しないため、分配関数を求められない場合でも実行できる
  • 課題
    • サンプリング効率
    • 確率分布が多峰性をもつ場合、それらの峰を網羅することは難しい

スコアベースモデル

スコアを導入する.

応用

Restricted Boltzmann Machine / RBM

参考

書籍

Web サイト