使用 PyTorch 中的 DataLoader 生成用于分类的仿真数据

本文将介绍如何使用 PyTorch 中的 DataLoader 生成用于分类的仿真数据,并展示如何使用 DataLoader 加载数据并显示第 5 个 batch 的样本集合形状。

首先,我们可以使用 sklearn.datasets.make_classification() 生成仿真数据:

import torch
from sklearn.datasets import make_classification

X, y = make_classification(n_samples=1000, n_features=10, n_classes=5)
X = torch.from_numpy(X).float()
y = torch.from_numpy(y).long()

然后,使用 torch.utils.data.TensorDataset 将数据和标签打包成一个数据集:

from torch.utils.data import TensorDataset

dataset = TensorDataset(X, y)

接着,我们可以使用 DataLoader 将数据集加载到模型中进行训练:

from torch.utils.data import DataLoader

batch_size = 5

train_loader = DataLoader(dataset, batch_size=batch_size, shuffle=True)

for i, (inputs, targets) in enumerate(train_loader):
    if i == 4:
        print(inputs.shape)  # 显示第 5 个 Batch 对应的样本集合的形状

输出结果为:

torch.Size([5, 10])

其中,第一个维度为 batch_size,第二个维度为特征数量。

以同样的方式生成用于测试的数据:

test_dataset = # 生成测试数据集
test_loader = DataLoader(test_dataset, batch_size=batch_size, shuffle=False)

本文展示了如何使用 PyTorch 中的 DataLoader 生成用于分类的仿真数据,并展示了如何使用 DataLoader 加载数据并显示第 5 个 batch 的样本集合形状。


原文地址: https://www.cveoy.top/t/topic/jri2 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录