Datasets documentation
Загрузка набора данных из Hub
Загрузка набора данных из Hub
Поиск высококачественных датасетов, которые воспроизводимы и доступны, может быть затруднителен. Одна из основных целей 🤗 Datasets — предоставить простой способ загрузки датасета любого формата или типа. Самый простой способ начать работу — найти существующий датасет на Hugging Face Hub — сообщественной коллекции датасетов для задач в области NLP, компьютерного зрения и аудио — и использовать 🤗 Datasets для его загрузки и генерации.
В этом учебном материале используются наборы данных rotten_tomatoes и MInDS-14, но вы можете загрузить любой другой набор данных и следовать инструкциям. Перейдите на Hub прямо сейчас и найдите набор данных для вашей задачи!
Загрузка набора данных
Прежде чем тратить время на загрузку набора данных, полезно быстро получить общую информацию о нём. Информация о наборе данных хранится в DatasetInfo и может включать описание набора данных, его признаки и размер.
Используйте функцию load_dataset_builder(), чтобы загрузить конструктор набора данных и изучить его атрибуты, не скачивая сам набор:
>>> from datasets import load_dataset_builder
>>> ds_builder = load_dataset_builder("cornell-movie-review-data/rotten_tomatoes")
# Inspect dataset description
>>> ds_builder.info.description
Movie Review Dataset. This is a dataset of containing 5,331 positive and 5,331 negative processed sentences from Rotten Tomatoes movie reviews. This data was first used in Bo Pang and Lillian Lee, ``Seeing stars: Exploiting class relationships for sentiment categorization with respect to rating scales.'', Proceedings of the ACL, 2005.
# Inspect dataset features
>>> ds_builder.info.features
{'label': ClassLabel(names=['neg', 'pos']),
'text': Value('string')}Если вас устраивает набор данных, загрузите его с помощью load_dataset():
>>> from datasets import load_dataset
>>> dataset = load_dataset("cornell-movie-review-data/rotten_tomatoes", split="train")Разделения
Сплит — это конкретное подмножество набора данных, например 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. Загрузка split набора данных возвращает объект Dataset:
>>> from datasets import load_dataset
>>> dataset = load_dataset("cornell-movie-review-data/rotten_tomatoes", split="train")
>>> dataset
Dataset({
features: ['text', 'label'],
num_rows: 8530
})Если вы не указываете split, 🤗 Datasets возвращает объект DatasetDict:
>>> from datasets import load_dataset
>>> dataset = load_dataset("cornell-movie-review-data/rotten_tomatoes")
DatasetDict({
train: Dataset({
features: ['text', 'label'],
num_rows: 8530
})
validation: Dataset({
features: ['text', 'label'],
num_rows: 1066
})
test: Dataset({
features: ['text', 'label'],
num_rows: 1066
})
})Конфигурации
Некоторые наборы данных содержат несколько поднаборов. Например, набор данных MInDS-14 включает несколько поднаборов, каждый из которых содержит аудиоданные на разных языках. Эти поднаборы называются конфигурациями или подмножествами, и при загрузке набора данных необходимо явно выбрать один из них. Если имя конфигурации не указано, 🤗 Datasets вызовет ValueError и напомнит о необходимости выбрать конфигурацию.
Используйте функцию get_dataset_config_names(), чтобы получить список всех доступных конфигураций для вашего набора данных:
>>> 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']Затем загрузите нужную вам конфигурацию:
>>> from datasets import load_dataset
>>> mindsFR = load_dataset("PolyAI/minds14", "fr-FR", split="train")