1、生成式对抗网络GAN非监督学习及GAN 非监督学习:训练集没有标注,学习的结果是数据的隐含规律,表现形式可以使数据按相似性分组、数据的分布、数据分量间的关联规则,最主要的是探讨非监督学习中的聚类问题。GAN 是Ian Goodfellow在2014年的经典之作,在许多地方作为非监督深度学习的代表作给予推广。GAN解决了非监督学习中的著名问题:给定一批样本,训练一个系统,能够生成生成(generate)类似的新样本。生成方法通过观测数据学习样本与标签的联合概率分布P(X,Y),训练好的模型能够生成符合样本分布的新数据,它可以用于有监督学习和无监督学习。判别方法由数据直接学习决策函数f(X)或者条
2、件概率分布P(Y|X)作为预测的模型,即判别模型。生成方法和判别方法深度信念网络(DBN)是由一组受限玻尔兹曼机(RBMs)堆叠而成的深度生成式网络,它的核心部分是贪婪的、逐层学习的算法,这种算法可以最优化深度置信网络的权重。以无监督方式预训练的生成式模型(DBN)可以提供良好的初始点,然后通过有监督的反向传播算法微调权值早期深层生成模型由生成器和判别器组成,生成器生成满足目标分布映射关系的新样本,判别器用来区别实际数据分布和生成器产生的数据分布。生成模型生成式对抗网络GAN深度信念网络包括可见神经元和隐形神经元。可见单元用于接受输入,隐单元用于提取特征。通过训练神经元之间的权重,不仅可以用来
3、识别特征、分类数据,还可以让整个神经网络按照最大概率来生成训练数据。深度信念网络连接是无向的数据向量训练过程如下:1.利用输入样本数据生成第一个RBM,得到其特征。2.利用1得到的特征生成第二个RBM,得到特征的特征。3.依此循环,可以得到多个限制玻尔兹曼机。4.把得到的多个限制玻尔兹曼机堆叠起来,构成一个DBN。以MNIST数据集的数字识别和生成为例,其输入是28*28的图片,输出是0到9的数字,如下图所示。在经过前述的贪婪堆叠训练后,再加一层标签层(09数字)进行训练。然后再利用Wake-Sleep算法进行调优。深度信念网络案例Wake 阶段自底向上训练,学习特征和向上的权重产生每一层的抽
4、象表示,并将特征以参数权重的形式固定在神经元结点上,同时使用梯度下降更新下行权重;Sleep阶段是自顶向下训练,是一个生成过程,通过顶层表示和下行权重,生成底层的状态,同时修改层间向上的权重。在模型训练完成后,如果对最顶上的两层进行随机的吉布斯采样,然后再逐渐从顶到底,就可以生成数字09中的一个图像。来源:https:/ Encoder形式Reference:https:/en.wikipedia.org/wiki/AutoencoderReference:http:/speech.ee.ntu.edu.tw/tlkagk/缺点:多样性差通过控制输入向量,生成不同的类别的图像变分自编码变分自编
5、码器器(Variational Autoencoders,VAE)增加限制,防止方差变成增加限制,防止方差变成0,从而从而VAE演变为演变为AE缺点:缺点:评价标准是基于像素比较,生成图像质量偏差评价标准是基于像素比较,生成图像质量偏差Reference:http:/ 对抗网络:使用两个网络互相竞争,称之为对抗式对抗式(adversarial)结构GAN生成过程演示NNGeneratorv1Discri-minatorv1Real images:NNGeneratorv2Discri-minatorv2NNGeneratorv3Discri-minatorv3Reference:http:/s
6、peech.ee.ntu.edu.tw/tlkagk/通过优化目标,调节概率生成模型的参数,使生成的概率分布和真实数据分布尽量接近。样本的数据分布存在于神经网络的模型参数中,没有显示的表达式。生成式对抗网络-如何定义损失GAN损失函数 这个Loss其实就是交叉熵。对于判别器D,它的任务是最小化-L(G,D),即 如果采用零和博弈,生成器G的目标是最小化L(G,D),而实际操作发现零和博弈训练效果并不好,G的目标一般采用最小化 一般来说,更新D时,G是固定的;更新G时,D是固定的。或黑色大点虚线P(X)是真实的数据分布 A.Pg和Pdata 相似,D是部分精确的分类器绿线G(z)是通过生成模型产
7、生的数据分布(输入是均匀分布变量z,输出是绿色的线)B.D被训练以区分样本和数据,并收敛到蓝色的小点虚线D(X)代表判别函数C.在更新g之后,d的梯度引导g(Z)流向更有可能被归类为数据的区域。较低的水平线是z采样的区域,在这种情况下,上面的水平线是X域的一部分。向上箭头显示映射x=g(Z)如何将非均匀分布的pg强加于转换后的样本上。g在高密度区域收缩,在pg低密度区域扩展。D.产生的绿色分布和真实数据分布已经完全重合。这时,判别函数对所有的数据(无论真实的还是生成的数据),输出都是一样的值,已经不能正确进行分类。G成功学习到了数据分布,这样就达到了GAN的训练和学习目的。Pg =Pdata
8、,判别器无法区分这两个分布,此时D(X)=1/2生成式对抗网络-训练方法GAN缺点在原始GAN存在生成器loss梯度消失问题面临优化目标荒谬、梯度不稳定、对多样性与准确性惩罚不平衡导致缺乏多样性原始GAN问题的根源可以归结为两点:等价优化的距离衡量(JS散度、KL散度)不合理,生成器随机初始化后的生成分布很难与真实分布完全重叠。生成式对抗网络-衍生模型 DCGAN把有监督学习的CNN与无监督学习的GAN整合到一起提出了Deep Convolutional Generative Adversarial Networks-DCGANs,是生成器和判别器分别学到对输入图像层次化的表示。贡献:1.从大量的无标记数据(图像、语音)学习到有用的特征,利用无标记数据初始化DCGANs的生成器和判别器的参数,再用于有监督场景.2.稳定训练DCGANs深度卷积对抗生成网络深度卷积对抗生成网络(DCGAN)2015年的DCGAN把类似的理念应用到人脸图像上。通过对编码(输入的随机向量)进行代数运算,控制生成人脸图像的属性。