證據下界
證據下界是變分自編碼器實際上最大化的量,因為我們真正想最大化的東西——模型賦予真實資料的機率 log p(x),稱為「證據(evidence)」——太難計算了。ELBO 是一個可處理的下限,永遠位於證據之下:把這個下限往上推,證據也會被一起往上推(至少絕不會超過它)。它還方便地拆成兩塊可讀的部分:「把資料重建得好」減去「讓潛在編碼貼近先驗」。
對任何近似後驗 q_φ(z|x),皆可證明 log p(x) 等於 ELBO 加上 KL(q_φ(z|x) || p(z|x)),其中最後一項是編碼器的近似後驗與真正(難以處理的)後驗之間的 KL 散度。由於 KL 散度恆為非負,故 log p(x) ≥ ELBO——這就是「下界」之名的由來。兩者的差距恰好就是那個 KL,因此唯有當編碼器吻合真正後驗時,這個界才是緊的。ELBO 本身等於 log p_θ(x|z) 對 q_φ(z|x) 取期望值,再減去 KL(q_φ(z|x) || p(z))。
第一項,即期望重建對數似然,把 x 編碼成一個編碼分布、取樣一個編碼、解碼,再衡量原始的 x 有多大機率——重建越忠實則此項越高。第二項 KL(q_φ(z|x) || p(z)) 是一個正則化項,把每個輸入的編碼分布朝先驗 p(z) = N(0, I) 拉近;它既為取樣整理出潛在空間,又扮演資訊瓶頸的角色(偏離先驗需付出「奈特(nat)」為單位的代價)。因此,最大化 ELBO 等於同時訓練解碼器(參數 θ)去重建,以及訓練編碼器(參數 φ)去推斷出良好、與先驗一致的編碼。
ELBO 是一個界,不是似然本身,因此拿不同模型的 ELBO 值互相比較可能誤導——即使底層模型更好,較鬆的近似後驗仍會給出較鬆的界。β-VAE 把 KL 項乘上 β > 1 以鼓勵解耦,這刻意地讓 ELBO 作為似然目標變鬆,以換取更有結構的編碼。