30 快速入门
快速入门目录 快速入门 张量 数据集和数据加载器 转换 建立模型 自动区分 优化循环 保存,加载和使用模型 0 包加载PyTorch有两个处理数据的原语: torch.utils.data.DataLoader和torch.utils.data.Dataset。 Dataset存储样本及其相应的标签,并DataLoader在周围包裹一个可迭代的对象Dataset。 123456import torchfrom torch import nnfrom torch.utils.data import DataLoaderfrom torchvision import datasetsfrom torchvision.transforms import ToTensor, Lambda, Composeimport matplotlib.pyplot as plt 1 数据库和数据导入PyTorch提供了特定领域的库,例如TorchText, TorchVision和TorchAudio,所有这些库都包含数据集。在本教程中,我们将使用TorchVision数据集。 12345678...
31 张量
张量 张量如同数组和矩阵一样, 是一种特殊的数据结构。在PyTorch中, 神经网络的输入、输出以及网络的参数等数据, 都是使用张量来进行描述。 张量的使用和Numpy中的ndarrays很类似, 区别在于张量可以在GPU或其它专用硬件上运行, 这样可以得到更快的加速效果。如果你对ndarrays很熟悉的话, 张量的使用对你来说就很容易了。如果不太熟悉的话, 希望这篇有关张量API的快速入门教程能够帮到你。 12import torchimport numpy as np 1 张量初始化张量有很多种不同的初始化方法, 先来看看四个简单的例子: 1. 直接生成张量由原始数据直接生成张量, 张量类型由原始数据类型决定。 12data = [[1, 2], [3, 4]]x_data = torch.tensor(data) 2. 通过Numpy数组来生成张量由已有的Numpy数组来生成张量(反过来也可以由张量来生成Numpy数组, 参考张量与Numpy之间的转换)。 12np_array = np.array(data)x_np = torch.from_numpy(np_arr...
33 转换transform
transform对数据集进行转换1 torchvision数据集才有的转换所有 TorchVision 数据集都有两个参数 -transform修改特征和 target_transform修改标签 - 接受包含转换逻辑的可调用对象。该torchvision.transforms模块提供几种常用的变换开箱 1234567891011import torchfrom torchvision import datasetsfrom torchvision.transforms import ToTensor, Lambdads = datasets.FashionMNIST( root="data", train=True, download=True, transform=ToTensor(), target_transform=Lambda(lambda y: torch.zeros(10, dtype=torch.float).scatter_(0, torch.tensor(y), value=1))) ToTensor(...
32 数据集和数据加载器
数据集和数据加载器1 torchvision.datasets 官方数据集加载我们使用以下参数加载FashionMNIST 数据集: root 是存储训练/测试数据的路径, train 指定训练或测试数据集, download=True如果数据不可用,则从 Internet 下载数据root。 transform并target_transform指定特征和标签转 1234567891011121314151617181920import torchfrom torch.utils.data import Datasetfrom torchvision import datasetsfrom torchvision.transforms import ToTensorimport matplotlib.pyplot as plttraining_data = datasets.FashionMNIST( root="data", train=True, download=True, transform=ToTens...
38 Pytorch 序列化
Torch Script 简介1 为什么 TorchScript是PyTorch模型(的子类nn.Module)的中间表示,可以在高性能环境(例如C ++)中运行。 TorchScript是一种从PyTorch代码创建可序列化和可优化模型的方法。任何TorchScript程序都可以从Python进程中保存,并在没有Python依赖项的进程中加载。 我们提供了将模型从纯Python程序逐步过渡到可以 独立于Python运行的TorchScript程序 的工具,例如在独立的C ++程序中。这样就可以使用Python中熟悉的工具在PyTorch中训练模型,然后通过TorchScript将模型导出到生产环境中。 2 怎样做-trace实现一个模型 构造函数,为调用准备模块 一组Parameters和Modules。这些由构造函数初始化,并且可以在调用期间由模块使用。 一个forward功能。这是调用模块时运行的代码。 12345678910111213141516class MyCell(torch.nn.Module): def __init__(self): ...












