PaperNotes(9)-Learning deep energy model: contrastive divergence vs. Amortized MLE
Learning deep energy model: contrastive divergence vs. Amortized MLE
- abstract
- 1 Introduction
- 2 Background
- 2.1 stein variational gradient descent
- 2.2 learning energy model
- **contrastive Divergence**
abstract
受SVGD算法的啟發(fā),本文提出兩個算法用于從數(shù)據(jù)中學(xué)習(xí)深度能量模型.兩個算法分別為:SteinCD算法和SteinGAN 算法,SteinCD 算法將 CD算法和SVGD算法結(jié)合(基于兩者理論上的聯(lián)系), SteinGAN 算法通過最大似然訓(xùn)練一個附加的網(wǎng)絡(luò)訓(xùn)練負(fù)樣本. SteinCD有高似然,SteinGAN有高可視化質(zhì)量.兩者結(jié)合可以繼承兩者的優(yōu)點.
1 Introduction
EBM(energy -based models)能夠捕獲依據(jù)能量函數(shù)捕獲變量之間的依賴性,為無向圖模型,深度生成模型等提供了一個統(tǒng)一的建??蚣?
MLE(maximum likelihood estimator)用于學(xué)習(xí)EBM中的參數(shù),但是準(zhǔn)確MLE由于難以計算的歸一化常數(shù)往往無法求解.為了解決這個困境,近年提出了很多方法,例如近似的Likelihood 目標(biāo)函數(shù),或者可替代的目標(biāo)函數(shù). Contrastive divergence 是其中一種改進(jìn)方案,優(yōu)化的是一個對比目標(biāo),該對比目標(biāo)用以衡量 朝著目標(biāo)走一定步子的 能夠改進(jìn)的KL散度(兩個分布沒有搞清楚呦).
CD類的方法能夠獲得很高的測試似然,但是產(chǎn)生不了真實的數(shù)據(jù)(real-world instance圖像). 能量模型無法捕獲real-world instance 基于的相對第的流形.GAN模型能夠生成高視覺質(zhì)的樣本但沒有明確的能量目標(biāo)(使得泛化性能一般). 將GAN模型和EBM模型結(jié)合能夠融合兩種方法的優(yōu)點.
2 Background
2.1 stein variational gradient descent
SVGD 可以是一個近似采樣策略,用于近似從目標(biāo)分布p(x)p(x)p(x)中采樣(x是d 維度的一個隨機變量).初始化一些列例子{xi}i=1n\{x_i\}_{i=1}^n{xi?}i=1n?(這些例子的經(jīng)驗分布是q0(x)=∑iδ(x?xi)/nq_0(x)=\sum_{i}\delta(x-x_i)/nq0?(x)=∑i?δ(x?xi?)/n),通過下面的變換操作,使得例子朝著p(x)分布的規(guī)律靠近.
xi′←xi+??(xi),?i=1,...,nx_i'\leftarrow x_i + \epsilon \phi(x_i), \forall i=1,...,nxi′?←xi?+??(xi?),?i=1,...,n
其中?\epsilon?為步長,?(xi)\phi(x_i)?(xi?)為xix_ixi?決定的改進(jìn)方向,這個改進(jìn)方向應(yīng)該朝向KL散度下降最快的方向前進(jìn)(可以直接對W距離優(yōu)化么)
??=arg?max??∈F{KL(q0∣∣p)?KL(q[??]∣∣p)}(6.1)\phi^*=\arg \max_{\phi \in \mathcal{F}}\{KL(q_0||p) - KL(q_{[\epsilon\phi]}||p)\}\tag{6.1}??=arg?∈Fmax?{KL(q0?∣∣p)?KL(q[??]?∣∣p)}(6.1)
KL(q0∣∣p)?KL(qx′∣∣p)=∫[q0log?q0p?qx′log?qx′p]dxKL(q_0||p)-KL(q_{x'}||p)=\int [q_0\log\frac{q_0}{p} -q_{x'}\log\frac{q_{x'}}{p} ]dxKL(q0?∣∣p)?KL(qx′?∣∣p)=∫[q0?logpq0???qx′?logpqx′??]dx
原來SVGD目標(biāo)函數(shù)只有后半部分
無窮的部分會被減掉,上式子定義了一個非線性方程優(yōu)化問題.當(dāng)步長?→0\epsilon \rightarrow 0?→0時, KL散度的下降率(就用這個式子可以計算出來) 可以近似為 KL 散度的梯度(說的是哪兩個分布的KL散度?),寫作:
??=arg?max??∈F{?dd?KL(q[??]∣∣p)∣?=0}(6.2)\phi^* = \arg \max_{\phi \in \mathcal{F}}\{-\fracze8trgl8bvbq{d\epsilon} KL(q_{[\epsilon\phi]}||p)|_{\epsilon=0}\}\tag{6.2}??=arg?∈Fmax?{?d?d?KL(q[??]?∣∣p)∣?=0?}(6.2)
最優(yōu)的?\phi?記為??\phi^*??,是通過使6.1式最大化得到的最優(yōu)擾動方向.當(dāng)q0q_0q0?與ppp給定,6.1式子中的KL(q0∣∣p)KL(q_0||p)KL(q0?∣∣p)為一個與優(yōu)化無關(guān)的固定值,則需要最小化KL(q[??]∣∣p)KL(q_{[\epsilon\phi]}||p)KL(q[??]?∣∣p),則需要找到下降(負(fù)梯度)最快(max)的方向(即6.2式子所示),在 SVGD 中顯示6.2式可以表示為:
?dd?KL(q[??]∣∣p)∣?=0=Ex~q0[Tp?(x)]-\fracze8trgl8bvbq{d\epsilon} KL(q_{[\epsilon\phi]}||p)|_{\epsilon=0}=\mathbb{E}_{x\sim q_0}[\mathcal{T_p\phi(x)}]?d?d?KL(q[??]?∣∣p)∣?=0?=Ex~q0??[Tp??(x)]
Tp\mathcal{T}_pTp?為stein算子,具體作用形式為(返回標(biāo)量值函數(shù)不懂),6.2 式定義了一個discrepency:D(q0∣∣p)\mathbb{D}(q_0||p)D(q0?∣∣p)(距離的定義本身就是一個糟糕的一種情況)
SVGD探索了F\mathcal{F}F需要具備的特性:具有簡單的結(jié)構(gòu),但是依舊能保持著無限維度以包含所有有用的速度場方向.一個自然的選擇是再生核希爾伯特空間中函數(shù).在這種情況下,最優(yōu)的??\phi^*??為:
??=Ex~q0[?xlog?p(x)k(x,x′)+?xk(x,x′)]\phi^*=\mathbb{E}_{x \sim q_0}[\nabla_x\log p(x)k(x,x')+ \nabla_xk(x,x')]??=Ex~q0??[?x?logp(x)k(x,x′)+?x?k(x,x′)]
2.2 learning energy model
SVGD 是一個推斷過程,本文研究的是一個學(xué)習(xí)過程.給定一批樣本{xi}i=1n\{x_i\}_{i=1}^n{xi?}i=1n?,找到一個分布ppp,最好的近似這批樣本.
可以將p分布建模為:
p(x∣θ)=1Z(θ)exp?(f(x;θ))Z(θ)=∫xexp?(f(x;θ))dxp(x|\theta)=\frac{1}{Z(\theta)}\exp(f(x;\theta))\\ Z(\theta)=\int_x \exp (f(x;\theta))dxp(x∣θ)=Z(θ)1?exp(f(x;θ))Z(θ)=∫x?exp(f(x;θ))dx
f(x,θ)f(x,\theta)f(x,θ)為負(fù)代表能量的標(biāo)量值函數(shù), 使用MLE來估計(更新)θ\thetaθ,對最大化對數(shù)似然求導(dǎo)數(shù),可以得到參數(shù)θ\thetaθ更新的方式,但是有一個致命的缺點是該導(dǎo)數(shù)中存在歸一化常數(shù)的導(dǎo)數(shù)無法直接計算(到現(xiàn)在也沒有明白為啥這個導(dǎo)數(shù)難以計算?對參數(shù)的導(dǎo)數(shù)乘上所有樣本的和?),所以需要對涉及到的這個歸一化參數(shù)求導(dǎo)的部分進(jìn)行 近似處理 .
contrastive Divergence
https://blog.csdn.net/bbbeoy/article/details/79246340 cd 方法的原始論文的翻譯
深度學(xué)習(xí)方法:受限玻爾茲曼機RBM(四)對比散度contrastive divergence,CD:https://blog.csdn.net/xbinworld/article/details/45274289?utm_source=blogxgwz0
現(xiàn)在的主要問題是如何從KL過度到CD不是很明白,大概是說原來的吉布斯分布采樣是從隨機狀態(tài)開始的,現(xiàn)在 從采樣樣本開始,CD算法的前身應(yīng)該是吉布斯采樣訓(xùn)練RBM
stein max-min 目標(biāo)函數(shù)還是可以理解,max 是為了越接近與原始KL散度, 外層的Min就是最小化這個KL散度
看完也是一知半解,初步想法框圖,就看多變量的直接請求離差算不算是QR回歸.
總結(jié)
以上是生活随笔為你收集整理的PaperNotes(9)-Learning deep energy model: contrastive divergence vs. Amortized MLE的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据结构和算法(05)---链表(c++
- 下一篇: 随机过程1