Coursera 上的生成对抗网络专业课程(由 deeplearning.ai 提供)
由deeplearning.ai
提供的 Coursera GAN 专业化所有课程的编程作业。
课程
Coursera 上的 GAN 专业课程包含三门课程:
课程 1:构建基本的生成对抗网络
课程 2:构建更好的生成对抗网络
课程 3:应用生成对抗网络 (GAN)
关于 GAN
生成对抗网络 (GAN) 是强大的机器学习模型,能够生成逼真的图像、视频和语音输出。
植根于博弈论,GAN 具有广泛的应用:从通过对抗对抗性攻击和匿名数据以保护隐私来提高网络安全,到生成最先进的图像、对黑白图像进行着色、提高图像分辨率、创建头像、将 2D 图像转换为 3D 等等。
随着计算能力的增强,GAN 及其功能也越来越受欢迎。 GAN 开辟了许多新的方向:从生成大量数据集用于训练机器学习模型、允许强大的无监督学习模型到产生更清晰、离散和更准确的输出。 GAN 还为对抗性学习、对抗性示例和攻击、模型鲁棒性等相关领域的研究提供了信息。
关于本专业
关于你
编程作业
课程 1:构建基本生成对抗网络 (GAN)
- 这是生成对抗网络 (GAN) 专业化的第一门课程。
第一周:GAN 简介
- 了解 GAN 及其应用,了解 GAN 基本组件背后的直觉,并使用 PyTorch 构建您自己的 GAN。
- 任务:
第 2 周:深度卷积 GAN
- 使用卷积层构建更复杂的 GAN。了解有用的激活函数、批量归一化和转置卷积,以调整您的 GAN 架构,并应用它们来构建专门用于处理图像的高级 DCGAN。
- 任务:
第 3 周:标准化的 Wasserstein GAN
- 通过学习 WGAN 等先进技术,通过 W-Loss 和对 Lipschitz 连续性的理解来缓解不稳定的训练和模式崩溃,减少由于生成器和判别器之间不平衡而导致的 GAN 失败实例。
- 任务:
- 带梯度惩罚的 Wasserstein GAN (WGAN-GP)
第 4 周:有条件且可控的 GAN
- 了解如何有效控制 GAN、修改生成图像中的特征以及构建能够从确定的类别生成示例的条件 GAN。
- 作业:
课程 2:构建更好的生成对抗网络 (GAN)
- 这是生成对抗网络 (GAN) 专业化的第二门课程。
第一周:GAN 评估
- 了解评估 GAN 的挑战,了解不同 GAN 性能指标的优缺点,并使用嵌入实现 Fréchet 起始距离 (FID) 方法来评估 GAN 的准确性。
- 任务:
第 2 周:GAN 的缺点和偏差
- 找出 GAN 与其他生成模型相比的缺点,发现这些模型的优点/缺点 - 另外,了解机器学习中偏差的许多来源、为什么它很重要,以及在 GAN 中识别偏差的方法。
- 测验:
- 任务:
- 实验室:
第 3 周:StyleGAN 和进步
- 了解 StyleGAN 如何改进以前的模型,并实现与 StyleGAN 相关的组件和技术,StyleGAN 是目前最先进、功能强大的 GAN
- 任务:
- 可选笔记本:
课程 3:应用生成对抗网络 (GAN)
- 这是生成对抗网络 (GAN) 专业化的第三门课程。
第一周:GAN 用于数据增强和隐私保护
- 探索 GAN 的应用并检查它们在数据增强、隐私和匿名方面的应用。
- 使用 GAN 生成的数据改进下游 AI 模型。
- 任务:
第 2 周:图像到图像的翻译
- 利用图像到图像的翻译框架,并确定该框架对图像以外模式的扩展、概括和应用。
- 实施 Pix2Pix(一种配对图像到图像转换 GAN),利用先进的 U-Net 生成器和 PatchGAN 鉴别器架构调整卫星图像以绘制路线(反之亦然)。
- 作业:
第 3 周:图像到图像不配对翻译
- 比较配对图像到图像转换和不配对图像到图像转换,并确定它们的关键差异如何需要不同的 GAN 架构。
- 实施 CycleGAN,一种不成对的图像到图像转换模型,将两个 GAN 合而为一,使马适应斑马(反之亦然)。
- 任务:
免责声明
我认识到人们在建立直觉、理解新概念和调试任务上花费了大量的时间。这里上传的解决方案仅供参考。如果您被困在某个地方,它们的目的是为您解除封锁。请不要按原样复制代码的任何部分(如果仔细阅读说明,编程作业相当容易)。同样,在参考测验解决方案之前,请先亲自尝试一下测验。