Torch中怎么加载和处理数据集

1949idc 2年前 (2024-09-18) 阅读数 459 #深度学习

在Torch中加载和处理数据集通常通过使用torch.utils.data.Datasettorch.utils.data.DataLoader类来实现。以下是一个简单的示例代码:

import torch
from torch.utils.data import Dataset, DataLoader

# 定义自定义数据集类
class CustomDataset(Dataset):
    def __init__(self):
        # 初始化数据集
        self.data = torch.randn(100, 10)
        self.labels = torch.randint(0, 2, (100,))
        
    def __len__(self):
        # 返回数据集大小
        return len(self.data)
    
    def __getitem__(self, idx):
        # 获取数据集中的一个样本
        return self.data[idx], self.labels[idx]

# 创建数据集实例
dataset = CustomDataset()

# 创建数据加载器
dataloader = DataLoader(dataset, batch_size=32, shuffle=True)

# 遍历数据集
for data, labels in dataloader:
    # 处理每个批次的数据
    print(data.shape, labels.shape)

在上面的示例中,定义了一个自定义的数据集类CustomDataset,其中实现了__init____len____getitem__方法。然后创建了dataset实例和dataloader对象,并使用for循环遍历数据加载器,获取每个批次的数据。

版权声明

本文内容由互联网用户自发贡献,该文观点仅代表作者本人
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

© 2010 首途云安 & 厦门硕顿信息技术有限公司 & 闽ICP备11016866号  增值电信业务经营许可证:B1-20203020 地址:福建厦门思明区嘉禾路297号1806
高新技术企业
软件产品证书
计算机软件著作权
ISO认证
国家3A企业