Dataset
모델에 데이터를 feed하는 방법
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
class CustomDataset(torch.utils.data.Dataset):
def __init__(self):
데이터셋의 전처리를 해주는 부분
self.x_data = [[1, 2, 3],
[4, 5, 6]]
self.y_data = [[0], [1]]
def __len__(self):
데이터셋의 길이. 즉, 총 샘플의 수를 적어주는 부분
return len(self.x_data)
def __getitem__(self, idx):
데이터셋에서 특정 1개의 샘플을 가져오는 함수
# 인덱스를 입력받아 그에 맵핑되는 입출력 데이터를 파이토치의 Tensor 형태로 리턴
x = torch.FloatTensor(self.x_data[idx])
y = torch.FloatTensor(self.y_data[idx])
return x, y
|
cs |
DataLoader
DataLoader(dataset, 생성한 데이터셋 인스턴스 batch_size=1, 배치 사이즈
shuffle=False, 샘플을 섞어서 사용할 것인가 : 데이터의 상관성을 낮춰주는 효과
sampler=None, idx를 컨트롤하는 방법으로 이때 shuffle=False
batch_sampler=None, batch 단위로 샘플링함
num_workers=0, 데이터를 불러올때 사용하는 서브 프로세스(subprocess) 개수
collate_fn=None, map-style 데이터셋에서 sample list를 batch 단위로 바꾸기 위해 필요한 기능
pin_memory=False, drop_last=False, timeout=0, worker_init_fn=None)
|
cs |
'네이버 부스트캠프 AI tech 3기' 카테고리의 다른 글
9. ResNet 구현 (0) | 2022.02.03 |
---|---|
8. ResNet 리뷰 (0) | 2022.02.03 |
6. PyTorch nn.Module (0) | 2022.02.02 |
5. CNN과 RNN (0) | 2022.01.25 |
4. 확률론, 베이즈 (0) | 2022.01.25 |