torchvision 是一个开源的深度学习库,专门用于计算机视觉任务。它是 PyTorch 生态系统的一部分,提供了许多预训练模型和工具,可以帮助研究人员和开发者快速实现和评估计算机视觉模型。

主要功能

  • 预训练模型:包含多种预训练模型,如 ResNet、AlexNet、VGG 等。
  • 数据集加载器:支持多种常见的数据集,如 ImageNet、COCO、MNIST 等。
  • 图像变换:提供了一系列图像变换工具,如旋转、缩放、裁剪等。
  • 模型评估:提供了多种评估指标,如准确率、召回率、F1 值等。

安装

要安装 torchvision,可以使用以下命令:

pip install torchvision

快速入门

  1. 导入库:
import torchvision
  1. 加载数据集:
transform = torchvision.transforms.Compose([
    torchvision.transforms.Resize(256),
    torchvision.transforms.CenterCrop(224),
    torchvision.transforms.ToTensor(),
])

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)
  1. 使用预训练模型:
model = torchvision.models.resnet50(pretrained=True)
  1. 训练模型:
criterion = nn.CrossEntropyLoss()
optimizer = optim.SGD(model.parameters(), lr=0.001, momentum=0.9)

for epoch in range(2):  
    running_loss = 0.0
    for i, data in enumerate(trainloader, 0):
        inputs, labels = data
        optimizer.zero_grad()
        outputs = model(inputs)
        loss = criterion(outputs, labels)
        loss.backward()
        optimizer.step()
        running_loss += loss.item()
        if i % 2000 == 1999:    
            print(f'[{epoch + 1}, {i + 1:5d}] loss: {running_loss / 2000:.3f}')
            running_loss = 0.0

更多资源

想要了解更多关于 torchvision 的信息,可以访问我们的 官方文档

![PyTorch Logo](https://cloud-image.ullrai.com/q/PyTorch Logo/)