国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Pytorch DataLoader shuffle驗證方式

Pytorch DataLoader shuffle驗證方式

2021-11-19 13:57循環是人遞歸是神 Python

這篇文章主要介紹了Pytorch DataLoader shuffle驗證方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

shuffle = False時,不打亂數據順序

shuffle = True,隨機打亂

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import numpy as np
import h5py
import torch
from torch.utils.data import DataLoader, Dataset 
h5f = h5py.File('train.h5', 'w');
data1 = np.array([[1,2,3],
               [2,5,6],
              [3,5,6],
              [4,5,6]])
data2 = np.array([[1,1,1],
                   [1,2,6],
                  [1,3,6],
                  [1,4,6]])
h5f.create_dataset(str('data'), data=data1)
h5f.create_dataset(str('label'), data=data2)
class Dataset(Dataset):
    def __init__(self):
        h5f = h5py.File('train.h5', 'r')
        self.data = h5f['data']
        self.label = h5f['label']
    def __getitem__(self, index):
        data = torch.from_numpy(self.data[index])
        label = torch.from_numpy(self.label[index])
        return data, label
 
    def __len__(self):
        assert self.data.shape[0] == self.label.shape[0], "wrong data length"
        return self.data.shape[0]
 
dataset_train = Dataset()
loader_train = DataLoader(dataset=dataset_train,
                           batch_size=2,
                           shuffle = True)
 
for i, data in enumerate(loader_train):
    train_data, label = data
    print(train_data)

pytorch DataLoader使用細節

背景:

我一開始是對數據擴增這一塊有疑問, 只看到了數據變換(torchvisiom.transforms),但是沒看到數據擴增, 后來搞明白了, 數據擴增在pytorch指的是torchvisiom.transforms + torch.utils.data.DataLoader+多個epoch共同作用下完成的,

數據變換共有以下內容

?
1
2
3
4
5
composed = transforms.Compose([transforms.Resize((448, 448)), #  resize
                               transforms.RandomCrop(300), # random crop
                               transforms.ToTensor(),
                               transforms.Normalize(mean=[0.5, 0.5, 0.5],  # normalize
                                                    std=[0.5, 0.5, 0.5])])

簡單的數據讀取類, 進返回PIL格式的image:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class MyDataset(data.Dataset):   
    def __init__(self, labels_file, root_dir, transform=None):
        with open(labels_file) as csvfile:
            self.labels_file = list(csv.reader(csvfile))
        self.root_dir = root_dir
        self.transform = transform
        
    def __len__(self):
        return len(self.labels_file)
    
    def __getitem__(self, idx):
        im_name = os.path.join(root_dir, self.labels_file[idx][0])
        im = Image.open(im_name)
        
        if self.transform:
            im = self.transform(im)
            
        return im

下面是主程序

?
1
2
3
4
5
6
7
8
9
10
11
labels_file = "F:/test_temp/labels.csv"
root_dir = "F:/test_temp"
dataset_transform = MyDataset(labels_file, root_dir, transform=composed)
dataloader = data.DataLoader(dataset_transform, batch_size=1, shuffle=False)
"""原始數據集共3張圖片, 以batch_size=1, epoch為2 展示所有圖片(共6張)  """
for eopch in range(2):
    plt.figure(figsize=(6, 6))
    for ind, i in enumerate(dataloader):
        a = i[0, :, :, :].numpy().transpose((1, 2, 0))
        plt.subplot(1, 3, ind+1)
        plt.imshow(a)

Pytorch DataLoader shuffle驗證方式

從上述圖片總可以看到, 在每個eopch階段實際上是對原始圖片重新使用了transform, , 這就造就了數據的擴增

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/qq_35752161/article/details/110875040

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 在线欧美视频 | 成人片免费看 | 日本一区二区高清视频 | 婷婷五月色综合香五月 | 亚洲视频中文字幕 | 国产欧美精品一区二区色综合 | 亚洲成人精品一区 | 久久99精品久久久久久琪琪 | 成人av观看 | 日韩在线视频中文字幕 | 亚洲欧美在线一区 | 亚洲视频中文字幕 | 欧美国产一区二区 | 久久人人爽爽爽人久久久 | 国产福利在线播放 | 一区二区三区成人久久爱 | 婷婷久 | 成人免费在线电影 | 日韩在线免费电影 | 一区不卡| 天天干天天骑 | 自由成熟xxxx色视频 | 凹凸国产成人精品视频免费 | 日本一区二区视频在线播放 | 国产亚洲欧美另类一区二区三区 | 久久精品国产一区二区三区不卡 | 亚州中文字幕 | 亚洲国产精品一区二区三区 | 国产精品成人av | 国产亚洲精品一区二区 | 色综合网在线 | 伊人伊成久久人综合网站 | 中文字幕影视 | 亚洲自拍偷拍网 | 亚洲一区二区在线 | 最新国产精品精品视频 | 一级黄色影视 | 国产欧美日韩视频 | 最新中文字幕在线 | 欧美视频网站 | 成人在线免费观看 |