【周末AI课堂】理解变分自编码器 | 机器学习你会遇到的“坑”( 八 )

我们希望保持这样的结构 , 但同时也希望对这样的结构作出限制 , 较为优雅的方式就是更改我们的Loss , 在Loss中添加惩罚项 , 使得Z的编码分布更像标准的正态分布 。 要达到这一目的 , 即编码分布越像标准正态分布 , Loss就越小 , 就可以使用KL散度(相对熵) , 计算当前分布与标准正态分布的差异 。 所以 , 我们要在度量生成图和原有图的autoencoder中添加一个约束项:

只需要利用微积分的知识 , 就可以将其化简为:

这个公式是从KL散度中直接推导而来 , 似乎并不好解释 。 但是我们可以拆成两项来直观的理解 , 关于

 

的项 , 是为了保证当

 

为1的时候 , 这一项对Loss的贡献为零 , 同时尽可能平滑;关于均值

推荐阅读