Neural-Networks
為什麼我們在變分自動編碼器中使用高斯分佈?
我仍然不明白為什麼我們強制變分自動編碼器(VAE)的隱藏表示的分佈遵循多元正態分佈。為什麼是這個特定的分佈而不是另一個?
這可能與另一個問題有關:為什麼神經網絡中的權重分佈遵循****高斯分佈?僅僅是應用中心極限定理告訴你很多獨立的輸入會產生很多獨立的誤差,而觀察到的權重就是這些多個反向傳播信號的結果……?
正態分佈並不是 VAE 中用於潛在變量的唯一分佈。也有使用 von Mises-Fisher 分佈的作品(Hypershperical VAEs [1]),還有使用高斯混合的 VAE,這對於無監督 [2] 和半監督 [3] 任務很有用。
正態分佈有許多很好的特性,例如對變分損失中 KL 散度的分析評估,而且我們可以使用重新參數化技巧來進行有效的梯度計算(然而,原始的 VAE 論文 [4] 命名了許多其他適用的分佈)。此外,VAE 的明顯優勢之一是它們允許通過在潛在空間中採樣來生成新樣本——如果它遵循高斯分佈,這很容易。最後,正如@shimao 所說,潛變量的分佈並不重要,因為使用非線性解碼器可以模擬任意複雜的觀察分佈。這很方便。
至於第二個問題,我同意@shimao 的回答。
[4]:Kingma, DP 和 Welling, M., 2013。自動編碼變分貝葉斯。arXiv 預印本 arXiv:1312.6114。