Lecture 3 - Intro to Deep Learning, Part 2CS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://ml.berke...
Lecture 4 - Intro to Pretraining and AugmentationsCS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://...
00:10:00 在讲座的这一部分中,讲师讨论了图像中颜色维度和通道的概念。每个彩色像素都可以分解为三个不同的值,这意味着 RGB 图像的每个分量可以由三个矩阵表示。然后可以将这些矩阵堆叠在一起,形成一个称为张量的 3D 矩阵。讲师指出,这是理解卷积神经网络 (CNN) 的重要概念,因为常规神经网络或多层感知器由于需要将 3D 张量转换为向量而无法帮助处理大图像,从而导致大量元素的数量。
00:40:00 在本节中,演讲者讨论了以 RGB 格式表示图像的概念以及激活图如何具有 3D 结构。该过程涉及提取不同的特征并对它们进行卷积以获得 3D 输出。这种卷积运算是通用的,可以应用于任何 3D 输入,允许将卷积层堆叠在彼此之上,从而形成深度神经网络。此外,演讲者还介绍了有关感受野概念的实现细节,这不仅限于卷积神经网络。
Lecture 5 - Intro to Computer VisionCS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://ml.berkeley.ed...
Lecture 6 - Advanced Computer Vision ArchitecturesCS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://...
00:00:00 在本节中,讲师讨论了将定位添加到简单分类 CNN 以进行地标检测的过程。通过向网络添加 X 和 Y 输出,网络输出图像中特定特征的确切位置,例如动物的鼻子。然后,讲师解释了如何通过添加更多输出来为整个猫提出一个边界框来扩展该网络。讲师还探讨了网络扩展的不同想法以提出边界框,以及针对此扩展任务训练网络的过程。
00:05:00 在本节中,讲师讨论了用于对象检测的 IOU(交集)方法。该方法旨在通过计算交集面积并将其除以 Union 的面积来最大化预测边界框与真实边界框之间的重叠。讲师解释说这个值越接近1,检测效果越好。此外,讲师还谈到了在同一图像中检测多个对象的挑战,提到了使用穷举搜索或滑动窗口的基本解决方案。然而,这种方法存在重大问题,包括效率低下和需要过多的处理能力。
Lecture 7 - Object DetectionCS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://ml.berkeley.edu/decal/...
00:25:00 在本节中,讲师绘制了一个简单的输入图像示例,并解释了一种分解方法,该方法涉及查看输入图像的每个像素并使用滤波器将其投影到输出图像上。讲师指出此方法的局限性在于它可以覆盖已经写入的值。为了解决这个问题,讲师介绍了一种增量方法,涉及卷积层将输入图像下采样为低分辨率表示,然后使用 D 卷积将其上采样回其原始大小。讲师指出,这种方法是有益的,因为上采样是学习的,而不仅仅是一种经典算法,它允许更多的适应性和形状的细化。
Lecture 8 - Semantic SegmentationCS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://ml.berkeley.edu/d...
Lecture 9 - Autoencoders, VAEs, Generative ModelingCS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https:/...
关于 GAN 的讲座介绍了两个网络的概念,即鉴别器和生成器,它们在博弈论式的设置中相互竞争。生成器的输入是随机噪声,它赋予意义以生成看起来真实的图像,而鉴别器的工作是判断图像是真实的还是假的。 GAN 使用对应于负交叉熵损失的损失函数,生成器想要最小化而鉴别器想要最大化它。值函数表示生成器的性能如何,需要鉴别器通过正确分类假数据和真实数据来最大化。该讲座还涵盖了训练 GAN 的问题,以及允许生成器有更多代理权来改变的非饱和损失。
00:05:00 在本节中,讲师解释了 GAN 背后的高级概念,其中涉及两个网络 - 鉴别器和生成器 - 相互竞争。与瓶颈在中间的自动编码器不同,GAN 在生成器和鉴别器之间的中间有一些更高维的东西。生成器的输入是从多元高斯中采样的某种随机噪声向量。然后向生成器提供潜在噪声变量,并决定如何为其分配随机意义,以便生成大量输入或大量真实图像。鉴别器和生成器网络通过梯度下降联合训练,在两者之间交替,目的是愚弄另一个网络。
00:10:00 在本节中,讲师解释了 GAN 的工作原理,即通过给定真实和虚假数据的网络来训练生成器找出使图像看起来真实的模式。鉴别器是判断图像是真还是假的,随着它的学习,它开始注意到模式并更新它的判断。希望生成器通过创建在场景上下文中有意义的具有更多形状或对象的东西来学习改进自身。 GAN 的损失函数仅包含来自鉴别器的分类损失,而生成器得分则与之相反。为了训练生成器,鉴别器需要善于判断图像以向生成器提供反馈。
00:20:00 在视频的这一部分,演示者解释了 GAN 中价值函数的概念,它与传统机器学习模型中使用的损失函数相反。值函数表示生成器的性能如何,需要鉴别器通过正确分类假数据和真实数据来最大化。生成器的权重在第一步中被冻结,以便鉴别器可以在真实和虚假数据的批次上进行训练。在第二步中,鉴别器被冻结,生成器的权重被更新以生成稍微好一点的假图像。重复此过程,直到生成器生成逼真的图像,即使鉴别器也无法将其归类为假图像。
00:25:00 在本节中,演讲者讨论了条件 GAN,它提供了一种生成图像的解决方案,可以更好地控制生成的类。当前的 GAN 设置需要反复随机地喂给生成器,直到生成所需的对象或图像,但对于具有更多类的数据集,这种方法并不理想。通过将 one-hot 向量附加到随机噪声向量,这允许生成器对正在生成的类有更多的控制。 one-hot 向量对应于所需的类别,并且生成器经过训练以生成具有该特定类别的图像。
00:30:00 在讲座的这一部分,演讲者讨论了激励生成器使用条件 GAN 模型中的特定特征的想法。演讲者解释说,仅仅告诉生成器生成特定图像是不够的,因为生成器没有动机使用给定的信息。解决方案是也为鉴别器提供相同的标签,为其创建一种策略来识别生成的图像是否与其标签相对应。这迫使生成器注意标签,因为它希望避免被鉴别器检测到,从而导致输出与给定标签相匹配。还讨论了生成器和鉴别器的架构。
00:40:00 在本节中,讲师讨论了 GAN 的一些常见问题,这些问题可能会使它们难以训练。一个问题是,生成器和鉴别器之间总会有一个权衡,鉴别器试图过度拟合真实图像中的特定特征,并且没有明确的方法知道 GAN 何时完成训练。然后,讲师介绍了非饱和损失,这是对生成器目标的简单重新表述,并解决了当鉴别器将生成的图像识别为假图像时,生成器仅获得小偏导数的问题。非饱和损失最大化替代项并允许生成器有更多的代理来改变。
00:45:00 在本节中,讲师解释了 GAN 中使用的交叉熵损失背后的数学技巧。生成器的目标不是盲目地尝试最小化负交叉熵损失,而是使用二元类交叉熵损失来最大化被分类为一个的概率。这种非饱和损失提供了更大的生成器梯度,使我们能够在鉴别器刚刚关闭生成器时更快地进行训练。然而,讲师指出这是高级材料,没有测验或作业,但他们可以更多地讨论高级 GAN 训练技术。
Lecture 10 - GANsCS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://ml.berkeley.edu/decal/modern-cv t...
这个关于高级 GAN 的讲座涵盖了提高 GAN 模型的稳定性和质量的各种技术,包括双线性上采样、转置卷积、条件 GAN、StyleGAN 和 CycleGAN。本讲座还讨论了在 GAN 中使用受控随机噪声、自适应实例归一化和处理视频。为了获得更好的稳定性和结果,讲师建议在测试期间使用更大的批量大小并截断随机噪声的范围,同时警告不要过度削弱鉴别器。此外,建议从广泛分布的不同大小的潜在空间开始,以生成各种图像。最后,讲座涉及 Big Gan,它有助于生成非常大规模的 GAN。
00:00:00 在本节中,演讲者介绍了计算机视觉背景下的 GAN 主题,并讨论了计算机视觉 GAN 架构的构建。演讲者重点介绍鉴别器(分类 CNN)和生成器(由于需要对潜在矢量图像进行上采样,因此更具挑战性)。演讲者还讨论了下采样和上采样技术,包括最近邻上采样,这是一种简单的方法,会复制现有特征图上的每个单元格,从而导致图像模糊。
00:05:00 在本节中,讲师讨论了对 GAN 中的生成器进行特征图上采样的方法。他首先描述了双线性上采样,其中通过获取更大的空特征图并用其所有最近邻居的平均值填充它来创建新的特征图。然后他引入了转置卷积,它用如此多的填充填充特征图,以至于当卷积窗口在其上滑动时,输出特征图最终大于输入。讲师指出,这些是对特征图进行上采样的最常见方法,通常足以使生成器变得更大。
00:10:00 在讲座的这一部分,演讲者讨论了条件 GAN 以及如何在生成器中处理它们。生成器的输入现在包括一个潜在向量和一个条件向量,告诉它要生成什么。演讲者建议将向量连接在一起或在连接它们之前单独处理它们。他们还简要介绍了将多项内容传递给鉴别器。然后讲座过渡到 StyleGAN,这是一种新的生成器架构,包括艺术天赋和在卷积操作之前对潜在向量的预处理。
00:25:00 在本节中,讲师讨论了向每个特征图添加受控随机噪声,使网络能够根据学习到的 B 值按比例增加或减少噪声量。这种受控的随机噪声有助于产生更好的纹理和瑕疵,从而产生个别的毛发和皱纹。在每次卷积之后添加受控噪声,并允许网络控制噪声的大小。讲座还讨论了样式 GAN 的新创新,包括集成到每一层的潜在向量,以及使用自适应实例归一化来慢慢介绍样式。
00:35:00 在本节中,演讲者解释说,视频可用于训练鉴别器以识别真假视频,但与图像处理相比,它需要大量计算。视频应该逐帧处理,但可以跳过一些帧以提高处理效率。鉴别器可用于确保生成的视频从一帧到另一帧的一致性。此外,演讲者建议在一些演示中使用 GAN 模型时要小心,例如将猴子变成马,因为它可能并不总是有效,结果可能不如预期。最后,演讲者讨论了当更大的批量和更多的数据被投入更大的模型时 GAN 如何扩展,并解释了稳定性、可靠性、多样性和质量之间的一些权衡。
00:40:00 在本节中,讲师讨论了使用 GAN 获得更好稳定性和结果的一些技巧。提高稳定性的一个关键是使用更大的批量大小,这对于 GAN 等复杂任务特别有用。另一个技巧是在测试期间截断随机噪声的范围,以避免出现超出模型经验的结果。然而,这伴随着限制生成图像的多样性的权衡。讲师还强调,在训练过程中接受一些不稳定性对于取得好的结果是必要的,并警告不要过度削弱鉴别器。
00:45:00 在本节中,演讲者告诫不要对潜在空间使用窄分布,因为生成器可能会重复生成相似的图像,从而更难生成各种图像。演讲者建议从广泛分布的不同大小开始,让模型对如何生成图像有一个很好的初步想法。此外,他们还认为,除了随机生成单个图像之外,鉴别器功能还可以通过多种不同方式发挥作用。最后,他们介绍了 Big Gan,它有助于生成非常大规模的 GAN。
Lecture 11 - Advanced GANsCS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://ml.berkeley.edu/decal/mo...
在本次关于扩散模型的讲座中,演讲者讨论了扩散模型背后的直觉——预测添加到图像中的噪声并将其去噪以获得原始图像。讲座涵盖训练过程、增强架构以及生成图像和视频的扩散模型示例。此外,本讲座深入探讨了潜在扩散模型,该模型将模型压缩到潜在空间中以在图像的语义部分上运行扩散。演讲者还概述了相关模型,例如 Dolly Q、Google 的 Imagine 模型和 Facebook 的 Make a Video,以及它们使用文本生成 3D 模型的能力。
00:10:00 在视频的这一部分,讲师解释了扩散模型中反向处理的概念,其中可以通过反转噪声步骤的顺序来生成新图像。挑战在于找到反向分布,使用精确分布很难计算,因此通过Q函数和P函数进行近似。 P 函数由神经网络表示,它试图学习反向分布的均值和方差,假设为高斯分布。该视频还介绍了扩散模型的训练过程,该过程需要最小化或最大化损失函数。
00:15:00 在讲座的这一部分,演讲者讨论了变分变分下界在扩散模型中的应用,这导致损失函数类似于较小损失函数的总和。他们解释说 L of 0 到 L of T-1 对损失有贡献,他们将专注于分析 L of T,这是从 1 到 T-1 定义的。演讲者继续解释了 T-1 的 X 的 Q 与神经网络试图预测的分布之间的 KL 散度如何产生一个术语,该术语衡量学习均值与条件分布均值之间的 L2 损失。扩散论文的作者建议以与 T-1 的 X 的 Q 类似的形式参数化 theta 的 mu,即学习的 mu,以简化表达式并使预测单个项成为可能,而不是预测红色框中的所有内容。
00:20:00 在本节中,讲师解释了扩散模型背后的主要直觉,即预测添加到图像中的噪声,然后对其进行去噪以恢复原始图像。目标是最小化原始噪声和预测噪声之间的噪声,训练过程包括向数据集中的图像添加噪声,将它们通过模型,预测噪声,并最小化预测噪声和实际噪声之间的距离。然后,该模型可用于通过从随机噪声开始并使用预测噪声对其进行去噪来合成新图像。讲师还指出,被扩散的变量 X of T 不一定是图像。
00:40:00 在本节中,演讲者讨论了扩散模型如何在图像建模中超越 GAN 模型,因为它能够捕获更好的保真度和数据分布的多样性。他们展示了火烈鸟的图像,其中 GAN 图像看起来非常相似,而扩散图像在其输出中显示出更多的多样性,表明更好的图像建模能力。演讲者还提到,研究人员已经提出了更好的方法来通过称为无分类器指导的过程来指导扩散模型,在该过程中训练条件扩散模型以避免以多样性换取更高的质量,这是在某些条件下对模型进行调节时固有的类标签。
00:50:00 在本节中,演讲者讨论了与扩散相关的几种模型,包括 Dolly Q、通过 Google 的 Imagine 模型生成图像,以及通过 Facebook 的 Make a Video 生成视频。此外,谷歌还扩展了 Imagine 模型以生成视频。根据今年早些时候发布的一篇论文,演讲者还提到了使用文本生成 3D 模型以及将视觉应用于 RL 的能力,这在离线 RL 中实现了最先进的结果。演讲者提供了论文和资源的链接以供进一步学习。
Lecture 12 - Diffusion ModelsCS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://ml.berkeley.edu/decal...
CS 198-126:第 3 讲 - 深度学习简介,第 2 部分
CS 198-126:第 3 讲 - 深度学习简介,第 2 部分
在讲座的这一部分中,解释了反向传播的概念,这是一种在不执行冗余操作的情况下更快地获得梯度下降算法所需的所有偏导数的方法。讲师还讨论了如何改进普通梯度下降以进行深度学习优化,并介绍了动量、RMSprop 和 Adam 作为优化方法。还讨论了跟踪模型训练历史记录的重要性、批量归一化的使用和集成作为提高模型性能的技术,以及深度学习中常用于帮助减少过拟合(如丢失和跳过连接)的技术。最后,讲师简要介绍了 PyTorch 的易用性并开始提问。
CS 198-126:第 4 讲 - 预训练和增强介绍
CS 198-126:第 4 讲 - 预训练和增强介绍
在本次讲座中,演讲者解释了机器学习中特征提取的演变、深度学习的优势,以及如何使用迁移学习来提高模型的准确性和速度。他们还讨论了神经网络中冻结和微调层的概念,以及嵌入在降低分类变量维数方面的重要性。本讲座介绍了自监督学习及其不同任务,包括拼图、旋转和掩码词预测任务,这些任务可用于预训练模型并将学习到的表征迁移到下游任务。最后,讨论了对计算机视觉中自我监督学习的新兴趣,讲座鼓励学生在高 Crush 笔记本上完成作业。
对于表格数据来说很简单,但对于文本、音频或图像等数据来说却很复杂。然而,对于图像,经典计算机视觉中有专门的特征提取器可用。
CS 198-126:第 5 讲 - 计算机视觉简介
CS 198-126:第 5 讲 - 计算机视觉简介
这个关于计算机视觉的讲座涵盖了各种主题,包括计算机视觉的历史及其多年来的发展。讲师还解释了深度学习及其如何改进经典计算机视觉方法。本讲座深入探讨了卷积的概念以及它们如何用作计算机视觉中的特征提取器,从而创建了卷积神经网络 (CNN)。此外,讲座还讨论了感受野的作用,并介绍了池化层作为增加 CNN 感受野的方法。总体而言,该讲座概述了计算机视觉作为一个领域以及用于从图像中提取信息的技术。在讲座的第二部分,讨论了在卷积过程中保持图像大小的各种技术,包括填充和相同的填充。还涵盖了卷积层中步幅的概念,演示了它如何模拟池化层的效果。解释了 CNN 的结构及其超参数,包括内核大小、步幅、填充和池化层,重点是卷积层如何充当特征提取器,将低维特征块传递到完全连接的网络进行分类。讲座还涵盖了用于对手写数字进行分类的 LeNet 网络架构,以及在通过神经网络传递图像数据之前对其进行归一化的重要性。最后,数据增强作为一种创建额外训练数据的技术进行了讨论,并强调了训练时模型检查点的重要性。
CS 198-126:第 6 讲 - 高级计算机视觉架构
CS 198-126:第 6 讲 - 高级计算机视觉架构
本次关于高级计算机视觉架构的讲座重点介绍了卷积神经网络 (CNN) 及其各种技术。讲师在深入研究残差等高级技术之前解释了 AlexNet 和 VGG 的架构,以保持向后的残差值以获得更高的准确性和更简单的架构。讨论了瓶颈和一对一卷积的使用,以及能够在计算机视觉体系结构中学习身份的重要性。本讲座还涵盖了神经网络中梯度消失的问题,以及如何通过批量归一化和残差网络来缓解这一问题。深入解释了全局平均池化和深度可分离卷积等技术,然后讨论了移动网络架构及其优势。
此外,讲师还研究了高级计算机视觉架构,并着重于通过使用逐步局部卷积和逐个卷积来优化卷积神经网络模型。他强调了理解这些优化的重要性,以及在高效构建未来网络时某些优化可能出现的问题。讲座最后讨论了准确性、性能和模型大小之间的权衡,并通过有效网络模型与其他网络的比较突出了这一点。学生会被告知下周五即将进行的测验和家庭作业。
CS 198-126:第 7 讲 - 目标检测
CS 198-126:第 7 讲 - 目标检测
本讲座讨论了对象检测,特别是将定位添加到简单的分类 CNN、用于对象检测的 IOU 方法、R-CNN 系统,以及优化对象检测算法以最小化 YOLO 的处理时间。该视频通过分割图像来解释 YOLO,并讨论了 YOLO 对象检测的挑战,包括使用锚框来消除歧义。最后,探索了 YOLO 架构,这是一个用于对象检测的完全卷积神经网络,并且将大量类的存储用于分类作为一个正在进行的研究问题提出。演讲者建议阅读“黄皮书”,同时由于不可读性而建议不要使用 RCNN。
CS 198-126:第 8 讲 - 语义分割
CS 198-126:第 8 讲 - 语义分割
本讲座讨论图像分割,包括语义分割和实例分割。分割的主要目标是检测图像中的所有对象并将它们分离出来。讲师解释了卷积神经网络 (CNN) 如何用于语义分割,以及下采样如何帮助处理计算量大的全分辨率图像。还讨论了将小体积转换回图像大小的不同方法。本讲座介绍了 U-Net,这是一种将先前的改进与跳跃连接相结合的语义分割模型,并解释了如何使用 Mask R-CNN 方法将其扩展到实例分割。演示了预训练的语义分割模型,演讲者谈到了预训练和即将进行的课程作业。
CS 198-126:第 9 讲 - 自动编码器、VAE、生成建模
CS 198-126:第 9 讲 - 自动编码器、VAE、生成建模
在本讲座中,介绍了生成建模的概念,它涉及使用机器学习基于数据集创建新图像。解释了自动编码器,一种用于特征学习的神经网络,重点介绍了它们的结构以及它们如何通过压缩和重建来学习输入数据的特征。该讲座还涵盖了变分自动编码器及其优势,以及在自动编码器中使用结构化潜在空间在图像之间进行插值。讨论了矢量量化对于处理离散数据的重要性,并解释了变分自动编码器的损失函数,其中包括重建损失和承诺损失,以防止对输入数据进行硬编码。讲座以对所涵盖主题的回顾结束。
CS 198-126:第 10 讲 - GAN
CS 198-126:第 10 讲 - GAN
关于 GAN 的讲座介绍了两个网络的概念,即鉴别器和生成器,它们在博弈论式的设置中相互竞争。生成器的输入是随机噪声,它赋予意义以生成看起来真实的图像,而鉴别器的工作是判断图像是真实的还是假的。 GAN 使用对应于负交叉熵损失的损失函数,生成器想要最小化而鉴别器想要最大化它。值函数表示生成器的性能如何,需要鉴别器通过正确分类假数据和真实数据来最大化。该讲座还涵盖了训练 GAN 的问题,以及允许生成器有更多代理权来改变的非饱和损失。
CS 198-126:第 11 讲 - 高级 GAN
CS 198-126:第 11 讲 - 高级 GAN
这个关于高级 GAN 的讲座涵盖了提高 GAN 模型的稳定性和质量的各种技术,包括双线性上采样、转置卷积、条件 GAN、StyleGAN 和 CycleGAN。本讲座还讨论了在 GAN 中使用受控随机噪声、自适应实例归一化和处理视频。为了获得更好的稳定性和结果,讲师建议在测试期间使用更大的批量大小并截断随机噪声的范围,同时警告不要过度削弱鉴别器。此外,建议从广泛分布的不同大小的潜在空间开始,以生成各种图像。最后,讲座涉及 Big Gan,它有助于生成非常大规模的 GAN。
CS 198-126:第 12 讲 - 扩散模型
CS 198-126:第 12 讲 - 扩散模型
在本次关于扩散模型的讲座中,演讲者讨论了扩散模型背后的直觉——预测添加到图像中的噪声并将其去噪以获得原始图像。讲座涵盖训练过程、增强架构以及生成图像和视频的扩散模型示例。此外,本讲座深入探讨了潜在扩散模型,该模型将模型压缩到潜在空间中以在图像的语义部分上运行扩散。演讲者还概述了相关模型,例如 Dolly Q、Google 的 Imagine 模型和 Facebook 的 Make a Video,以及它们使用文本生成 3D 模型的能力。