一、DataLoader參數解析
DataLoader官網使用手冊
參數 | 描述 |
---|---|
dataset | 說明數據集所在的位置、數據總數等 |
batch_size | 每次取多少張圖片 |
shuffle | True亂序、False順序(默認) |
sampler | |
batch_sampler | |
num_workers | 多進程,默認為0采用主進程加載數據 |
collate_fn | |
pin_memory | |
drop_last | True最后不滿一個batch_size的去掉,False最后剩余多少也都要 |
timeout | |
worker_init_fn | |
generator | |
prefetch_factor | |
prefetch_factor | |
pin_memory_device |
import torchvision
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWritertest_data = torchvision.datasets.CIFAR10("CIFAR_10",train=False,transform=torchvision.transforms.ToTensor())
#Ctrl按住,點擊CIFAR10,找到__getitem__類,查看返回值return img, targettest_loader = DataLoader(dataset=test_data,batch_size=64,shuffle=True,num_workers=0,drop_last=False)
#drop_last=False,最后剩余多少也都要
#shuffle=True,亂序#測試一下
img,target = test_data[0]
print(img.shape)#torch.Size([3, 32, 32])
print(target)#3writer = SummaryWriter("y_log")
i = 0
for data in test_loader:imgs,targets = data#print(type(imgs))writer.add_images("test_data",imgs,i)i = i+1writer.close()
在Terminal下運行tensorboard --logdir=y_log --port=2312
,logdir為打開事件文件的路徑,port為指定端口打開;
通過指定端口2312進行打開tensorboard,若不設置port參數,默認通過6006端口進行打開。
點擊該鏈接或者復制鏈接到瀏覽器打開即可
import torchvision
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWritertest_data = torchvision.datasets.CIFAR10("CIFAR_10",train=False,transform=torchvision.transforms.ToTensor())
#Ctrl按住,點擊CIFAR10,找到__getitem__類,查看返回值return img, targettest_loader = DataLoader(dataset=test_data,batch_size=64,shuffle=False,num_workers=0,drop_last=True)
#drop_last=True,不滿一組的舍去
#shuffle=False,順序img,target = test_data[0]
print(img.shape)#torch.Size([3, 32, 32])
print(target)#3writer = SummaryWriter("y_log")for epoch in range(3):i = 0for data in test_loader:imgs,targets = data#print(type(imgs))writer.add_images("Epoch:{}".format(epoch),imgs,i)i = i+1writer.close()