阅读量:1
在PyTorch中,划分数据集通常使用torch.utils.data.DataLoader和torchvision.transforms模块。以下是一个简单的示例,展示了如何将数据集划分为训练集、验证集和测试集:
- 首先,导入所需的库:
import torch
from torch.utils.data import DataLoader, random_split
from torchvision import datasets, transforms
- 定义数据预处理:
transform = transforms.Compose([
transforms.ToTensor(),
transforms.Normalize((0.5,), (0.5,))
])
- 加载数据集(这里以CIFAR-10为例):
train_dataset = datasets.CIFAR10(root='./data', train=True, download=True, transform=transform)
test_dataset = datasets.CIFAR10(root='./data', train=False, download=True, transform=transform)
- 划分数据集:
# 将数据集划分为训练集、验证集和测试集
train_size = int(0.8 * len(train_dataset))
val_size = int(0.1 * len(train_dataset))
test_size = len(train_dataset) - train_size - val_size
train_dataset, val_dataset, test_dataset = random_split(train_dataset, [train_size, val_size, test_size])
- 创建数据加载器:
train_loader = DataLoader(train_dataset, batch_size=64, shuffle=True)
val_loader = DataLoader(val_dataset, batch_size=64, shuffle=False)
test_loader = DataLoader(test_dataset, batch_size=64, shuffle=False)
现在,你已经成功地将CIFAR-10数据集划分为训练集、验证集和测试集,并创建了相应的数据加载器。你可以使用这些数据加载器进行模型训练、验证和测试。
以上就是关于“pytorch怎么划分数据集”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm