を確率分布
に従う(一変数または多変数の)確率変数であるとする。
について、
を
から変換された確率変数の列であるとする。ここで関数
は逆変換可能である必要がある:すなわち、逆関数
が存在する。最終的な出力
はモデル化したい分布を表す。
ここで、
の対数尤度は以下の様に表される(対数尤度の導出参照):

対数尤度を効率的に計算するためには、関数
は次の性質を満たす必要がある:
- 逆変換が容易である。
- ヤコビ行列式を計算しやすい。
実際には、関数
はディープニューラルネットワークを使用してモデル化され、対象となる分布からのデータサンプルの負の対数尤度を最小化するように訓練される。これらの手法は通常、逆行列式とヤコビ行列式の両方の計算でニューラルネットワークの順方向演算のみが必要になるように設計される。このような手法の例として、NICE[2]、 RealNVP[3] 、およびGlow[4]がある。
変数
及び
について、
であるとする。
確率密度の変数変換公式より、
の従う確率分布は以下のように書ける:

ここで、
は
のヤコビ行列の行列式である。
逆関数定理により

恒等式
により(
は正則行列)、次が導ける:

したがって、対数尤度は次のようになる。

一般に、上記の式は全ての
及び
に適用される 。
は
から非再帰的な項を引いたものに等しいので、数学的帰納法より以下が示せる。
