一、核心定位
二、四大核心模块(简要)
三、一句话总结
四、代码演示
最精简、能直接跑的 TorchVision 完整入门代码,包含:
安装 → 图像预处理 → 加载数据集 → 用预训练模型推理 → 训练一条龙。
安装 → 图像预处理 → 加载数据集 → 用预训练模型推理 → 训练一条龙。
1. 安装
pip install torch torchvision
2. 最核心:图像预处理(最常用)
import torch
import torchvision.transforms as transforms
# 图像预处理管道
transform = transforms.Compose([
transforms.Resize((224, 224)), # resize
transforms.ToTensor(), # 转成 PyTorch Tensor
transforms.Normalize( # 归一化(ImageNet 标准)
mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225]
)
])
3. 加载内置数据集(CIFAR10 示例)
from torchvision import datasets
from torch.utils.data import DataLoader
# 下载 + 加载数据集
train_dataset = datasets.CIFAR10(
root="./data", train=True, download=True, transform=transform
)
# 数据加载器
train_loader = DataLoader(
train_dataset, batch_size=32, shuffle=True
)
4. 直接用 TorchVision 预训练模型(ResNet18)
import torchvision.models as models
# 加载预训练 ResNet18
model = models.resnet18(pretrained=True)
# 推理模式
model.eval()
# 随便造一张假图测试
dummy_img = torch.randn(1, 3, 224, 224)
with torch.no_grad():
out = model(dummy_img)
print("输出形状:", out.shape) # (1, 1000) ImageNet 1000类
5. 极简完整训练骨架(你必用)
import torch
import torch.nn as nn
import torch.optim as optim
from torchvision import models, datasets, transforms
from torch.utils.data import DataLoader
# 1. 预处理
transform = transforms.Compose([
transforms.Resize((224,224)),
transforms.ToTensor(),
transforms.Normalize([0.485,0.456,0.406],[0.229,0.224,0.225])
])
# 2. 数据集
dataset = datasets.CIFAR10(
root="./data", train=True, download=True, transform=transform
)
loader = DataLoader(dataset, batch_size=32, shuffle=True)
# 3. 模型
model = models.resnet18(pretrained=True)
model.fc = nn.Linear(512, 10) # CIFAR10 是10分类
# 4. 损失 & 优化器
criterion = nn.CrossEntropyLoss()
optimizer = optim.Adam(model.parameters(), lr=1e-4)
# 5. 训练一步
for images, labels in loader:
outputs = model(images)
loss = criterion(outputs, labels)
optimizer.zero_grad()
loss.backward()
optimizer.step()
print("loss:", loss.item())
break
你只要记住这 4 个包(CV 万能)
import torchvision.transforms as transforms # 图像增强
from torchvision import datasets # 数据集
from torchvision import models # 预训练模型
from torchvision.utils import make_grid
数据统计
数据评估
关于TorchVision特别声明
本站蜜蜂导航提供的TorchVision都来源于网络,不保证外部链接的准确性和完整性,同时,对于该外部链接的指向,不由蜜蜂导航实际控制,在2026年2月11日 下午1:41收录时,该网页上的内容,都属于合规合法,后期网页的内容如出现违规,可以直接联系网站管理员进行删除,蜜蜂导航不承担任何责任。
相关导航
暂无评论...
