PyTorch torchvision 是一个强大的库,专门用于处理计算机视觉任务。它提供了数据加载、转换和预训练模型的工具,可以极大地简化图像和视频处理的流程。

torchvision 数据集

torchvision 提供了多种预加载数据集,包括:

  • CIFAR10:10个类别的60000张32x32彩色图像,其中50000用于训练,10000用于测试。
  • MNIST:手写数字数据集,包含60000个训练样本和10000个测试样本。
  • ImageNet:大规模视觉识别数据库,包含1400万张图像,1000个类别。

torchvision 模型

torchvision 提供了一系列预训练的模型,包括:

  • ResNet:残差网络,适用于图像分类。
  • VGG:VGG网络,也适用于图像分类。
  • AlexNet:AlexNet网络,是早期深度学习模型之一。

torchvision 使用示例

以下是一个简单的示例,展示如何使用 torchvision 加载 CIFAR10 数据集并使用 ResNet 进行图像分类:

import torch
import torchvision
import torchvision.transforms as transforms

# 定义数据转换
transform = transforms.Compose([
    transforms.ToTensor(),
    transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))
])

# 加载 CIFAR10 数据集
trainset = torchvision.datasets.CIFAR10(root='./data', train=True, download=True, transform=transform)
trainloader = torch.utils.data.DataLoader(trainset, batch_size=4, shuffle=True, num_workers=2)

# 加载预训练的 ResNet 模型
net = torchvision.models.resnet18()

# 打印模型结构
print(net)

# ... 进行训练 ...

扩展阅读

更多关于 PyTorch torchvision 的信息,请参考官方文档:PyTorch torchvision

PyTorch torchvision 示例