SoC - GANs:片上系统生成对抗网络的高能效内存管理
1. 引言
深度神经网络(DNNs)基于数学模型对信息进行人工处理,以模仿人类级别的感知能力。它被广泛应用于机器人技术、语言处理和计算机视觉等新兴领域。DNNs的使用分为两个步骤:首先是训练阶段,此阶段会调整网络参数;然后是推理阶段,会根据训练好的网络参数从测试数据中推断信息。传统上,DNNs使用监督学习进行训练,但这种技术需要大量的标记数据。而半监督和无监督学习技术因能从未标记的数据中推断信息,受到了广泛关注。
生成对抗网络(GANs)是一种利用无监督学习从原始数据集中生成逼真合成示例的有趣方法。GANs由两个神经网络模型组成:生成器和判别器。生成器的目标是从潜在空间生成无法被判别器识别的样本,而判别器的目标是准确区分样本是生成的(假的)还是来自真实数据。这两个模型一起训练,直到生成器能够生成合理的示例,因此GANs在文本到图像合成、图像分类、移动机器人和视频预测等数据生成应用中非常有用。
与DNNs相比,GANs的计算成本较高。基于深度卷积的生成对抗网络(DCGAN)有几个关键区别:传统卷积神经网络(CNNs)中的最大池化层被步幅卷积取代,用于判别器的前向计算阶段,步幅卷积根据步长跳过输出像素的计算,对应下采样过程;另一个关键操作是转置卷积(反卷积),用于生成器的前向计算阶段,该操作在输入特征图中插入零,对应上采样过程;GANs训练阶段还会使用四维卷积,它本质上是一种卷积操作,但在将一层的误差与前一层的输出卷积后不进行累加,会得到一个四维输出矩阵。在判别器层的权重更新中,此操作类似于步幅卷积,即跳过零操作;在生成器层的权重更新中,它类似于转置卷积,即插入零操作。大多数情况下,这些计算通过配备多个CPU和GPU的服务器
超级会员免费看
订阅专栏 解锁全文
1182

被折叠的 条评论
为什么被折叠?



