How do I split a custom dataset into training and test datasets?

前端 未结 5 1313
遇见更好的自我
遇见更好的自我 2020-12-07 09:50
import pandas as pd
import numpy as np
import cv2
from torch.utils.data.dataset import Dataset

class CustomDatasetFromCSV(Dataset):
    def __init__(self, csv_path,         


        
5条回答
  •  无人及你
    2020-12-07 10:23

    Bear in mind that most canonical examples are already spited. For instance on this page you will find MNIST. One common belief is that is has 60.000 images. Bang! Wrong! It has 70.000 images out of that 60.000 training and 10.000 validation (test) images.

    So for the canonical datasets the flavor of PyTorch is to provide you already spited datasets.

    import torch
    import torch.nn as nn
    import torch.nn.functional as F
    from torch.utils.data import DataLoader, Dataset, TensorDataset
    from torch.optim import *
    import torchvision
    import torchvision.transforms as transforms
    import matplotlib.pyplot as plt
    import os
    import numpy as np
    import random
    
    bs=512
    
    t = transforms.Compose([
                           transforms.ToTensor(),
                           transforms.Normalize(mean=(0), std=(1))]
                           )
    
    dl_train = DataLoader( torchvision.datasets.MNIST('/data/mnist', download=True, train=True, transform=t), 
                    batch_size=bs, drop_last=True, shuffle=True)
    dl_valid = DataLoader( torchvision.datasets.MNIST('/data/mnist', download=True, train=False, transform=t), 
                    batch_size=bs, drop_last=True, shuffle=True)
    

提交回复
热议问题