深度生成模型:
VAE 、GAN 【懂个思想】
任务:根据观测到的样本学习参数化模型,近似未知分布。
功能:概率密度估计和生成样本(采样)
优势:深度神经网络可以近似任意函数
密度估计
引入隐变量,变成(x,z) ,z的边缘分布【假设标准高斯】和(x|z)【重点】的条件分布。为了建模含有隐变量的分布,要用EM算法进行密度估计,条件(x|z) 和近似后验(z|x)。vae思想=分布复杂,用神经网络建模。
GAN思想:从简单分布中采样z,利用深度神经网络:z——x 生成g(x)接近p(x)
VAE
自编码器:x 经过编码f 、解码g 生成g(f(x)),希望靠近自己。
(其实是为了(f z = Wx)学习低维特征、以及有特征之后怎么建数据g)
引入变分密度函数q(x) ——最大化logP(X)——max 下界ELBO——EM算法可得,q(z)最优为p(z|x),用统计推断求。
-
𝑞(𝒛; 𝜙) 的目标是近似后验分布𝑝(𝒛|𝒙; 𝜃),推断网络 。
设置:假设q是对角化高斯分布,网络结构是全连接或者卷积。
方法:基于变分法近似推断。目标是最小化下面式子的KL散度。也就是最大化ELBO
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-REYntwoc-1622821840909)(C:\Users\朱朱\AppData\Roaming\Typora\typora-user-images\image-20210603225801106.png)]
-
神经网络来估计概率分布𝑝(𝒙|𝒛; 𝜃),称为生成网络.
也是最大化ELBO
.这样,编码器变成一个变分推断网络,而解码器变成一个将隐变量映射到观测变量的生成网络.
综合最大化:ELBO
第一项采样计算,与phi无关了,可以用再参数化或者梯度估计来解决。第二项直接计算。
再参数化:
假设𝑞(𝒛|𝒙; 𝜙) 为正态分布𝑁(𝝁𝐼 , 𝝈2𝑰),其中{𝝁𝐼 , 𝜎𝐼 } 是推断网络𝑓𝐼 (𝒙; 𝜙) 的输
出,依赖于参数𝜙,我们可以通过下面方式来再参数化:
【其实就是指定分布参数作为变量吧】其中𝜖 ∼ 𝒩(0, 𝑰).这样𝒛 和参数𝜙 的关系从采样关系变为确定性关系,使得𝒛 ∼ 𝑞(𝒛|𝒙; 𝜙) 的随机性独立于参数𝜙,从而可以求𝒛 关于𝜙 的导数.
训练:
训练的loss 两种表示如下:
【解释:引用课件】【我没懂!!!!】优化函数变为三项:第一项:重构平均值,尽量接近样本;第二项:
【书上更详细】再参数化之后,可以用梯度下降法学习参数。loss如下,其中的KL散度对应后两项,可看作正则化项。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZBhvuoqf-1622821840912)(C:\Users\朱朱\AppData\Roaming\Typora\typora-user-images\image-20210603231630590.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SmqiCI1i-1622821840914)(C:\Users\朱朱\AppData\Roaming\Typora\typora-user-images\image-20210603232224919.png)]
总结:
变分自编码器是一个非常典型的深度生成模型,利用神经网络的拟合能力来有效地解决含隐变量的概率模型中后验分布难以估计的问题。
VAE本质是自编码机。实现方法是概率生成模型。模块为encoder和decoder两个模块,通过随机高斯初始化,最小化KL散度,用梯度求解。为了学出独立的维度变量,有beta-VAE的做法,beta越大,变量越独立。实际中生成的数据是更平滑的(相对于GAN来说)。
GAN:生成对抗网络
用采样模拟均值
针对不收敛、梯度消失、有一系列改进。
总结:“生成对抗网络[Goodfellow et al., 2014] 是一个具有开创意义的深度生成模
型,突破了以往的概率模型必须通过最大似然估计来学习参数的限制.然而,生
成对抗网络的训练通常比较困难.DCGAN[Radford et al., 2016] 是一个生成对
抗网络的成功实现,可以生成十分逼真的自然图像.[Yu et al., 2017] 进一步在文
本生成任务上结合生成对抗网络和强化学习来建立文本生成模型.对抗生成网
络的训练不稳定问题的一种有效解决方法是W-GAN[Arjovsky et al., 2017],通
过用Wasserstein 距离替代JS 散度来进行训练.虽然深度生成模型取得了巨大的成功,但是作为一种无监督模型,其主要的缺点是缺乏有效的客观评价,很难客观衡量不同模型之间的优劣.”