日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

VAE 中后验坍塌问题

發布時間:2023/12/20 编程问答 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VAE 中后验坍塌问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

后驗坍塌

ELBO?

!別怪ELBO,另有起因?



后驗坍塌

在貝葉斯模型世界(如VAE,pPCA),所擔心的不是神經網絡的“梯度消失”或“梯度爆炸”,而是“后驗失效”(posterior collapse)現象。本質上,任何模型(傳統或非傳統)都要從每個新樣本“汲取信息”,更新自身。當信息無法汲取并用來更新模型,就會出現上述問題。相對比較晦澀,簡單來說就是 z的生成已經擺脫了前邊encoder的影響,然后z直接輸出一個或多個從大部分樣本總結出來的幾種模式。該模型最終只依賴于解碼器的自回歸特性,而忽略了潛在變量,這變得無信息。

一般認為是因為解碼器q(x|z)太強了,訓練時重參數操作會引入噪聲,噪聲一大,z的利用會變得很困難,所以可能模型干脆不用z了,獨立于z去進行重建,這種情況下的VAE模型并沒有什么價值:KL散度為0說明編碼器輸出的是常數向量。而我們使用VAE通常來說是看中了它無監督構建編碼向量的能力,所以要應用VAE的話還是得解決KL散度消失問題。

“后驗失效”(posterior collapse)現象?? (With the help of better explanations provided in Z-Forcing: Training Stochastic Recurrent Networks:

當后驗不坍塌時:?? (潛在變量的第d維)是從采樣得到的,其中是用神經網絡從輸入x的擬合的函數。

換句話說encoder部分,從x中提取有效的信息到中。

當后驗發生坍塌:?? 當輸入x的后驗參數的信號太弱或者噪聲太大,decoder就開始忽略從近似后驗中采樣的z。

  • 噪聲過大意味著μd和σd是不穩定的,因此采樣的z值也是不穩定的,利用z太難,這迫使解碼器忽略它們,拋棄z,直接自行重構。我所說的“忽略”是指:解碼器x^的輸出幾乎與z無關,實際上可以認為產生一些通用的輸出x^,即所有所見x的粗略代表。
  • 信號太弱: ? ,也就是說,后驗的μ和σ變得幾乎和輸入x沒有什么聯系,換句話說,μ和σ崩潰為常數值a,b。從而導致了是將一個與x不同的輸入的(常數)信號輸送給解碼器。最終這個z就沒有價值,解碼器試圖通過忽略從N(a,b)采樣的無用的z來重構x。

Z-Forcing: Training Stochastic Recurrent Networks:中描述,由于隨機梯度近似讓方差下降(variance induced by the stochastic gradient approximation),會導致后驗提供的信號太弱或噪聲太強。因此,解碼器可能學會忽略z,而僅僅依賴x的自回歸特性,使x和z相互獨立,即式2中的KL項消失。在不同的領域,如文本和圖像,經驗觀察到,當與強自回歸解碼器結合時,很難利用潛在變量。

Don’t Blame the ELBO!A Linear VAE Perspective on Posterior Collapse:中描述, VAE優化的一個主要問題是后塌陷,其中學習的變分分布接近于先驗。這降低了生成模型(encoder? ->? q(z|x))的容量,使得解碼器網絡無法利用所有潛在維度的信息內容。

?


ELBO?

?

VAE的變分推斷中,直接計算數據x的相似度邊際分布log p(x) 非常困難,但是可以用變分分布q(z|x)去估計后驗(實際上變分分布就是VAE的編碼器encoder),這就引出了VAE的目標函數ELBO

log p(x)一定是大于ELBO的,那么讓ELBO最大就是VAE的最終解了:

通常認為ELBO的使用是使得后驗坍塌的原因

一般認為這個問題的根源看似就是ELBO目標函數。

分析ELBO的兩個部分似乎有些道理:?

這兩個部分在擬合后驗和保持自身分布之間尋找平衡。于是,如果產生“后驗失效”問題,許多人會把原因歸結為DKL這部分上(模型太注重保持原有z分布,而對新來數據也不予理睬,阻止模型的參數更新)。也就是說,如果(x|z)這個生成網絡太強了,拋棄利用encoder的近似后驗的q(z|x)而直接用模型的z,在表達式上,就是直接使后面的KL term就會被壓成0,也就是先驗和近似后驗相等了,這會使得VAE模型得到一個沒有意義的近似后驗分布,從而得到一個poor latent representation z,這導致了所謂的后驗坍塌現象。

本來理論上優化ELBO是可行的,但是在實際訓練中,會發現陷入ELBO目標的局部最優的情況,也就是會得到一個退化的solution:。這個后驗不再取決于數據x得到,不再通過encoder的近似后驗q(z|x)采樣得到。坍塌時,z和x本質上independent,因此對潛在變量的后驗估計不能代表對其數據的忠實總結faithful summaries——VAE沒有學習到良好的representations。當似然p(x|z)容量非常高的時候,也就是自回歸生成器非常強的時候,這個問題尤其突出。

?

ELBO表達式中,KL散度迫使變分分布趨向于模型先驗p(z),因此,這是許多文章試圖緩解后塌陷的合理焦點。下面的這篇2019的文章假設對數邊際可能性本身經常會導致后塌陷。

?


?

!別怪ELBO,另有起因?

?

而google今年NeurIPS 2019上的一篇文章批評了上述誤解,認為“后驗失效”不是任何ELBO項造成的,而是一開始用相似度邊際分布log p(x)就造成了“后驗失效”:

所以,如果一開始找錯目標,再尋求最好的平衡也無濟于事。一廂情愿地假設單個隱變量z,再用z求邊際分布來擬合真實分布,這種做法可能是導致“后驗失效”的真正原因。

因此,一個明顯的解決方法就是增加z分布的復雜度,而不是用單一高斯分布(可以是多態先驗等等~論文討論中提到)。

?

?

?

總結

以上是生活随笔為你收集整理的VAE 中后验坍塌问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。