原文标题:AnIntuitive Introduction to Generative Adversarial Networks
作者:KeshavDhandhania、ArashDelijani
翻译:申利彬
校对:和中华
本文约4000字,建议阅读10分钟。
本文以图像生成问题引出GAN模型,并介绍了GAN模型的数学原理和训练过程,最后提供了丰富的GAN学习资料。
本文讨论生成对抗网络,简称GANs。在生成任务或更广泛的无监督学习中,GANs是为数不多在此领域表现较好的机器学习技术之一。特别是他们在图像生成相关任务上拥有出色表现。深度学习领域先驱Yann LeCun,称赞GAN是机器学习近十年来最好的想法。最重要的是,GAN相关核心概念很容易理解(事实上,读完本文后你就可以对它有个清晰的认识)。
我们将GANs应用在图像生成任务中,并以此来解释GANs,下面是本文的概要:
简单回顾深度学习
图像生成问题
生成任务中的关键问题
生成对抗网络
挑战
进一步阅读
总结
简单回顾深度学习
(前馈)神经网络示意图,棕色为输入层,黄色为隐藏层,红色为输出层
我们先简单介绍一下深度学习。上图是神经网络示意图,它是由神经元组成,神经元之间通过边相互连接,而且神经元按层排列,中间为隐藏层,输入层和输出层分别在左右两侧。神经元之间的连接边都有权重,每一个神经元都会根据与其连接的神经元的输入值加权求和,然后带入非线性激活函数中计算,这类激活函数有Sigmoid和ReLU。例如,第一层隐藏层神经元对来自输入层神经元的值进行加权求和,然后再应用ReLU函数。激活函数引入了非线性,它使神经网络可以模拟复杂的现象(多个线性层等价于一个线性层)。
给一个特定的输入,我们依次计算每个神经元输出的值(也称为神经元的活性)。从左到右,我们利用前层计算好的值来逐层计算,最后得到输出层的值。然后根据输出层的值和期望值(目标值)定义一个损失函数,例如,均方误差损失函数。