SlideShare a Scribd company logo
Learning Latent Space Energy-Based Prior Model [2] の解説
正田 備也 @ Rikkyo University
2022 年 7 月 15 日
1 Model
xi は画像やテキストなどのインスタンス、zi ∈ RM
は潜在確率変数で、 xi の低次元空間での表現とする。
以下のような確率モデルを考える。
pθ(xi, zi) = pα(zi)pβ(xi|zi) (1)
α は事前分布 pα(zi) のパラメータ、β は観測データ xi を生成する確率分布 pβ(xi|zi) のパラメータである。θ
は (α, β) のことで、α と β をまとめて θ と書いているだけである。
この論文では、事前分布として isotropic Gaussian などの単純な分布を使うのではなく、EBM (energy-based
model) を使って事前分布の “表現力” を上げようとしている。事前分布は以下のように定式化される。
pα(z) =
1
Z(α)
exp(fα(z))p0(z) (2)
p0(z) は isotropic Gaussian など単純な分布で、それを exp(fα(z)) によって “exponential tilting” している。
Z(α) は規格化定数なので Z(α) =
∫
exp(fα(z))p0(z)dz を満たす。
式 (2) の z の関数 fα(z) は MLP として実装され、α はこの MLP の重みおよびバイアスを表す。
観測データを生成する確率分布 pβ(x|z) は、入力を z とするニューラルネットワーク gβ(z) を使って実装さ
れる。モデリングしたい観測データの種類に応じて、転置畳み込みや RNN などを使う。β はこのニューラル
ネットワークのパラメータを表す。そして、この gβ(z) の出力を使って、インスタンス x は以下のようにモデ
リングされる。
x = gβ(z) + ϵ (3)
ϵ は、例えば画像の場合なら、画素数を D として ϵ ∼ N(0, σ2
ID) とモデリングする。すると、観測データ x
を x ∼ N(gβ(z), σ2
ID) とモデリングしていることになる。
周辺分布は
pθ(xi) =
∫
pα(zi)pβ(xi|zi)dzi (4)
事後分布は
pθ(xi|zi) =
pθ(xi, zi)
pθ(xi)
=
pα(zi)pβ(xi|zi)
pθ(xi)
(5)
1
2 Maximum Likelihood Estimation Learning Gradient
データセットの対数周辺尤度は、以下のように表される。
L(θ) =
N
∑
i=1
log pθ(xi) (6)
この対数周辺尤度を最大化することによって、パラメータ θ = (α, β) を推定する。この最大化に必要な勾配は
∇θ log pθ(x) だが、これは、以下のように書き直すことができる。
∇θ log pθ(x) = Epθ(z|x)[∇θ log pθ(x, z)] (7)
このように書き直せることを示すために、以下の等式を使う。x ∼ pθ(x) を任意の確率分布とすると、
Epθ(x)[∇θ log pθ(x)] = 0 (8)
この等式が成り立つことは、次のように証明できる。
Epθ(x)[∇θ log pθ(x)] =
∫
(
∇θ log pθ(x)
)
pθ(x)dx (期待値の定義)
=
∫ (∇θpθ(x)
pθ(x)
)
pθ(x)dx (対数関数の微分)
=
∫
∇θpθ(x)dx (分母と分子でキャンセル)
= ∇θ
∫
pθ(x)dx (積分と微分の順序交換)
= ∇θ1 (密度関数の積分は 1 に等しい)
= 0 (定数の微分は 0) (9)
では、等式 (7) を証明する。
Epθ(z|x)[∇θ log pθ(x, z)] = Epθ(z|x)[∇θ log pθ(z|x)pθ(x)]
= Epθ(z|x)[∇θ log pθ(z|x)] + Epθ(z|x)[∇θ log pθ(x)]
= 0 + Epθ(z|x)[∇θ log pθ(x)] (式 (8) より)
= ∇θ log pθ(x) (pθ(x) は z に非依存)
(10)
等式 (7) は、以下のように証明することもできる。まず、Jensen の不等式より
log pθ(x) = log
∫
pθ(x, z)dz = log
∫
q(z)
pθ(x, z)
q(z)
dz ≥
∫
q(z) log
pθ(x, z)
q(z)
dz (11)
この不等式は、q(z) = pθ(z|x) のとき等号で成立する(EM アルゴリズムに関連する議論)
。つまり、
log pθ(x) =
∫
pθ(z|x) log
pθ(x, z)
pθ(z|x)
dz = Epθ(z|x)[log pθ(x, z)] − Epθ(z|x)[log pθ(z|x)] (12)
よって、
∇θ log pθ(x) = ∇θEpθ(z|x)[log pθ(x, z)] − ∇θEpθ(z|x)[log pθ(z|x)]
= Epθ(z|x)[∇θ log pθ(x, z)] − Epθ(z|x)[∇θ log pθ(z|x)] (積分と微分の順序交換)
= Epθ(z|x)[∇θ log pθ(x, z)] − 0 (式 (8) より)
= Epθ(z|x)[∇θ log pθ(x, z)] (13)
2
3 Maximum Likelihood Estimation Learning Gradient for α
θ は、α と β とをまとめて書いただけの記号だった。
まず α に関する勾配を考える。
∇α log pθ(x) = Epθ(z|x)[∇α log pθ(x, z)]
= Epθ(z|x)[∇α log pα(z)] + Epθ(z|x)[∇α log pβ(x|z)]
= Epθ(z|x)[∇α log pα(z)] (pβ(x|z) は α に非依存) (14)
ここで、∇α log pα(z) は、次のように書き換えられる。
∇α log pα(z) = ∇αfα(z) − Epα(z)[∇αfα(z)] (15)
というのも、まず
∇α log pα(z) = ∇α log
(
1
Z(α)
exp(fα(z))p0(z)
)
= ∇αfα(z) + ∇α log p0(z) − ∇α log Z(α)
= ∇αfα(z) − ∇α log Z(α) (p0(z) は α に非依存) (16)
と書き換えられ、さらに ∇α log Z(α) について
0 = Epα(z)[∇α log pα(z)] (式 (8) より)
= Epα(z)[∇αfα(z) − ∇α log Z(α)] (式 (16) より)
= Epα(z)[∇αfα(z)] − ∇α log Z(α) (Z(α) は z に非依存) (17)
より
∇α log Z(α) = Epα(z)[∇αfα(z)] (18)
という等式が成り立つことが言えるので、式 (16) と組み合わせて、式 (15) と書き換えられることが分かる。
したがって、式 (14) は、次のように書き換えられる。
∇α log pθ(x) = Epθ(z|x)[∇α log pα(z)]
= Epθ(z|x)[∇αfα(z) − Epα(z)[∇αfα(z)]]
= Epθ(z|x)[∇αfα(z)] − Epθ(z|x)
[
Epα(z)[∇αfα(z)]
]
= Epθ(z|x)[∇αfα(z)] − Epα(z)[∇αfα(z)] (19)
式 (19) の期待値は、pθ(z|x) および pα(z) からサンプルを得ることで、近似計算する。このサンプリングには、
ランジュバン・モンテカルロ [1] を、次のように利用する。s をステップ幅とし、例えば K = 60 などとして
z0 ∼ π0(z)
zk+1 = zk + s∇zk
log pα(zk) +
√
2sϵk+1 , ϵk+1 ∼ N(0, IM ) for k = 0, . . . , K − 1 (20)
π0(z) は initial distribution で、標準正規分布などを使う。ここで
∇z log pα(z) = ∇z log
(
1
Z(α)
exp(fα(z))p0(z)
)
= ∇zfα(z) + ∇z log p0(z) − ∇z log Z(α)
= ∇zfα(z) + ∇z log p0(z) (21)
例えば p0(z) =
∏M
m=1
1
√
2πσ0
exp(−
z2
m
2σ2
0
) とする場合は ∇z log pα(z) = ∇zfα(z) − z/σ2
0 となる。σ0 ≫ 0 と
考えるなら、∇z log pα(z) ≈ ∇zfα(z) としてよいだろう。
3
4 Maximum Likelihood Estimation Learning Gradient for β
次に β に関する勾配を考える。
∇β log pθ(x) = Epθ(z|x)[∇β log pθ(x, z)]
= Epθ(z|x)[∇β log pα(z)] + Epθ(z|x)[∇β log pβ(x|z)]
= Epθ(z|x)[∇β log pβ(x|z)] (pα(z) は β に非依存) (22)
式 (22) の ∇β log pβ(x|z) は自動微分で計算する。例えば、式 (3) のように観測データをモデリングする場合
log pβ(xi|zi) = −
1
2σ2
∥xi − gβ(z)∥2
2 (23)
となる。また、式 (22) の期待値は、pθ(z|x) からサンプルを得ることで、近似計算する。このサンプリングに
は、ランジュバン・モンテカルロ [1] を次のように利用する。s をステップ幅とし、例えば K = 40 などとして
z0 ∼ π0(z)
zk+1 = zk − s∇zk
log pθ(zk|x) +
√
2sϵk+1 , ϵk+1 ∼ N(0, IM ) for k = 0, . . . , K − 1 (24)
π0(z) は initial distribution で、標準正規分布などを使う。ここで
∇z log pθ(z|x) = ∇z log
(
pβ(x|z)pα(z)
pθ(x)
)
= ∇z log pβ(x|z) + ∇z log pα(z)
= ∇z log pβ(x|z) + ∇zfα(z) + ∇z log p0(z) (25)
式 (20) の事前分布からのサンプリングとは ∇z log pβ(x|z) の部分が異なるだけである。
5 PyTorch code の誤り
論文のコードで、ランジュバン・サンプリングを行う関数に 1.0 / z.data という部分が見られるが、これ
はおそらく、∇z log p0(z) を ∇z log z と勘違いしたためだろう。
参考文献
[1] Langevin monte carlo 法には棄却が必要か. https://ktrmnm.github.io/blog/2016/08/25/201608-lmc/.
Accessed: 2022-07-14.
[2] Bo Pang, Tian Han, Erik Nijkamp, Song-Chun Zhu, and Ying Nian Wu. Learning latent space energy-based
prior model. In Proceedings of the 34th International Conference on Neural Information Processing Systems,
NIPS’20, Red Hook, NY, USA, 2020. Curran Associates Inc.
4

