Kullback-Leibler divergence網絡
形式:優化
|
性質:spa
非負設計
P=Q時,D[P||Q]=03d
不對稱性:D(P||Q)≠D(Q||P)code
自信息:符合分佈 P 的某一事件 x 出現,傳達這條信息所需的最少信息長度爲自信息,表達爲orm
熵:從分佈 P 中隨機抽選一個事件,傳達這條信息所需的最優平均信息長度爲香農熵,表達爲blog
交叉熵:用分佈 P 的最佳信息傳遞方式來傳達分佈 Q 中隨機抽選的一個事件,所需的平均信息長度爲交叉熵,表達爲事件
KL 散度:用分佈 P 的最佳信息傳遞方式來傳達分佈 Q,比用分佈 Q 本身的最佳信息傳遞方式來傳達分佈 Q,平均多耗費的信息長度爲 KL 散度,表達爲 D_p(Q) 或 D_KL(Q||P),KL 散度衡量了兩個分佈之間的差別。element
KL散度的前一項是選擇項,它會對兩個分佈的差別性進行選擇
當一個分佈很複雜,如上圖的P(Z),咱們用一個簡單的分佈如高斯分佈Q(Z)去擬合的時候,咱們更願意把Q放在前面,這樣至少能擬合P中的一部分。
VAE推導:能夠看出,從原始的基於最大化數據分佈的直觀理解進行推導(第一行)和直接寫出ELBO(最後一行)的結果是同樣的(第七行)。但直接寫成ELBO的形式,在優化上並不直觀,但寫成第七行的形式,經過設計encoder和decoder網絡,能夠比較直接地進行優化。VAE能夠說是一個variational inference和deep learning一個很是巧妙的結合。除了VAE,我印象裏理論和實踐結合的比較好的就是LDA了。