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 示例