使用 fastai 和 PyTorch的 DL
文章平均质量分 95
深度学习是一项强大的新技术,我们认为它应该应用于许多学科。领域专家最有可能找到它的新应用,我们需要更多来自不同背景的人参与并开始使用它。
Sonhhxg_柒
Save your heart for someone who cares. #愿岁月清净 抬头遇见皆是柔情#
展开
-
【Pytorch with fastai】第 20 章 :结语与问题
因此,如果你想超越自己和他人的期望,那么在关闭本书之后你接下来要做的事情甚至比你为达到这一点所做的事情更重要。现在是扭转局面的好机会。例如,您可以尝试在您当地的社区或学习小组中组织一个小型的深度学习聚会,甚至提议在当地的聚会上就您到目前为止学到的知识或您感兴趣的某些特定方面进行演讲. 你还不是世界领先的专家也没关系——重要的是要记住,你现在知道很多其他人不知道的东西,所以他们很可能会欣赏你的观点。这将迫使你更深入地研究一个主题,这将测试你的理解力,并让你有机会看到当你下定决心去做时你能做些什么。原创 2022-11-20 17:12:15 · 416 阅读 · 3 评论 -
【Pytorch with fastai】第 19 章 :从零开始的 fastai 学习者
最后一章(结论和在线章节除外)看起来会有些不同。与前几章相比,它包含更多的代码和更少的散文。我们将在不讨论的情况下介绍新的 Python 关键字和库。本章旨在为您开启一个重要的研究项目。你看,我们将从头开始实现 fastai 和 PyTorch API 的许多关键部分,除了我们在中开发的组件之外别无他物!这里的关键目标是结束你自己的Learner类和一些回调——足以在 Imagenette 上训练模型,包括我们研究过的每个关键技术的例子。在构建的过程中Learner,我们将创建我们自己的版本Module,原创 2022-11-20 10:28:09 · 1280 阅读 · 4 评论 -
【Pytorch with fastai】第 18 章 :使用 CAM 进行 CNN 解释
现在我们知道如何从头开始构建几乎任何东西,让我们使用这些知识来创建全新的(并且非常有用!)功能:类激活映射。它让我们深入了解 CNN 为什么做出这样的预测。在此过程中,我们将了解 PyTorch 的一个我们以前从未见过的方便功能,即hook,我们将应用本书其余部分介绍的许多概念。如果你真的想测试你对本书材料的理解,在你读完本章后,试着把它放在一边,自己从头开始重新创造这些想法(不要偷看!)。CAM 和。原创 2022-11-20 10:27:28 · 607 阅读 · 3 评论 -
【Pytorch with fastai】第 17 章 :基础神经网络
在 Glorot 和 Bengio 撰写他们的文章时,神经网络中最流行的激活是双曲正切(tanh,这是他们使用的),并且该初始化不考虑我们的 ReLU。计算关于损失的梯度 b2,我们首先需要关于输出的损失梯度out. 如果我们想要损失的梯度是一样的w2. 然后,得到关于损失的梯度 b1或者w1,我们将需要关于损失的梯度l1,这又需要损失的梯度l2,这将需要关于损失的梯度out.假设我们的隐藏大小为 50,输出大小为 1(在这个玩具示例中,对于我们的输入之一,相应的输出是一个浮点数)。原创 2022-11-19 08:56:21 · 300 阅读 · 1 评论 -
【Pytorch with fastai】第 16 章 :训练过程
您现在知道如何为计算机视觉、自然语言处理、表格分析和协同过滤创建最先进的架构,并且知道如何快速训练它们。所以我们完成了,对吧?还不完全是。我们仍然需要探索更多的训练过程。我们在解释了随机梯度下降的基础:将一个 mini-batch 传递给模型,将其与我们的我们在训练循环中从头开始实现这个,并看到 PyTorch 提供了一个简单的nn.SGD类来为我们的每个参数。在本章中,我们将使用灵活的基础构建一些更快的优化器。但这并不是我们想要在训练过程中改变的全部。原创 2022-11-18 12:21:25 · 1134 阅读 · 0 评论 -
【Pytorch with fastai】第 15 章 :深入探讨应用程序架构
我们现在处于令人兴奋的位置,我们可以完全理解我们一直用于计算机视觉、自然语言处理和表格分析的最先进模型的体系结构。在本章中,我们将填补所有关于 fastai 应用程序模型如何工作的缺失细节,并向您展示如何构建它们。我们还将回到我们在中看到的用于 Siamese 网络的自定义数据预处理管道,并向您展示如何使用 fastai 库中的组件为新任务构建自定义预训练模型。我们将从计算机视觉开始。计算机视觉对于计算机视觉应用程序,我们根据任务使用函数和 构建模型。在本节中,我们将探索如何构建我们在本书部分和。原创 2022-11-18 09:40:43 · 717 阅读 · 2 评论 -
【Pytorch with fastai】第 14 章 :ResNet
在本章中,我们将在上一章介绍的 CNN 之上构建,并向您解释 ResNet(残差网络)架构。它由 Kaiming He 等人于 2015 年推出。在文章中,它是目前最常用的模型架构。图像的最新发展模型几乎总是使用相同的残差连接技巧,而且大多数时候,它们只是对原始 ResNet 的微调。我们将首先向您展示最初设计的基本 ResNet,然后解释使其性能更高的现代调整。但首先,我们需要一个比 MNIST 数据集更难的问题,因为我们已经接近 100% 的准确率,在其上使用常规 CNN。原创 2022-11-18 09:40:57 · 524 阅读 · 2 评论 -
【Pytorch with fastai】第 13 章 :卷积神经网络
在中,我们学习了如何创建一个识别图像的神经网络。我们在区分 3 和 7 时能够达到 98% 以上的准确率——但我们也看到 fastai 的内置类能够接近 100%。让我们开始尝试缩小差距。在本章中,我们将从深入了解卷积是什么并从头开始构建 CNN 开始。然后,我们将研究一系列提高训练稳定性的技术,并了解库通常为我们应用的所有调整,以获得出色的结果。卷积的魔力机器学习从业者可以使用的最强大的工具之一是特征工程。特征是数据的转换,旨在使其更容易建模。例如,我们在。原创 2022-11-17 11:28:49 · 647 阅读 · 4 评论 -
【Pytorch with fastai】第 12 章 :从零开始的语言模型
我们现在准备深入……深入深度学习!你已经学会了如何训练一个基本的神经网络,但是你如何从那里开始创建最先进的模型呢?在本书的这一部分,我们将从语言模型开始揭开所有的谜团。您在第 10 章中看到了如何微调预训练语言模型以构建文本分类器。在本章中,我们将准确解释该模型内部的内容以及 RNN 是什么。首先,让我们收集一些数据,以便我们快速制作各种模型的原型。每当我们开始处理一个新问题时,我们总是首先尝试考虑我们能想到的最简单的数据集,这将使我们能够快速轻松地尝试方法并解释结果。当我们开始工作 几年前在语言建模方面,原创 2022-11-17 10:14:26 · 538 阅读 · 2 评论 -
【Pytorch with fastai】第 11 章 :使用 fastai 的中级 API 进行数据处理
在它之下,中级 API 为您提供了更大的灵活性,可以在您的项目上应用转换。在您的实际问题中,这可能是您需要使用的,我们希望它能使数据处理步骤尽可能简单。训练集和验证集之间有一个区别,这就是为什么需要用分割来初始化转换:在训练集上,我们会在每次读取图像时随机选择,而在验证集上,我们会这个随机选择在初始化时一劳永逸。不过,一般来说,您将有两个(或更多)并行的转换管道:一个用于将原始项目处理为输入,另一个用于将原始项目处理为目标。如果您想编写一个自定义转换以应用于您的数据,最简单的方法是编写一个函数。原创 2022-11-17 10:14:12 · 500 阅读 · 2 评论 -
【Pytorch with fastai】第 10 章 :NLP 深入探讨 RNN
在中,我们看到深度学习可用于在自然语言数据集上获得很好的结果。我们的示例依赖于使用预训练语言模型并对其进行微调以对评论进行分类。该示例突出了 NLP 中的迁移学习与计算机视觉之间的区别:通常,在 NLP 中,预训练模型是针对不同的任务进行训练的。我们所说的语言模型是一种经过训练可以猜测的模型文本中的下一个单词(已经阅读过之前的单词)。这种任务被称为自监督学习:我们不需要给我们的模型贴上标签,只需要给它提供很多很多的文本。原创 2022-11-17 10:13:37 · 780 阅读 · 2 评论 -
【Pytorch with fastai】第 9 章 :表格建模深入探讨
表格建模采用表格形式的数据(如电子表格或 CSV)。目标是根据其他列中的值预测一列中的值。在本章中,我们不仅会研究深度学习,还会研究更通用的机器学习技术,例如随机森林,因为它们可以根据您的问题给出更好的结果。我们将看看我们应该如何预处理和清理数据以及如何在训练后解释我们的模型的结果,但首先我们将看到我们如何通过使用嵌入将包含类别的列输入到期望数字的模型中。分类嵌入在表格数据中,某些列可能包含数字数据,例如“年龄”,而其他包含字符串值,如“sex”。原创 2022-11-16 11:34:58 · 1045 阅读 · 5 评论 -
【Pytorch with fastai】第 8 章 :协同过滤深入探讨
要解决的一个常见问题是拥有大量用户并且 许多产品,并且您想推荐哪些产品最有可能对哪些用户有用。存在许多变体:例如,推荐电影(例如在 Netflix 上)、确定在主页上为用户突出显示的内容、决定在社交媒体提要中显示哪些故事,等等。这个问题的通用解决方案,称为协同过滤,其工作原理是:查看当前用户使用过或喜欢过哪些产品,找到使用过或喜欢过类似产品的其他用户,然后推荐这些用户使用过或喜欢过的其他产品.例如,在 Netflix 上,您可能看过很多 1970 年代制作的充满科幻色彩的电影。Netflix 可能不知道你看原创 2022-11-16 09:41:25 · 720 阅读 · 2 评论 -
【Pytorch with fastai】第 7 章 :训练SOTA的模型
本章介绍了用于训练图像分类模型和获得最先进结果的更高级技术。如果您想了解有关深度学习的其他应用的更多信息,您可以跳过它,稍后再回来阅读——后面的章节不会假设您已经掌握了这些材料。我们将了解什么是标准化、一种称为 Mixup 的强大数据增强技术、渐进式调整大小方法和测试时间增强。为了展示所有这些,我们将从头开始训练一个模型(不使用迁移学习),方法是使用ImageNet 的子集称为。它包含与原始 ImageNet 数据集非常不同的 10 个类别的子集,可以在我们想要进行实验时更快地进行训练。原创 2022-11-16 09:39:57 · 519 阅读 · 3 评论 -
【Pytorch with fastai】第 6 章 :其他计算机视觉问题
令人惊奇的是,我们只用了几分钟的计算,就创建了如此精确的关键点模型,而且没有任何特殊的领域特定应用程序。推出的熊分类器的一个问题 是,如果用户上传的东西不是任何种类的熊,模型仍然会说它是灰熊、黑色或泰迪熊——它没有能力预测“根本不是熊”。我们经常看到人们将图像回归视为一个完全独立的应用程序——但正如您将在此处看到的,我们可以将其视为数据块 API 之上的另一个 CNN。通过使用这些操作,我们不必自己编写循环,并且可以依赖 PyTorch 来根据我们正在使用的张量的等级进行我们需要的循环。原创 2022-11-15 22:39:18 · 836 阅读 · 1 评论 -
【Pytorch with fastai】第 5 章 :图像分类
现在您已经了解了深度学习是什么、它的用途以及如何创建和部署模型,是时候让我们更深入地学习了!在一个理想的世界里,深度学习从业者不必知道事情如何在幕后工作的每一个细节。但到目前为止,我们还没有生活在一个理想的世界里。事实是,要使您的模型真正工作并可靠地工作,您必须正确处理很多细节,并且必须检查很多细节。这个过程需要能够在你的神经网络训练和预测时查看它的内部,发现可能的问题,并知道如何解决它们。因此,从这里开始,我们将深入探讨深度学习的机制。计算机视觉模型、NLP 模型、表格模型等的架构是什么?原创 2022-11-15 12:48:37 · 954 阅读 · 1 评论 -
【Pytorch with fastai】第 4 章 :底层训练数字分类器
在中了解了训练各种模型的情况之后,现在让我们深入了解一下到底发生了什么。我们将首先使用计算机视觉来介绍深度学习的基本工具和概念。确切地说,我们将讨论数组和张量的作用以及广播的作用,广播是一种用于表达地使用它们的强大技术。我们将解释随机梯度下降 (SGD),这是一种通过自动更新权重进行学习的机制。我们将讨论为我们的基本分类任务选择损失函数,以及小批量的作用。我们还将描述基本神经网络正在执行的数学运算。最后,我们将把所有这些部分放在一起。原创 2022-11-15 12:48:23 · 394 阅读 · 1 评论 -
【Pytorch with fastai】第 3 章 :数据伦理
正如我们在第1章和第2章中所讨论的,有时机器学习模型可能会出错。他们可能有错误。他们可以看到他们以前从未见过的数据,并以我们意想不到的方式行事。或者它们可以完全按照设计工作,但用于我们更希望它们从未使用过的东西。因为深度学习是一个如此强大的工具,可以用于很多事情,所以考虑我们选择的后果变得尤为重要。伦理学的哲学研究是 对与错的研究,包括我们如何定义这些术语,识别对与错的行为,以及理解行为与后果之间的联系。数据伦理领域一直存在 长期以来,许多学者都在关注这一领域。它被用于帮助定义许多司法管辖区的政策;大小公司原创 2022-11-15 12:48:17 · 900 阅读 · 1 评论 -
【Pytorch with fastai】第 1 章:你的深度学习之旅
您好,感谢您让我们加入您的深度学习之旅,无论您走多远!在本章中,我们将告诉你更多关于本书的内容,介绍深度学习背后的关键概念,并在不同的任务上训练我们的第一个模型。如果你不是来自技术或数学背景也没关系(虽然你也可以!);我们写这本书是为了让尽可能多的人能够接触到深度学习。很多人认为你需要各种难以找到的东西才能通过深度学习获得好的结果,但正如你将在本书中看到的那样,这些人是错误的。 表 1-1列出了世界级深度学习绝对不需要的一些东西。很多数学高中数学就够了。大量数据我们已经看到了少于 50 项数据的破纪录结果。原创 2022-09-30 20:02:40 · 3358 阅读 · 6 评论 -
【Pytorch with fastai】第 2 章:从模型到生产
我们在第 1 章中看到的六行代码只是在实践中使用深度学习过程的一小部分。在本章中,我们将使用一个计算机视觉示例来了解创建深度学习应用程序的端到端过程。 更具体地说,我们将构建一个熊分类器!在此过程中,我们将讨论深度学习的能力和限制,探索如何创建数据集,查看在实践中使用深度学习时可能遇到的问题,等等。许多关键点同样适用于其他深度学习问题,例如第 1 章中的问题。如果您解决了与我们的示例问题在关键方面相似的问题,我们希望您能够以很少的代码快速获得出色的结果。让我们从你应该如何构建你的问题开始。我们已经看到,深度原创 2022-09-30 20:18:47 · 3470 阅读 · 9 评论