
《Dive-into-Deep-Learning》读书笔记
文章平均质量分 71
骑猪流浪江湖
一个有追求的三本大学在读本科生,秃头中年油腻男团预备团员
展开
-
Dive-into-DL-Pytorch 4.5节读写与保存 读书笔记
4.5 读取和存储到目前为止,我们介绍了如何处理数据以及如何构建、训练和测试深度学习模型。然而在实际中,我们有时需要把训练好的模型部署到很多不同的设备。在这种情况下,我们可以把内存中训练好的模型参数存储在硬盘上供后续读取使用。保存Tensor我们可以直接使用save函数和load函数分别存储和读取Tensor。save使用Python的pickle实用程序将对象进行序列化,然后将序列化的对象保存到disk,使用save可以保存各种对象,包括模型、张量和字典等。而load使用pickle unpickl原创 2021-03-23 00:00:11 · 172 阅读 · 0 评论 -
Dive-into-DL-Pytorch 4.2节权重初始化 读书笔记
4.2 模型参数的访问、初始化和共享在3.3节(线性回归的简洁实现)中,我们通过init模块来初始化模型的参数。我们也介绍了访问模型参数的简单方法。本节将深入讲解如何访问和初始化模型参数,以及如何在多个层之间共享同一份模型参数。我们先定义一个与上一节中相同的含单隐藏层的多层感知机。我们依然使用默认方式初始化它的参数,并做一次前向计算。与之前不同的是,在这里我们从nn中导入了init模块,它包含了多种模型初始化方法。import torchfrom torch import nnfrom torch原创 2021-03-22 18:21:27 · 194 阅读 · 0 评论 -
Dive-into-DL-Pytorch 4.1节模型构造实现 读书笔记
4.1 模型构造让我们回顾一下在3.10节(多层感知机的简洁实现)中含单隐藏层的多层感知机的实现方法。我们首先构造Sequential实例,然后依次添加两个全连接层。其中第一层的输出大小为256,即隐藏层单元个数是256;第二层的输出大小为10,即输出层单元个数是10。我们在上一章的其他节中也使用了Sequential类构造模型。这里我们介绍另外一种基于Module类的模型构造方法:它让模型构造更加灵活。4.1.1 继承Module类来构造模型Module类是nn模块里提供的一个模型构造类,是所有神经原创 2021-03-22 16:01:01 · 211 阅读 · 0 评论 -
Dive-into-DL-Pytorch 3.15节数值稳定性和模型初始化 读书笔记
一、写在前面本文是《Dive-into-Deep-Learning》一书中文Pytorch版本的3.15节数值稳定性和模型初始化读书笔记,仅作个人备忘与记录。二、衰减和爆炸当神经网络的层数较多时,模型的数值稳定性容易变差。假设一个层数为LLL的多层感知机的第lll层H(l)\boldsymbol{H}^{(l)}H(l)的权重参数为W(l)\boldsymbol{W}^{(l)}W(l),输出层H(L)\boldsymbol{H}^{(L)}H(L)的权重参数为W(L)\boldsymbol{W}^{原创 2021-03-22 10:51:32 · 144 阅读 · 0 评论 -
Dive-into-DL-Pytorch 3.13节drop_out实现 读书笔记
一、写在前面本文是《Dive-into-Deep-Learning》一书中文Pytorch版本的3.13节drop_out实现读书笔记仅作个人备忘与记录。二、理论介绍除了前一节介绍的权重衰减以外,深度学习模型常常使用丢弃法(dropout)来应对过拟合问题。丢弃法有一些不同的变体。本节中提到的丢弃法特指倒置丢弃法(inverted dropout)。方法:回忆一下,3.8节(多层感知机)描述了一个单隐藏层的多层感知机。其中输入个数为4,隐藏单元个数为5,且隐藏单元hih_ihi(i=1,…,5i原创 2021-03-22 10:29:04 · 151 阅读 · 0 评论 -
Dive-into-DL-Pytorch 3.10节mlp-pytorch实现 读书笔记
一、写在前面本文是《Dive-into-Deep-Learning》一书中文Pytorch版本的3.10节mlp-pytorch实现。笔记仅作个人备忘与记录。二、手写实现下面我们使用PyTorch来实现上一节中的多层感知机。首先导入所需的包或模块。import torchfrom torch import nnfrom torch.nn import initimport numpy as npimport syssys.path.append("..") import d2lzh_py原创 2021-03-21 23:29:54 · 201 阅读 · 0 评论 -
Dive-into-DL-Pytorch 3.9节mlp手写实现 读书笔记
一、写在前面本文是《Dive-into-Deep-Learning》一书中文Pytorch版本的3.9节mlp手写实现读书笔记。笔记仅作个人备忘与记录。二、代码实现首先导入实现所需的包或模块。import torchimport numpy as npimport syssys.path.append("..")import d2lzh_pytorch as d2l这里继续使用Fashion-MNIST数据集。我们将使用多层感知机对图像进行分类。batch_size = 256tra原创 2021-03-21 22:42:19 · 169 阅读 · 0 评论 -
Dive-into-DL-Pytorch 3.7节softmax分类 读书笔记
一、写在前面本文是《Dive-into-Deep-Learning》一书中文Pytorch版本的3.7节softmax分类读书笔记。笔记仅作个人备忘与记录。代码实现下面,让我们再次使用Pytorch来实现一个softmax回归模型。首先导入所需的包或模块。import torchfrom torch import nnfrom torch.nn import initimport numpy as npimport syssys.path.append("..") import d2lz原创 2021-03-19 17:16:29 · 208 阅读 · 0 评论 -
Dive-into-DL-Pytorch 3.5节Fashion-MNIST 读书笔记
一、写在前面本文是《Dive-into-Deep-Learning》一书中文Pytorch版本的3.5节Fashion-MNIST读书笔记。本节主要讲解介绍该数据集的下载和可视化,在下一节中将具体讲解其运用。笔记仅作个人备忘与记录。二、数据获取与处理首先导入本节需要的包或模块。import torchimport torchvisionimport torchvision.transforms as transformsimport matplotlib.pyplot as pltimpor原创 2021-03-18 19:31:46 · 406 阅读 · 0 评论 -
Dive-into-DL-Pytorch 3.3节pytorch实现linreg 读书笔记
一、写在前面本文是《Dive-into-Deep-Learning》一书中文Pytorch版本的3.3节线性回归Pytorch实现读书笔记。笔记仅作个人备忘与记录。二、定义模型在上一节从零开始的实现中,我们需要定义模型参数,并使用它们一步步描述模型是怎样计算的。当模型结构变得更复杂时,这些步骤将变得更繁琐。其实,PyTorch提供了大量预定义的层,这使我们只需关注使用哪些层来构造模型。下面将介绍如何使用PyTorch更简洁地定义线性回归。首先,导入torch.nn模块。实际上,“nn”是neural原创 2021-03-18 18:56:23 · 624 阅读 · 0 评论 -
Dive-into-DL-Pytorch 3.2节线性回归实例 读书笔记
一、写在前面本文是《Dive-into-Deep-Learning》一书中文Pytorch版本的3.2节线性回归读书笔记。笔记仅作个人备忘与记录。二、 线性回归的从零开始实现在了解了线性回归的背景知识之后,现在我们可以动手实现它了。尽管强大的深度学习框架可以减少大量重复性工作,但若过于依赖它提供的便利,会导致我们很难深入理解深度学习是如何工作的。因此,本节将介绍如何只利用Tensor和autograd来实现一个线性回归的训练。首先,导入本节中实验所需的包或模块,其中的matplotlib包可用于作图原创 2021-03-18 18:12:44 · 262 阅读 · 0 评论 -
Dive-into-DL-Pytorch第二章——梯度 读书笔记
一、写在前面本文是《Dive-into-Deep-Learning》一书中文Pytorch版本的第一章,梯度。到目前为止的内容较为轻松,主要是对pytorch的一些基本操作和概念的熟悉过程。建议可以参阅《Pytorch官方文档》辅助学习。二、自动求梯度在深度学习中,我们经常需要对函数求梯度(gradient)。PyTorch提供的autograd包能够根据输入和前向传播过程自动构建计算图,并执行反向传播。本节将介绍如何使用autograd包来进行自动求梯度的有关操作。2.1 概念上一节介绍的Ten原创 2021-03-18 16:21:15 · 237 阅读 · 0 评论 -
Dive-into-DL-Pytorch第一章 预备知识 读书笔记
一、写在前面本文是《Dive-into-Deep-Learning》一书中文Pytorch版本的预备知识。前面填了机器学习和NLP入门的坑,即日起入门一下深度学习的坑。通过前段时间的学习和实习,深感人工智能的强大和自身存在的不足,因此决定下一番工夫在自己感兴趣的领域。毕竟,留给天灵盖上的头发的时间不多了,嘿嘿。二、数据操作在深度学习中,我们通常会频繁地对数据进行操作。作为动手学深度学习的基础,本节将介绍如何对内存中的数据进行操作。在PyTorch中,torch.Tensor是存储和变换数据的主要工具原创 2021-03-18 15:45:49 · 361 阅读 · 0 评论