More Related Content

Similar to Learning Latent Space Energy Based Prior Modelの解説

Sparse estimation tutorial 2014
Sparse estimation tutorial 2014Sparse estimation tutorial 2014
Sparse estimation tutorial 2014
Taiji Suzuki
 
mathemaical_notation
mathemaical_notationmathemaical_notation
mathemaical_notationKenta Oono
 
Topic model
Topic modelTopic model
Topic model
saireya _
 
PRML セミナー
PRML セミナーPRML セミナー
PRML セミナー
sakaguchi050403
 
050 確率と確率分布
050 確率と確率分布050 確率と確率分布
050 確率と確率分布t2tarumi
 
Moig 05
Moig 05Moig 05
Moig 05
Zenghan Liang
 
Draftall
DraftallDraftall
PRML_titech 2.3.1 - 2.3.7
PRML_titech 2.3.1 - 2.3.7PRML_titech 2.3.1 - 2.3.7
PRML_titech 2.3.1 - 2.3.7
Takafumi Sakakibara
 
第4回MachineLearningのための数学塾資料(浅川)
第4回MachineLearningのための数学塾資料(浅川)第4回MachineLearningのための数学塾資料(浅川)
第4回MachineLearningのための数学塾資料(浅川)
Shin Asakawa
 
混合ガウスモデルとEMアルゴリスム
混合ガウスモデルとEMアルゴリスム混合ガウスモデルとEMアルゴリスム
混合ガウスモデルとEMアルゴリスム
貴之 八木
 
