Hub에서 데이터셋 불러오기
Hub에서 데이터셋 불러오기
가장 쉬운 시작은 Hub의 기존 데이터셋을 발견하고 load_dataset()으로 다운로드하는 거예요. 허브에는 NLP·컴퓨터 비전·오디오 작업용 커뮤니티 데이터셋이 모여 있어요. 이 문서는 rotten_tomatoes와 MInDS-14를 예시로 데이터셋을 불러오는 흐름을 보여줘요.
데이터셋 빌더로 먼저 확인
데이터셋의 정보는 DatasetInfo에 담겨 있고, 설명·특징·크기를 포함해요. load_dataset_builder()로 전체를 다운로드하지 않고 빌더와 속성을 확인할 수 있어요.
from datasets import load_dataset_builder
ds_builder = load_dataset_builder("cornell-movie-review-data/rotten_tomatoes")
ds_builder.info.description
데이터셋 로드
마음에 들면 load_dataset()으로 불러와요.
from datasets import load_dataset
dataset = load_dataset("cornell-movie-review-data/rotten_tomatoes", split="train")
분할(Splits)
분할은 데이터셋의 특정 부분(예: train, test)이에요. 분할 이름 목록은 get_dataset_split_names()로 확인해요.
from datasets import get_dataset_split_names
get_dataset_split_names("cornell-movie-review-data/rotten_tomatoes")
# ['train', 'validation', 'test']
split 파라미터로 특정 분할을 로드하면 Dataset 객체가 돌아오고, 지정하지 않으면 모든 분할이 DatasetDict로 돌아와요.
dataset = load_dataset("cornell-movie-review-data/rotten_tomatoes", split="train")
print(dataset)
# Dataset({features: ['text', 'label'], num_rows: 8530})
구성(Configurations)
어떤 데이터셋은 여러 하위 데이터셋을 담고 있어요. 예를 들어 MInDS-14는 언어별 음성 데이터 하위 데이터셋을 가져요. 이런 걸 구성(configuration)·서브셋이라고 하고, 로드할 때 반드시 하나를 골라야 해요. 안 고르면 ValueError가 나면서 구성을 고르라고 안내해요.
from datasets import get_dataset_config_names
configs = get_dataset_config_names("PolyAI/minds14")
print(configs)
# ['cs-CZ', 'de-DE', 'en-AU', 'en-GB', 'en-US', 'es-ES', 'fr-FR', 'it-IT', 'ko-KR', 'nl-NL', 'pl-PL', 'pt-PT', 'ru-RU', 'zh-CN', 'all']
mindsFR = load_dataset("PolyAI/minds14", "fr-FR", split="train")
config_names를 미리 확인하면 데이터셋이 어떤 구성들을 갖는지 파악하고, 알맞은 걸 골라 불러올 수 있어요.
더 알아보기
- 시작하기: Datasets Overview
- 처리: Process
- 스트리밍: Streaming