Skip to content
字数
1344 字
阅读时间
6 分钟

CH02 - 深度学习

章节目标

  • 了解可以使用深度学习建模的不同类型的非结构化数据。
  • 定义深度神经网络,并理解它如何用于建模复杂数据集。
  • 构建多层感知器来预测图像内容。
  • 通过使用卷积层、dropout 和批归一化层来提高模型的性能。

基本定义

深度学习是一类机器学习算法,它使用多个堆叠的处理单元层,从未结构化数据中学习高级表示。

2-1 深度学习的数据

数据类型具体说明
结构化数据许多机器学习算法要求其作为输入,为表格形式,按特征列排列描述观测。如用包含年龄、收入、上月网站访问量等特征的结构化表格,训练逻辑回归、随机森林或XGBoost模型,预测用户是否订阅在线服务(二元响应变量),模型学习特征交互影响响应
非结构化数据指并非天然按特征列排列的数据,像图像、音频、文本等。图像有空间结构、音频/文本有时间结构、视频有时空结构,但因无特征列形式,视为非结构化

CH03 - 变分自动编码器

CH08 - 扩散模型

章节目标

  • 学习定义扩散模型的基本原理和组成部分。
  • 了解正向过程如何向训练图像集添加噪声。
  • 理解重参数化技巧及其重要性。
  • 探究正向扩散调度的不同形式。
  • 理解反向扩散过程,以及它与正向加噪过程的关联。
  • 探究用于参数化反向扩散过程的U-Net架构。
  • 使用Keras构建自己的去噪扩散模型(DDM),以生成花朵图像。
  • 从模型中采样生成新的花朵图像。
  • 探究扩散步数对图像质量的影响,并在潜在空间中对两幅图像进行插值。

过去十年,扩散模型生成对抗网络(GANs) 是图像生成领域 最具影响力、最核心的生成建模技术(二者代表了生成模型的两大技术路线:扩散模型基于 “逐步去噪”,GANs 基于 “对抗博弈”)。

去噪扩散模型(Denoising Diffusion Models, DDM)

核心思想:“从噪声到图像的逐步去噪”
  • 目标:生成一张看起来“真实”的图片,就像是从我们的训练数据集中挑选出来的一样。

  • 方法:训练一个深度学习模型。

  • 模型的任务:模型的任务不是一步到位直接生成图片,而是“去噪”(denoise)。具体来说,是把一张轻微加了噪声的图片,恢复到稍微干净一点的状态。这个“一小步”是关键。

  • 生成过程:既然模型会“去噪”,那么如果我们从一张纯粹的、完全随机的噪声图片(就像老式电视机没信号时的雪花点)开始,然后反复、迭代地使用这个去噪模型,每一步都去掉一点点噪声,理论上,我们最终就能“雕琢”出一张清晰、有意义的图片。

隐含过程

  • 前向过程 (Forward Process / Noising): 这是“准备训练数据”的过程。我们拿到一张干净的训练图片(比如一朵花),然后人为地、逐步地对它添加噪声,一步又一步,直到它完全变成一张没有意义的噪声图。这个过程是固定的、无需学习的,就像是为我们的雕塑家提供“从半成品到原材料”的参照。

  • 反向过程 (Backward Process / Denoising): 这就是我们真正要训练模型去学习的过程。模型需要学会如何“撤销”前向过程中的一小步加噪操作。一旦模型学会了如何走好这“一小步”,它就能从纯噪声出发,一步步反向走回来,最终生成一张清晰的图片。

DDM区别于生成对抗网络(GAN)的对抗性训练和变分自编码器(VAE)的潜在空间建模。它直接学习一个​​确定性的去噪过程序列​​,通常训练更稳定,生成的样本多样性和质量都非常高。

数据集与预处理 (The Flowers Dataset & Preprocessing)

Oxford 102 Flower dataset是一个经典的数据集,包含102个不同类别的花卉,共8000多张图片。类别多样,形态各异,很适合用于图像生成任务的练习和评估。

下载数据集

bash
bash scripts/download_kaggle_data.sh nunenuh pytorch-challange-flower-dataset

贡献者

文件历史

Written with