代数的実数とCADの実装紹介
代数的実数とCADの実装紹介代数的実数とCADの実装紹介
代数的実数とCADの実装紹介
Masahiro Sakai
 
Introduction to Categorical Programming
Introduction to Categorical ProgrammingIntroduction to Categorical Programming
Introduction to Categorical Programming
Masahiro Sakai
 
生物統計特論6資料 2006 abc法(bootstrap) isseing333
生物統計特論6資料 2006 abc法(bootstrap) isseing333生物統計特論6資料 2006 abc法(bootstrap) isseing333
生物統計特論6資料 2006 abc法(bootstrap) isseing333Issei Kurahashi
 
2014年5月14日_水曜セミナー発表内容_FINAL
2014年5月14日_水曜セミナー発表内容_FINAL2014年5月14日_水曜セミナー発表内容_FINAL
2014年5月14日_水曜セミナー発表内容_FINAL
Tomoshige Nakamura
 
PRML 第14章
PRML 第14章PRML 第14章
PRML 第14章
Akira Miyazawa
 
Deep learning _linear_algebra___probablity___information
Deep learning _linear_algebra___probablity___informationDeep learning _linear_algebra___probablity___information
Deep learning _linear_algebra___probablity___information
takutori
 
introductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysisintroductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysis
Tatsuki SHIMIZU
 
