Kullback-Leibler divergence
形式:
性质:
非负
P=Q时,D[P||Q]=0
不对称性:D(P||Q)≠D(Q||P)
自信息:符合分布 P 的某一事件 x 出现,传达这条信息所需的最少信息长度为自信息,表达为
熵:从分布 P 中随机抽选一个事件,传达这条信息所需的最优平均信息长度为香农熵,表达为
交叉熵:用分布 P 的最佳信息传递方式来传达分布 Q 中随机抽选的一个事件,所需的平均信息长度为交叉熵,表达为
KL 散度:用分布 P 的最佳信息传递方式来传达分布 Q,比用分布 Q 自己的最佳信息传递方式来传达分布 Q,平均多耗费的信息长度为 KL 散度,表达为 D_p(Q) 或 D_KL(Q||P),KL 散度衡量了两个分布之间的差异。
KL散度的前一项是选择项,它会对两个分布的差异性进行选择
当一个分布很复杂,如上图的P(Z),我们用一个简单的分布如高斯分布Q(Z)去拟合的时候,我们更愿意把Q放在前面,这样至少能拟合P中的一部分。
VAE推导:可以看出,从原始的基于最大化数据分布的直观理解进行推导(第一行)和直接写出ELBO(最后一行)的结果是一样的(第七行)。但直接写成ELBO的形式,在优化上并不直观,但写成第七行的形式,通过设计encoder和decoder网络,可以比较直接地进行优化。VAE可以说是一个variational inference和deep learning一个非常巧妙的结合。除了VAE,我印象里理论和实践结合的比较好的就是LDA了。