基于生成对抗网络的手写字体生成文献综述
2020-04-14 17:23:33
1.1 研究目的及意义
生成对抗网络(generative adversarialnetwork,GAN)是由谷歌公司在2014年提出的一个网络模型,主要灵感来自于二人博弈中的零和博弈,是近年来复杂分布上无监督学习最具前景的方法之一。模型通过框架中两个模块:生成模型和判别模型的互相博弈学习产生相当好的输出。
MNIST(Mixed National Institute of Standards andTechnology)是一个入门级的计算机视觉数据集,数据集中都是美国中学生手写的数字。它的训练集包含6万张图片,测试集包含1万张图片,并且数字已经进行过预处理和格式化,做了大小调整并居中,图片尺寸也固定为28*28。这个数据集很小,但训练速度很快,而且收敛效果也很好,非常适合作为深度学习实战的例子去学习。
生成式对抗网络包含一个生成器(generator,G)和一个判别器(discriminator,D)。生成器以高斯噪声作为输入,其输出结果需要尽量模仿手写字体mnist数据集中的真实样本。判别器的输入则为真实样本和生成器产生的输出,其目的是将生成器的输出从真实样本中尽可能分辨出来。生成器和判别器相互对抗、不断调整参数,最终使生成器生成以假乱真的手写字体。
生成式对抗网络解决的问题是如何从训练样本中学习出新样本。在很多的情况下,我们进行深度学习时,会面临缺乏数据的情况,这时我们可以利用生成对抗网络中的生成器生成数据进行补足,比如用在半监督学习中。生成式对抗网络取得的成果有很多,目前在生成数字和生成人脸图像方面表现都非常好,是深度学习研究的一个重要思路。
GAN相比传统的深度神经网络,有以下几个优点:第一,模型只用到了反向传播,而不需要马尔科夫链;第二,训练时不需要对隐变量做推断;第三,理论上只要是可微分函数都可以用于构建D和G,因为能够与深度神经网络结合做深度生成式模型;第四,G的参数更新不是直接来自数据样本,而是使用来自D的反向传播(这也是与传统方法相比差别最大的一条)。
1.2 国内外研究现状
近些年来,随着计算能力的提高和各行业数据量的剧增,人工智能在各个领域都取得了飞速的发展。学术界普遍认为人工智能分为两个阶段:感知阶段和认知阶段。这两个阶段分别对应的算法模型为判别式模型和生成式模型。判别式模型通常用于有监督学习的分类任务和预测任务中,如图像识别、语音识别、文本预测、对话生成等;生成式模型则通过隐式地学习数据的规律,生成新的数据。生成式模型作为人工智能认知阶段的重要算法也取得了显著的发展。
生成式模型主要分为两种,一种是基于模型的生成式算法,该类生成式算法需要假设数据的分布,算法通过调整数据分布的参数拟合真实数据,然后从假设的数据分布中采样获取生成数据;另外一种生成式模型不需要假设数据的分布,生成数据直接从未假设的分布中采样得到。这两类模型从研究出发点的角度可以分为两类:人类理解数据的生成式模型和机器理解数据的生成式模型。
在基于模型的生成式算法中,典型的做法是先对数据的显式变量或者隐含变量进行分布假设,然后利用真实数据对分布的参数或包含分布的模型进行拟合或训练,最后利用学习到的分布或模型生成新的样本。这类生成式模型可以归纳为从人类理解数据的角度,涉及的主要方法有最大似然估计法、近似法、马尔科夫链方法等。基于模型的生成式算法通过对真实数据进行分布假设,模型拟合的空间受到限制,生成式模型的自由度大大降低,假设的分布与真实数据分布的匹配度决定了其效果的好坏。比如,在最大似然估计中,参数更新直接来自于数据样本,训练数据的分布很容易影响学习到的生成式模型的质量;采用近似法学习到的生成式模型由于目标函数难解,无法直接对目标函数进行逼近,一般采用逼近目标函数下界的方法,对模型间接地优化;相比较于最大似然法和近似法,马尔科夫链方法既可以用于生成式模型的训练又可以用于新样本的生成,限制马尔科夫链的原因在于计算复杂度过高,使其难以有效应用。