Introduction to Categorical Programming (Revised)
Introduction to Categorical Programming (Revised)Introduction to Categorical Programming (Revised)
Introduction to Categorical Programming (Revised)
Masahiro Sakai
 
Bishop prml 9.3_wk77_100408-1504
Bishop prml 9.3_wk77_100408-1504Bishop prml 9.3_wk77_100408-1504
Bishop prml 9.3_wk77_100408-1504Wataru Kishimoto
 

Similar to Learning Latent Space Energy Based Prior Modelの解説 (20)

Sparse estimation tutorial 2014
Sparse estimation tutorial 2014Sparse estimation tutorial 2014
Sparse estimation tutorial 2014
 
mathemaical_notation
mathemaical_notationmathemaical_notation
mathemaical_notation
 
Topic model
Topic modelTopic model
Topic model
 
PRML セミナー
PRML セミナーPRML セミナー
PRML セミナー
 
050 確率と確率分布
050 確率と確率分布050 確率と確率分布
050 確率と確率分布
 
2013 03 25
2013 03 252013 03 25
2013 03 25
 
Moig 05
Moig 05Moig 05
Moig 05
 
Draftall
DraftallDraftall
Draftall
 
PRML_titech 2.3.1 - 2.3.7
PRML_titech 2.3.1 - 2.3.7PRML_titech 2.3.1 - 2.3.7
PRML_titech 2.3.1 - 2.3.7
 
第4回MachineLearningのための数学塾資料(浅川)
第4回MachineLearningのための数学塾資料(浅川)第4回MachineLearningのための数学塾資料(浅川)
第4回MachineLearningのための数学塾資料(浅川)
 
混合ガウスモデルとEMアルゴリスム
混合ガウスモデルとEMアルゴリスム混合ガウスモデルとEMアルゴリスム
混合ガウスモデルとEMアルゴリスム
 
代数的実数とCADの実装紹介
代数的実数とCADの実装紹介代数的実数とCADの実装紹介
代数的実数とCADの実装紹介
 
Introduction to Categorical Programming
Introduction to Categorical ProgrammingIntroduction to Categorical Programming
Introduction to Categorical Programming
 
生物統計特論6資料 2006 abc法(bootstrap) isseing333
生物統計特論6資料 2006 abc法(bootstrap) isseing333生物統計特論6資料 2006 abc法(bootstrap) isseing333
生物統計特論6資料 2006 abc法(bootstrap) isseing333
 
2014年5月14日_水曜セミナー発表内容_FINAL
2014年5月14日_水曜セミナー発表内容_FINAL2014年5月14日_水曜セミナー発表内容_FINAL
2014年5月14日_水曜セミナー発表内容_FINAL
 
PRML 第14章
PRML 第14章PRML 第14章
PRML 第14章
 
Deep learning _linear_algebra___probablity___information
Deep learning _linear_algebra___probablity___informationDeep learning _linear_algebra___probablity___information
Deep learning _linear_algebra___probablity___information
 
introductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysisintroductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysis
 
Introduction to Categorical Programming (Revised)
Introduction to Categorical Programming (Revised)Introduction to Categorical Programming (Revised)
Introduction to Categorical Programming (Revised)
 
Bishop prml 9.3_wk77_100408-1504
Bishop prml 9.3_wk77_100408-1504Bishop prml 9.3_wk77_100408-1504
Bishop prml 9.3_wk77_100408-1504
 

More from Tomonari Masada

Denoising Diffusion Probabilistic Modelsの重要な式の解説
Denoising Diffusion Probabilistic Modelsの重要な式の解説Denoising Diffusion Probabilistic Modelsの重要な式の解説
Denoising Diffusion Probabilistic Modelsの重要な式の解説
Tomonari Masada
 
Context-dependent Token-wise Variational Autoencoder for Topic Modeling
Context-dependent Token-wise Variational Autoencoder for Topic ModelingContext-dependent Token-wise Variational Autoencoder for Topic Modeling
Context-dependent Token-wise Variational Autoencoder for Topic Modeling
Tomonari Masada
 
A note on the density of Gumbel-softmax
A note on the density of Gumbel-softmaxA note on the density of Gumbel-softmax
A note on the density of Gumbel-softmax
Tomonari Masada
 
