貝氏深度學習

重參數化技巧(reparameterization trick)

要用梯度下降訓練任何東西,你都得對它微分,但你要怎麼對一個隨機取樣步驟微分?重參數化技巧把「從一個依賴參數的分布抽 z」改寫成「從一個無參數的分布抽固定雜訊,再對它做確定性的變換」。隨機性被推進雜訊裡,而雜訊沒有梯度,參數如今住在一個你可以反向傳播的平滑函數中。

對一個均值為 mu、標準差為 sigma 的高斯變分分布,你把樣本寫成 mu 加上 sigma 乘以標準常態雜訊;期望值對 mu 與 sigma 的梯度便成為「在該樣本處對函數梯度求期望值」,蒙地卡羅用單一抽樣就能估計,而且其變異數遠低於分數函數或 REINFORCE 估計子。Kingma 與 Welling 讓它成為變分自編碼器的引擎,使 ELBO 能由普通的反向傳播端到端最佳化。

它是讓基於梯度的變分推論得以擴展的原因,並透過流與可重參數化的位置-尺度族而推廣,逆 CDF 或隱式重參數化則涵蓋其餘的分布。限制在於它需要一條可微、可重參數化的取樣路徑:離散潛在變數需要替代品(如 Gumbel-softmax 或直通估計子),或退回分數函數估計子,因為你無法把梯度推過一個硬性的類別抽樣。

\nabla_{\phi}\,\mathbb{E}_{q_\phi(z)}[f(z)]=\mathbb{E}_{\epsilon\sim p(\epsilon)}\big[\nabla_{\phi}\,f(\mu_\phi+\sigma_\phi\,\epsilon)\big]

路徑式梯度把導數移進對無參數雜訊的期望值內。

又称
重參數化技巧pathwise gradient