【第五章:计算机视觉-项目实战之生成对抗网络实战】1.对抗生成网络原理-(1)对抗生成网络算法基础知识:基本思想、GAN的基本架构、应用场景、标注格式
第五章:计算机视觉(Computer Vision)- 项目实战之生成对抗网络实战
第一部分:对抗生成网络原理
第一节:对抗生成网络算法基础知识:基本思想、GAN的基本架构、应用场景、标注格式
1. GAN 的基本思想
生成对抗网络(Generative Adversarial Network, GAN)由 Ian Goodfellow 于 2014 年提出,是深度学习中最具创新性的生成模型之一。它的核心思想是 通过“博弈”的方式训练生成器和判别器,让生成模型学会从噪声中生成与真实数据相似的样本。
生成器 (Generator, G):负责从随机噪声中生成尽可能逼真的数据。
判别器 (Discriminator, D):负责判断输入是“真实样本”还是“生成样本”。
二者在训练过程中不断对抗:
生成器尝试“骗过”判别器;
判别器努力识别真假。
最终,生成器能够生成“足以以假乱真”的样本。
2. GAN 的基本架构
GAN 的结构可以抽象为以下框图:
随机噪声 z → 生成器 G(z) → 生成样本↓判别器 D(x) 判别真假
真实数据 x →───────────↑
输入:随机噪声向量
z
,通常服从高斯分布或均匀分布。生成器 G:一个深度神经网络,将噪声映射为高维数据(如图像)。
判别器 D:一个二分类网络,输出输入样本为“真实”的概率。
数学形式:
GAN 的目标函数是一个 min-max 博弈:
3. GAN 的应用场景
GAN 在计算机视觉领域有广泛的应用,包括但不限于:
图像生成:如生成逼真的人脸、艺术画风图像。
图像超分辨率重建:提升图像清晰度。
图像到图像转换:如黑白照片上色、夏季转冬季、白天转夜晚。
数据增强:生成合成数据用于训练下游模型。
视频生成与编辑:如 DeepFake 技术。
医疗影像处理:生成稀缺的医学样本以辅助诊断。
4. GAN 的常见标注格式
由于 GAN 的训练不依赖标签,而是直接学习数据分布,因此 不需要传统监督学习中的类别标签。
输入数据格式:通常为图像集合(如 CelebA 人脸数据集、MNIST 手写数字集)。
输出格式:生成的图像与原始图像一致(如分辨率相同)。
对抗目标:真实数据分布 vs. 生成数据分布。
与目标检测、图像分割不同,GAN 不依赖于标注文件(如 BBox 或 Mask),而是完全基于无监督学习。
5. 总结
GAN 的核心是 生成器与判别器的博弈,训练目标是让生成样本无限接近真实分布。
GAN 架构简洁但威力巨大,推动了图像生成、风格迁移、超分辨率等一系列应用的发展。
与分类/检测任务不同,GAN 不需要复杂的标注文件,主要依赖大规模无标签数据集。
在下一节中,我们将深入探讨 GAN 的改进与优化方法,包括 DCGAN、WGAN 等,使其在实际应用中更加稳定高效。