10: 深入探索

本课程从底层组件:VAE、unet、调度器和分词器,构建了一个完整的 Diffusers 流水线。手动将它们组合在一起,使您能够完全自定义推理过程的各个方面。

我们还讨论了最近一周发布的三篇重要新论文,这些论文将推理性能提高了 10 倍以上,并允许仅通过描述新图片应显示的内容来“编辑”任何照片。

在课程的后半部分,Jeremy 开始“从零开始”实现 Stable Diffusion。他介绍了将在课程期间由学生创建的“miniai”库,并讨论了代码的组织和简化。课程讨论了 Python 数据模型、张量和随机数生成。Jeremy 介绍了 Wickman-Hill 随机数生成算法,并比较了自定义和 PyTorch 内置随机数生成器的性能。课程最后使用张量创建了一个线性分类器。

讨论的概念

  • 论文
    • 用于扩散模型快速采样的渐进式蒸馏
    • 关于引导扩散模型的蒸馏
    • Imagic
  • 对输入文本进行分词
  • 用于嵌入的 CLIP 编码器
  • 用于确定噪声的调度器
  • 组织和简化代码
  • 负面提示与回调
  • Python 中的迭代器与生成器
  • 自定义矩阵类
  • 特殊方法 (Dunder 方法)
  • Python 数据模型
  • 张量
  • 伪随机数生成
    • Wickman-Hill 算法
    • 深度学习中的随机状态
  • 使用张量的线性分类器

视频

课程资源