トピックモデルの基礎と応用
トピックモデルの基礎と応用トピックモデルの基礎と応用
トピックモデルの基礎と応用
Tomonari Masada
 
Expectation propagation for latent Dirichlet allocation
Expectation propagation for latent Dirichlet allocationExpectation propagation for latent Dirichlet allocation
Expectation propagation for latent Dirichlet allocation
Tomonari Masada
 
Mini-batch Variational Inference for Time-Aware Topic Modeling
Mini-batch Variational Inference for Time-Aware Topic ModelingMini-batch Variational Inference for Time-Aware Topic Modeling
Mini-batch Variational Inference for Time-Aware Topic Modeling
Tomonari Masada
 
A note on variational inference for the univariate Gaussian
A note on variational inference for the univariate GaussianA note on variational inference for the univariate Gaussian
A note on variational inference for the univariate Gaussian
Tomonari Masada
 
Document Modeling with Implicit Approximate Posterior Distributions
Document Modeling with Implicit Approximate Posterior DistributionsDocument Modeling with Implicit Approximate Posterior Distributions
Document Modeling with Implicit Approximate Posterior Distributions
Tomonari Masada
 
LDA-Based Scoring of Sequences Generated by RNN for Automatic Tanka Composition
LDA-Based Scoring of Sequences Generated by RNN for Automatic Tanka CompositionLDA-Based Scoring of Sequences Generated by RNN for Automatic Tanka Composition
LDA-Based Scoring of Sequences Generated by RNN for Automatic Tanka Composition
Tomonari Masada
 
A Note on ZINB-VAE
A Note on ZINB-VAEA Note on ZINB-VAE
A Note on ZINB-VAE
Tomonari Masada
 
A Note on Latent LSTM Allocation
A Note on Latent LSTM AllocationA Note on Latent LSTM Allocation
A Note on Latent LSTM Allocation
Tomonari Masada
 
A Note on TopicRNN
A Note on TopicRNNA Note on TopicRNN
A Note on TopicRNN
Tomonari Masada
 
Topic modeling with Poisson factorization (2)
Topic modeling with Poisson factorization (2)Topic modeling with Poisson factorization (2)
Topic modeling with Poisson factorization (2)
Tomonari Masada
 
Poisson factorization
Poisson factorizationPoisson factorization
Poisson factorization
Tomonari Masada
 
A Simple Stochastic Gradient Variational Bayes for the Correlated Topic Model
A Simple Stochastic Gradient Variational Bayes for the Correlated Topic ModelA Simple Stochastic Gradient Variational Bayes for the Correlated Topic Model
A Simple Stochastic Gradient Variational Bayes for the Correlated Topic Model
Tomonari Masada
 
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet AllocationA Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
Tomonari Masada
 
Word count in Husserliana Volumes 1 to 28
Word count in Husserliana Volumes 1 to 28Word count in Husserliana Volumes 1 to 28
Word count in Husserliana Volumes 1 to 28
Tomonari Masada
 
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet AllocationA Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
Tomonari Masada
 
FDSE2015
FDSE2015FDSE2015
FDSE2015
Tomonari Masada
 
A derivation of the sampling formulas for An Entity-Topic Model for Entity Li...
A derivation of the sampling formulas for An Entity-Topic Model for Entity Li...A derivation of the sampling formulas for An Entity-Topic Model for Entity Li...
A derivation of the sampling formulas for An Entity-Topic Model for Entity Li...
Tomonari Masada
 

More from Tomonari Masada (20)

Denoising Diffusion Probabilistic Modelsの重要な式の解説
Denoising Diffusion Probabilistic Modelsの重要な式の解説Denoising Diffusion Probabilistic Modelsの重要な式の解説
Denoising Diffusion Probabilistic Modelsの重要な式の解説
 
Context-dependent Token-wise Variational Autoencoder for Topic Modeling
Context-dependent Token-wise Variational Autoencoder for Topic ModelingContext-dependent Token-wise Variational Autoencoder for Topic Modeling
Context-dependent Token-wise Variational Autoencoder for Topic Modeling
 
A note on the density of Gumbel-softmax
A note on the density of Gumbel-softmaxA note on the density of Gumbel-softmax
A note on the density of Gumbel-softmax
 
トピックモデルの基礎と応用
トピックモデルの基礎と応用トピックモデルの基礎と応用
トピックモデルの基礎と応用
 
Expectation propagation for latent Dirichlet allocation
Expectation propagation for latent Dirichlet allocationExpectation propagation for latent Dirichlet allocation
Expectation propagation for latent Dirichlet allocation
 
