Machine-Learning

高斯 VAE 的優化是否合適?

  • October 26, 2018

在變分自動編碼器 (VAE) 中,給定一些數據 $ x $ 和潛變量 $ t $ 預先分配 $ p(t) = \mathcal{N}(t \mid 0, I) $ ,編碼器旨在學習一個分佈 $ q_{\phi}(t) $ 近似於真實的後驗 $ p(t \mid x) $ 解碼器旨在學習分佈 $ p_\theta(x\mid t) $ 近似於真實的基礎分佈 $ p^*(x\mid t) $ .

然後聯合訓練這些模型以最大化目標 $ L(\phi, \theta) $ ,這是訓練集的對數似然的下界:

$$ L(\varphi, \theta) = \sum_i \mathbb{E}{q\varphi} \log \frac{p_\theta(x_i\mid t) p(t)}{q_\varphi(t)} \leq \sum_i \log \int p_\theta(x_i\mid t)p(t) , dt $$

根據 Kingma 和 Welling 的原始論文 ( https://arxiv.org/pdf/1312.6114.pdf ) 中的 C.2 節,當我們建模時 $ p_{\theta}(x|t) $ 作為高斯族,解碼器應該輸出均值 $ \mu(t) $ 和(對角線)協方差 $ \sigma^2(t) I $ 為高斯分佈。

我的問題是:這個優化問題不是不適定的(就像 GMM 中的最大似然訓練一樣)?如果解碼器可以為訓練集中的單個圖像生成完美的重建(即 $ \mu(t_i)=x_i $ ) 那麼就可以設置相應的方差 $ \sigma^2(t_i) $ 任意接近零的值,因此無論其餘訓練示例發生什麼情況,可能性都會變為無窮大。

我知道大多數高斯 VAE 實現都有一個簡化的解碼器,它只輸出平均值,替換術語 $ \mathbb{E}{q\varphi} \log p_\theta (x_i\mid t) $ 通過原始圖像和重建之間的平方誤差(相當於將協方差設置為始終為單位矩陣)。這是因為原始公式的不適定性嗎?

我與人共同撰寫了一篇關於這個確切問題的論文:

https://papers.nips.cc/paper/7642-leveraging-the-exact-likelihood-of-deep-latent-variable-models

我們表明,正如您所想的,最大似然對於高斯輸出 VAE 是不適定的。事情很像 GMM。一種解決方案是將協方差網絡的特徵值約束為大於某個閾值。

一個有趣的說法是,對於離散數據,問題是適定的。這可能解釋了為什麼 VAE 通常在離散數據集(如二進制 MNIST)上進行基準測試。

我們在論文的第 2.1 節中展示了所有這些結果。

本文也進行了類似的調查:

http://www.jmlr.org/papers/volume19/17-704/17-704.pdf

他們表明(定理 5)VAE 目標是無界的。這意味著,一般來說,即使有 KL 項也不能使目標適切。

引用自:https://stats.stackexchange.com/questions/373858

comments powered by Disqus