 【PyTorch深度学习-龙龙老师】-测试版2021124.9 数学运算 4.10 前向传播实战 4.11 参考文献 第 5 章 PyTorch 进阶 5.1 合并与分割 5.2 数据统计 5.3 张量比较 5.4 填充与复制 5.5 数据限幅 5.6 高级操作 5.7 经典数据集加载 5.8 MNIST 测试实战 5.9 参考文献 第 6 章 神经网络 6.1 感知机 6.2 全连接层 是否可用,返回“True”或者“False”,代表了 GPU 设备是否可用,如图 1.32 所示。如果为 True,则 PyTorch GPU 版本安装成功;如果 为 False,则安装失败,需要再次检查 CUDA、环境变量等步骤,或者复制错误,从搜索引 擎中寻求帮助。 预览版202112 1.6 开发环境安装 21 图 1.32 PyTorch-GPU 安装结果测试 如果没有支持 CUDA 的显卡设备,则可以安装 ?1, ?2 输入? 输出 图 4.5 线性层的偏置示意图 因此,对于 2 个样本的输入?,需要将 shape 为[3]的偏置 ? = [ ?1 ?2 ? ] 按样本数量复制 1 份,变成如下矩阵形式?′: ?′ = [?1 ?2 ? ?1 ?2 ? ] 通过与?′ = ?@? ?′ = [ 11 ′ 12 ′ 1 ′ 21 ′ 220 码力 | 439 页 | 29.91 MB | 1 年前3 【PyTorch深度学习-龙龙老师】-测试版2021124.9 数学运算 4.10 前向传播实战 4.11 参考文献 第 5 章 PyTorch 进阶 5.1 合并与分割 5.2 数据统计 5.3 张量比较 5.4 填充与复制 5.5 数据限幅 5.6 高级操作 5.7 经典数据集加载 5.8 MNIST 测试实战 5.9 参考文献 第 6 章 神经网络 6.1 感知机 6.2 全连接层 是否可用,返回“True”或者“False”,代表了 GPU 设备是否可用,如图 1.32 所示。如果为 True,则 PyTorch GPU 版本安装成功;如果 为 False,则安装失败,需要再次检查 CUDA、环境变量等步骤,或者复制错误,从搜索引 擎中寻求帮助。 预览版202112 1.6 开发环境安装 21 图 1.32 PyTorch-GPU 安装结果测试 如果没有支持 CUDA 的显卡设备,则可以安装 ?1, ?2 输入? 输出 图 4.5 线性层的偏置示意图 因此,对于 2 个样本的输入?,需要将 shape 为[3]的偏置 ? = [ ?1 ?2 ? ] 按样本数量复制 1 份,变成如下矩阵形式?′: ?′ = [?1 ?2 ? ?1 ?2 ? ] 通过与?′ = ?@? ?′ = [ 11 ′ 12 ′ 1 ′ 21 ′ 220 码力 | 439 页 | 29.91 MB | 1 年前3
 动手学深度学习 v2.0辑上组合在单节中。而一些想 法可能最好是通过连续允许几个模型来传授。另一方面,坚持“一个工作例子一节”的策略有一个很大的好 处:这使你可以通过利用我们的代码尽可能轻松地启动你自己的研究项目。只需复制这一节的内容并开始修 改即可。 我们将根据需要将可运行代码与背景材料交错。通常,在充分解释工具之前,我们常常会在提供工具这一方 面犯错误(我们将在稍后解释背景)。例如,在充分解释随机梯度下降为什么有用或为什么有效之前,我们可 个张量上执行按元素操作。在某些情况下,即使形状不同, 我们仍然可以通过调用 广播机制(broadcasting mechanism)来执行按元素操作。这种机制的工作方式如 下: 1. 通过适当复制元素来扩展一个或两个数组,以便在转换之后,两个张量具有相同的形状; 2. 对生成的数组执行按元素操作。 在大多数情况下,我们将沿着数组中长度为1的轴进行广播,如下例子: a = torch.arange(3) [2]]), tensor([[0, 1]])) 由于a和b分别是3 × 1和1 × 2矩阵,如果让它们相加,它们的形状不匹配。我们将两个矩阵广播为一个更大 的3 × 2矩阵,如下所示:矩阵a将复制列,矩阵b将复制行,然后再按元素相加。 a + b 44 2. 预备知识 tensor([[0, 1], [1, 2], [2, 3]]) 2.1.4 索引和切片 就像在任何其他Python数0 码力 | 797 页 | 29.45 MB | 1 年前3 动手学深度学习 v2.0辑上组合在单节中。而一些想 法可能最好是通过连续允许几个模型来传授。另一方面,坚持“一个工作例子一节”的策略有一个很大的好 处:这使你可以通过利用我们的代码尽可能轻松地启动你自己的研究项目。只需复制这一节的内容并开始修 改即可。 我们将根据需要将可运行代码与背景材料交错。通常,在充分解释工具之前,我们常常会在提供工具这一方 面犯错误(我们将在稍后解释背景)。例如,在充分解释随机梯度下降为什么有用或为什么有效之前,我们可 个张量上执行按元素操作。在某些情况下,即使形状不同, 我们仍然可以通过调用 广播机制(broadcasting mechanism)来执行按元素操作。这种机制的工作方式如 下: 1. 通过适当复制元素来扩展一个或两个数组,以便在转换之后,两个张量具有相同的形状; 2. 对生成的数组执行按元素操作。 在大多数情况下,我们将沿着数组中长度为1的轴进行广播,如下例子: a = torch.arange(3) [2]]), tensor([[0, 1]])) 由于a和b分别是3 × 1和1 × 2矩阵,如果让它们相加,它们的形状不匹配。我们将两个矩阵广播为一个更大 的3 × 2矩阵,如下所示:矩阵a将复制列,矩阵b将复制行,然后再按元素相加。 a + b 44 2. 预备知识 tensor([[0, 1], [1, 2], [2, 3]]) 2.1.4 索引和切片 就像在任何其他Python数0 码力 | 797 页 | 29.45 MB | 1 年前3
 Keras: 基于 Python 的深度学习库我们建议使用 TensorFlow 后端。有两种方法可在多个 GPU 上运行单个模型:数据并行和设 备并行。 在大多数情况下,你最需要的是数据并行。 3.3.4.1 数据并行 数据并行包括在每个设备上复制一次目标模型,并使用每个模型副本处理不同部分的输入数据。 Keras 有一个内置的实用函数 keras.utils.multi_gpu_model,它可以生成任何模型的数据并 行版本,在多达 8 上实现准线性加速。 有关更多信息,请参阅 multi_gpu_model 的文档。这里是一个简单的例子: from keras.utils import multi_gpu_model # 将 `model` 复制到 8 个 GPU 上。 # 假定你的机器有 8 个可用的 GPU。 parallel_model = multi_gpu_model(model, gpus=8) parallel_model multi_gpu_model keras.utils.multi_gpu_model(model, gpus=None, cpu_merge=True, cpu_relocation=False) 将模型复制到不同的 GPU 上。 具体来说,该功能实现了单机多 GPU 数据并行性。它的工作原理如下: 工具 240 • 将模型的输入分成多个子批次。 • 在每个子批次上应用模型副本。每个模型副本都在专用0 码力 | 257 页 | 1.19 MB | 1 年前3 Keras: 基于 Python 的深度学习库我们建议使用 TensorFlow 后端。有两种方法可在多个 GPU 上运行单个模型:数据并行和设 备并行。 在大多数情况下,你最需要的是数据并行。 3.3.4.1 数据并行 数据并行包括在每个设备上复制一次目标模型,并使用每个模型副本处理不同部分的输入数据。 Keras 有一个内置的实用函数 keras.utils.multi_gpu_model,它可以生成任何模型的数据并 行版本,在多达 8 上实现准线性加速。 有关更多信息,请参阅 multi_gpu_model 的文档。这里是一个简单的例子: from keras.utils import multi_gpu_model # 将 `model` 复制到 8 个 GPU 上。 # 假定你的机器有 8 个可用的 GPU。 parallel_model = multi_gpu_model(model, gpus=8) parallel_model multi_gpu_model keras.utils.multi_gpu_model(model, gpus=None, cpu_merge=True, cpu_relocation=False) 将模型复制到不同的 GPU 上。 具体来说,该功能实现了单机多 GPU 数据并行性。它的工作原理如下: 工具 240 • 将模型的输入分成多个子批次。 • 在每个子批次上应用模型副本。每个模型副本都在专用0 码力 | 257 页 | 1.19 MB | 1 年前3
 机器学习课程-温州大学-03深度学习-PyTorch入门重复使用,但不参与求导的场景 下 tensor.detach() 共享 否 常用在神经网络中仅要利用张量 数值,而不需要追踪导数的场景 下 tensor.clone().detach() 新建 否 只做简单的数据复制,既不数据 共享,也不对梯度共享,从此两 个张量无关联。 2. Autograd自动求导 19 2. Autograd自动求导 在训练一个神经网络时,梯度的计算是一个关键的步骤,它为神经 网络的优化提供了关键数据。0 码力 | 40 页 | 1.64 MB | 1 年前3 机器学习课程-温州大学-03深度学习-PyTorch入门重复使用,但不参与求导的场景 下 tensor.detach() 共享 否 常用在神经网络中仅要利用张量 数值,而不需要追踪导数的场景 下 tensor.clone().detach() 新建 否 只做简单的数据复制,既不数据 共享,也不对梯度共享,从此两 个张量无关联。 2. Autograd自动求导 19 2. Autograd自动求导 在训练一个神经网络时,梯度的计算是一个关键的步骤,它为神经 网络的优化提供了关键数据。0 码力 | 40 页 | 1.64 MB | 1 年前3
共 4 条
- 1