Mini-batch Variational Inference for Time-Aware Topic Modeling
Mini-batch Variational Inference for Time-Aware Topic ModelingMini-batch Variational Inference for Time-Aware Topic Modeling
Mini-batch Variational Inference for Time-Aware Topic Modeling
 
A note on variational inference for the univariate Gaussian
A note on variational inference for the univariate GaussianA note on variational inference for the univariate Gaussian
A note on variational inference for the univariate Gaussian
 
Document Modeling with Implicit Approximate Posterior Distributions
Document Modeling with Implicit Approximate Posterior DistributionsDocument Modeling with Implicit Approximate Posterior Distributions
Document Modeling with Implicit Approximate Posterior Distributions
 
LDA-Based Scoring of Sequences Generated by RNN for Automatic Tanka Composition
LDA-Based Scoring of Sequences Generated by RNN for Automatic Tanka CompositionLDA-Based Scoring of Sequences Generated by RNN for Automatic Tanka Composition
LDA-Based Scoring of Sequences Generated by RNN for Automatic Tanka Composition
 
A Note on ZINB-VAE
A Note on ZINB-VAEA Note on ZINB-VAE
A Note on ZINB-VAE
 
A Note on Latent LSTM Allocation
A Note on Latent LSTM AllocationA Note on Latent LSTM Allocation
A Note on Latent LSTM Allocation
 
A Note on TopicRNN
A Note on TopicRNNA Note on TopicRNN
A Note on TopicRNN
 
Topic modeling with Poisson factorization (2)
Topic modeling with Poisson factorization (2)Topic modeling with Poisson factorization (2)
Topic modeling with Poisson factorization (2)
 
Poisson factorization
Poisson factorizationPoisson factorization
Poisson factorization
 
A Simple Stochastic Gradient Variational Bayes for the Correlated Topic Model
A Simple Stochastic Gradient Variational Bayes for the Correlated Topic ModelA Simple Stochastic Gradient Variational Bayes for the Correlated Topic Model
A Simple Stochastic Gradient Variational Bayes for the Correlated Topic Model
 
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet AllocationA Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
 
Word count in Husserliana Volumes 1 to 28
Word count in Husserliana Volumes 1 to 28Word count in Husserliana Volumes 1 to 28
Word count in Husserliana Volumes 1 to 28
 
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet AllocationA Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
A Simple Stochastic Gradient Variational Bayes for Latent Dirichlet Allocation
 
FDSE2015
FDSE2015FDSE2015
FDSE2015
 
A derivation of the sampling formulas for An Entity-Topic Model for Entity Li...
A derivation of the sampling formulas for An Entity-Topic Model for Entity Li...A derivation of the sampling formulas for An Entity-Topic Model for Entity Li...
A derivation of the sampling formulas for An Entity-Topic Model for Entity Li...
 

