条件变分⾃编码器(CVAE )及相关论⽂ELBO 推导
推导⽤到的概率公式:
证明:
由于 ,所以。
,所以VAE 的缺点
VAE是⼀种⽆监督模型,只能⽣成与输⼊类似的数据,有研究者提出能够⽣成不同的数据,⽐如,输⼊⼀张黄⽪肤⼈脸,可以⽣成类似的⽩⽪肤⼈脸或者⿊⽪肤⼈脸,这种情况下VAE就做不到了,故有研究⼈员提出了CVAE,这个C就是附加的条件,可以利⽤附加的条件⽣成更有多样性的数据。
CVAE
CVAE是⼀个系列,CVAE的模型不⽌⼀个,其他模型以后再慢慢补充。CVAE的推导⽅法与VAE的类似,不了解VAE的可以看我之前的博客
P (A ,B ∣C )=P (A ∣B ,C )P (B ∣C )
P (A ∣B )=P (B )P (A ,B )
P (A ,B ∣C )=P (C )P (A ,B ,C )
P (A ,B ,C )=P (A ∣B ,C )P (B ∣C )P (C )P (A ,B ∣C )=P (A ∣B ,C )P (B ∣C )
CVAE的模型图如下图所⽰:
在下⾯的推导中,是附加信息,是输⼊数据,是隐变量,
在(2)式中,。
相应的⽹络结构如下图所⽰:
与CVAE 相关的论⽂:
[1]Modeling Event Background for If-Then Commonn Reasoning Using Context-awareVariational Autoencoder.
[2]Learning Discour-level Diversity for Neural Dialog Models using Conditional Variational Autoencoders.
[3]Learning Structured Output Reprentation using Deep Conditional Generative Models.
论⽂中的推导:
c x z logp (x ∣c )=θ==≥log p (x ,z ∣c )dz ∫z θlog dz
∫z q (z ∣x ,c )φq (z ∣x ,c )p (x ,z ∣c )
φθlogE []q (z ∣x ,c )φq (z ∣x ,c )φp (x ,z ∣c )
θE [log ]q (z ∣x ,c )φq (z ∣x ,c )φp (x ,z ∣c )
θ(1)
ELBO ===E [log ]
q (z ∣x ,c )φq (z ∣x ,c )φp (x ,z ∣c )
θE [log ]
q (z ∣x ,c )φq (z ∣x ,c )φp (x ∣z ,c )p (z ∣c )苏武牧羊翻译>ment
θθE [logp (x ∣z ,c )]−KL [q (z ∣x ,c )∣∣p (z ∣c )]q (z ∣x ,c )φθφθ(2)
p (z ∣c )是z 的先验,q (z ∣x ,c )是z 的后验θφELBO
概率图模型如上图所⽰,虚线是推理⽹络,实线是⽣成⽹络,ba event(输⼊数据),target(输出数据),是隐变量,分别表⽰event的背景信息和inference dimensions.
第⼀项是重构误差,也就是⽣成⽹络,包括,
后⾯两项是KL项,也就是编码⽹络,包括,因此总共有5个神经⽹络来拟合上⾯提到的概率分布。两个识别⽹络是⽤来近似真实的后验分布的,所以VAE和CVAE都是近似推断⽽不是精确推断,。
注:上⾯的推导结果和分析与论⽂中有差异。
瑜珈教练培训
x 是y 是z 和z c ′c logp (y ∣x )=θ==≥ELBO ====log p (y ,z ,z ∣x )dzdz ∬θc ′c ′
枫叶英语
log dzdz ∬q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′p (y ,z ,z ∣x )q (z ∣x ,z ,y )q (z ∣x ,y )
θc ′φc ′φc ′c ′
logE []
q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′p (y ,z ,z ∣x )
θc ′E [log ]
q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′p (y ,z ,z ∣x )
θc ′E [log ]
q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′p (y ,z ,z ∣x )
θc ′E [log ]q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′p (y ∣z ,z x )p (z ∣z ,x )p (z ∣x )
θc ′θc ′θc ′E [logp (y ∣z ,z x )]+E [log ]
q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′θc ′q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′p (z ∣z ,x )p (z ∣x )
θc ′θc ′E [logp (y ∣z ,z x )]
q (z ∣x ,z ,y )q (z ∣x ,y )φc ′φc ′
θc ′−q (z ∣x ,z ,y )KL [q (z ∣x ,y )∣∣p (z ∣x )]dz
∫z φc ′φc ′θc ′−q (z ∣x ,y )KL [q (z ∣x ,z ,y )∣∣p (z ∣z ,x )]dz ∫z c ′φc ′φc ′θc ′c ′p (y ∣z ,z ,x ),⽤神经⽹络来拟合θc ′两个先验⽹络p (z ∣x )和p (z ∣z ,x ),两个识别⽹络q (z ∣x ,z ,y )和q (z ∣x ,y )θc ′θc ′φc ′φc ′p (z ∣x ,z ,y )和p (z ∣x ,y )θc ′θc ′patrick swayze
概率图模型如上图所⽰,虚线是推理⽹络,实线是⽣成⽹络,是对话中的第条语句,是前条语句,也就是上下⽂,是语⾔的⼀些特征,⽐如整个对话表达的动作⾏为,是隐变量。
前两项是重构误差,也就是⽣成⽹络,包括和,分别⽤来⽣成,第三项是KL项,也就是编码⽹络,包括先验⽹络和后验⽹络,总共有4个⽹络来拟合上⾯的概率分布。x k c k −1y z logp (x ∣c )=θ==≥ELBO ===log p (x ,z ,y ∣c )dzdy ∬θlog dzdy
∬q (z ∣c ,x ,y )φp (x ,z ,y ∣c )q (z ∣c ,x ,y )
θφlogE []
垃圾邮件英语
q (z ∣c ,x ,y )φq (z ∣c ,x ,y )φp (x ,z ,y ∣c )
美容学校θE [log ]
q (z ∣c ,x ,y )φq (z ∣c ,x ,y )φp (x ,z ,y ∣c )
θE [log ]q (z ∣c ,x ,y )φq (z ∣c ,x ,y )φp (x ,z ,y ∣c )
privileged
θE [log ]
q (z ∣c ,x ,y )φq (z ∣c ,x ,y )φp (x ∣c ,z ,y )p (y ∣c ,z )p (z ∣c )
θθθE [logp (x ∣c ,z ,y )]
q (z ∣c ,x ,y )φθ+E [logp (y ∣c ,z )]
威胁英语
snazq (z ∣c ,x ,y )φθ−KL [q (z ∣c ,x ,y )∣∣p (z ∣c )]
φθlogp (x ∣c ,z ,y )θlogp (y ∣c ,z )θx 和y p (z ∣c )θq (z ∣c ,x ,y )φ