더북(TheBook)

2.2.2 데이터 준비

데이터 호출에는 파이썬 라이브러리(판다스(Pandas))를 이용하는 방법과 파이토치에서 제공하는 데이터를 이용하는 방법이 있습니다. 데이터가 이미지일 경우(이미지 모델을 사용해야 할 경우) 분산된 파일에서 데이터를 읽은 후 전처리를 하고 배치 단위로 분할하여 처리합니다. 데이터가 텍스트일 경우(텍스트 모델을 사용해야 할 경우) 임베딩 과정3을 거쳐 서로 다른 길이의 시퀀스(sequence)를 배치 단위로 분할하여 처리합니다.

다음은 파이토치를 이용하여 데이터셋을 불러오는 다양한 방법으로 각각의 방법을 하나씩 살펴보겠습니다. 참고로 2.2절의 코드는 모두 사용 방법에 대한 예시이므로 눈으로만 살펴보세요.

 

단순하게 파일을 불러와서 사용

판다스 라이브러리를 이용하여 JSON, PDF, CSV 등의 파일을 불러오는 방법입니다. 데이터가 복잡하지 않은 형태라면 단순하고 유용하게 사용될 수 있습니다.

먼저 필요한 라이브러리를 설치합니다. 터미널 커맨드라인(아나콘다 프롬프트)에서 pip 명령어를 사용하여 다음 라이브러리를 설치합니다.

> pip install pandas

설치가 완료되었으면 예제 진행을 위한 라이브러리를 호출합니다.

import pandas as pd ------ pandas 라이브러리 호출
import torch ------ torch 라이브러리 호출
data = pd.read_csv('../class2.csv') ------ csv 파일을 불러옵니다.

x = torch.from_numpy(data['x'].values).unsqueeze(dim=1).float() ------ CSV 파일의 x 칼럼의 값을 넘파이 배열로 받아 Tensor(dtype)으로 바꾸어 줍니다.
y = torch.from_numpy(data['y'].values).unsqueeze(dim=1).float() ------ CSV 파일의 y 칼럼의 값을 넘파이 배열로 받아 Tensor(dtype)으로 바꾸어 줍니다.
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.