Learning Latent Space Energy Based Prior Modelの解説

  • 1. Learning Latent Space Energy-Based Prior Model [2] の解説 正田 備也 @ Rikkyo University 2022 年 7 月 15 日 1 Model xi は画像やテキストなどのインスタンス、zi ∈ RM は潜在確率変数で、 xi の低次元空間での表現とする。 以下のような確率モデルを考える。 pθ(xi, zi) = pα(zi)pβ(xi|zi) (1) α は事前分布 pα(zi) のパラメータ、β は観測データ xi を生成する確率分布 pβ(xi|zi) のパラメータである。θ は (α, β) のことで、α と β をまとめて θ と書いているだけである。 この論文では、事前分布として isotropic Gaussian などの単純な分布を使うのではなく、EBM (energy-based model) を使って事前分布の “表現力” を上げようとしている。事前分布は以下のように定式化される。 pα(z) = 1 Z(α) exp(fα(z))p0(z) (2) p0(z) は isotropic Gaussian など単純な分布で、それを exp(fα(z)) によって “exponential tilting” している。 Z(α) は規格化定数なので Z(α) = ∫ exp(fα(z))p0(z)dz を満たす。 式 (2) の z の関数 fα(z) は MLP として実装され、α はこの MLP の重みおよびバイアスを表す。 観測データを生成する確率分布 pβ(x|z) は、入力を z とするニューラルネットワーク gβ(z) を使って実装さ れる。モデリングしたい観測データの種類に応じて、転置畳み込みや RNN などを使う。β はこのニューラル ネットワークのパラメータを表す。そして、この gβ(z) の出力を使って、インスタンス x は以下のようにモデ リングされる。 x = gβ(z) + ϵ (3) ϵ は、例えば画像の場合なら、画素数を D として ϵ ∼ N(0, σ2 ID) とモデリングする。すると、観測データ x を x ∼ N(gβ(z), σ2 ID) とモデリングしていることになる。 周辺分布は pθ(xi) = ∫ pα(zi)pβ(xi|zi)dzi (4) 事後分布は pθ(xi|zi) = pθ(xi, zi) pθ(xi) = pα(zi)pβ(xi|zi) pθ(xi) (5) 1
  • 2. 2 Maximum Likelihood Estimation Learning Gradient データセットの対数周辺尤度は、以下のように表される。 L(θ) = N ∑ i=1 log pθ(xi) (6) この対数周辺尤度を最大化することによって、パラメータ θ = (α, β) を推定する。この最大化に必要な勾配は ∇θ log pθ(x) だが、これは、以下のように書き直すことができる。 ∇θ log pθ(x) = Epθ(z|x)[∇θ log pθ(x, z)] (7) このように書き直せることを示すために、以下の等式を使う。x ∼ pθ(x) を任意の確率分布とすると、 Epθ(x)[∇θ log pθ(x)] = 0 (8) この等式が成り立つことは、次のように証明できる。 Epθ(x)[∇θ log pθ(x)] = ∫ ( ∇θ log pθ(x) ) pθ(x)dx (期待値の定義) = ∫ (∇θpθ(x) pθ(x) ) pθ(x)dx (対数関数の微分) = ∫ ∇θpθ(x)dx (分母と分子でキャンセル) = ∇θ ∫ pθ(x)dx (積分と微分の順序交換) = ∇θ1 (密度関数の積分は 1 に等しい) = 0 (定数の微分は 0) (9) では、等式 (7) を証明する。 Epθ(z|x)[∇θ log pθ(x, z)] = Epθ(z|x)[∇θ log pθ(z|x)pθ(x)] = Epθ(z|x)[∇θ log pθ(z|x)] + Epθ(z|x)[∇θ log pθ(x)] = 0 + Epθ(z|x)[∇θ log pθ(x)] (式 (8) より) = ∇θ log pθ(x) (pθ(x) は z に非依存) (10) 等式 (7) は、以下のように証明することもできる。まず、Jensen の不等式より log pθ(x) = log ∫ pθ(x, z)dz = log ∫ q(z) pθ(x, z) q(z) dz ≥ ∫ q(z) log pθ(x, z) q(z) dz (11) この不等式は、q(z) = pθ(z|x) のとき等号で成立する(EM アルゴリズムに関連する議論) 。つまり、 log pθ(x) = ∫ pθ(z|x) log pθ(x, z) pθ(z|x) dz = Epθ(z|x)[log pθ(x, z)] − Epθ(z|x)[log pθ(z|x)] (12) よって、 ∇θ log pθ(x) = ∇θEpθ(z|x)[log pθ(x, z)] − ∇θEpθ(z|x)[log pθ(z|x)] = Epθ(z|x)[∇θ log pθ(x, z)] − Epθ(z|x)[∇θ log pθ(z|x)] (積分と微分の順序交換) = Epθ(z|x)[∇θ log pθ(x, z)] − 0 (式 (8) より) = Epθ(z|x)[∇θ log pθ(x, z)] (13) 2
  • 3. 3 Maximum Likelihood Estimation Learning Gradient for α θ は、α と β とをまとめて書いただけの記号だった。 まず α に関する勾配を考える。 ∇α log pθ(x) = Epθ(z|x)[∇α log pθ(x, z)] = Epθ(z|x)[∇α log pα(z)] + Epθ(z|x)[∇α log pβ(x|z)] = Epθ(z|x)[∇α log pα(z)] (pβ(x|z) は α に非依存) (14) ここで、∇α log pα(z) は、次のように書き換えられる。 ∇α log pα(z) = ∇αfα(z) − Epα(z)[∇αfα(z)] (15) というのも、まず ∇α log pα(z) = ∇α log ( 1 Z(α) exp(fα(z))p0(z) ) = ∇αfα(z) + ∇α log p0(z) − ∇α log Z(α) = ∇αfα(z) − ∇α log Z(α) (p0(z) は α に非依存) (16) と書き換えられ、さらに ∇α log Z(α) について 0 = Epα(z)[∇α log pα(z)] (式 (8) より) = Epα(z)[∇αfα(z) − ∇α log Z(α)] (式 (16) より) = Epα(z)[∇αfα(z)] − ∇α log Z(α) (Z(α) は z に非依存) (17) より ∇α log Z(α) = Epα(z)[∇αfα(z)] (18) という等式が成り立つことが言えるので、式 (16) と組み合わせて、式 (15) と書き換えられることが分かる。 したがって、式 (14) は、次のように書き換えられる。 ∇α log pθ(x) = Epθ(z|x)[∇α log pα(z)] = Epθ(z|x)[∇αfα(z) − Epα(z)[∇αfα(z)]] = Epθ(z|x)[∇αfα(z)] − Epθ(z|x) [ Epα(z)[∇αfα(z)] ] = Epθ(z|x)[∇αfα(z)] − Epα(z)[∇αfα(z)] (19) 式 (19) の期待値は、pθ(z|x) および pα(z) からサンプルを得ることで、近似計算する。このサンプリングには、 ランジュバン・モンテカルロ [1] を、次のように利用する。s をステップ幅とし、例えば K = 60 などとして z0 ∼ π0(z) zk+1 = zk + s∇zk log pα(zk) + √ 2sϵk+1 , ϵk+1 ∼ N(0, IM ) for k = 0, . . . , K − 1 (20) π0(z) は initial distribution で、標準正規分布などを使う。ここで ∇z log pα(z) = ∇z log ( 1 Z(α) exp(fα(z))p0(z) ) = ∇zfα(z) + ∇z log p0(z) − ∇z log Z(α) = ∇zfα(z) + ∇z log p0(z) (21) 例えば p0(z) = ∏M m=1 1 √ 2πσ0 exp(− z2 m 2σ2 0 ) とする場合は ∇z log pα(z) = ∇zfα(z) − z/σ2 0 となる。σ0 ≫ 0 と 考えるなら、∇z log pα(z) ≈ ∇zfα(z) としてよいだろう。 3
  • 4. 4 Maximum Likelihood Estimation Learning Gradient for β 次に β に関する勾配を考える。 ∇β log pθ(x) = Epθ(z|x)[∇β log pθ(x, z)] = Epθ(z|x)[∇β log pα(z)] + Epθ(z|x)[∇β log pβ(x|z)] = Epθ(z|x)[∇β log pβ(x|z)] (pα(z) は β に非依存) (22) 式 (22) の ∇β log pβ(x|z) は自動微分で計算する。例えば、式 (3) のように観測データをモデリングする場合 log pβ(xi|zi) = − 1 2σ2 ∥xi − gβ(z)∥2 2 (23) となる。また、式 (22) の期待値は、pθ(z|x) からサンプルを得ることで、近似計算する。このサンプリングに は、ランジュバン・モンテカルロ [1] を次のように利用する。s をステップ幅とし、例えば K = 40 などとして z0 ∼ π0(z) zk+1 = zk − s∇zk log pθ(zk|x) + √ 2sϵk+1 , ϵk+1 ∼ N(0, IM ) for k = 0, . . . , K − 1 (24) π0(z) は initial distribution で、標準正規分布などを使う。ここで ∇z log pθ(z|x) = ∇z log ( pβ(x|z)pα(z) pθ(x) ) = ∇z log pβ(x|z) + ∇z log pα(z) = ∇z log pβ(x|z) + ∇zfα(z) + ∇z log p0(z) (25) 式 (20) の事前分布からのサンプリングとは ∇z log pβ(x|z) の部分が異なるだけである。 5 PyTorch code の誤り 論文のコードで、ランジュバン・サンプリングを行う関数に 1.0 / z.data という部分が見られるが、これ はおそらく、∇z log p0(z) を ∇z log z と勘違いしたためだろう。 参考文献 [1] Langevin monte carlo 法には棄却が必要か. https://ktrmnm.github.io/blog/2016/08/25/201608-lmc/. Accessed: 2022-07-14. [2] Bo Pang, Tian Han, Erik Nijkamp, Song-Chun Zhu, and Ying Nian Wu. Learning latent space energy-based prior model. In Proceedings of the 34th International Conference on Neural Information Processing Systems, NIPS’20, Red Hook, NY, USA, 2020. Curran Associates Inc. 4