# Тест в конце главы[[end-of-chapter-quiz]]

Эта глава охватила много вопросов! Не волнуйтесь, если вы не поняли всех деталей; следующие главы помогут вам понять, как все работает внутри.

Однако, прежде чем двигаться дальше, давайте проверим то, что вы узнали в этой главе.
### Из каких источников функция `load_dataset()` в 🤗 Datasets позволяет загружать наборы данных?

data_files функции load_dataset() для загрузки локальных наборов данных.",
			correct: true
		},
		{
			text: "Hugging Face Hub",
			explain: "Правильно! Вы можете загружать наборы данных в Hub, указав идентификатор набора данных, например. load_dataset('emotion').",
			correct: true
		},
		{
			text: "Удаленный сервер",
			explain: "Правильно! Вы можете передать URLs в аргумент data_files фунции  load_dataset(). ",
			correct: true
		},
	]}
/>

### 2. Предположим, вы загружаете одну из задач GLUE следующим образом:

```py
from datasets import load_dataset

dataset = load_dataset("glue", "mrpc", split="train")
```

Какая из следующих команд создаст случайную выборку из 50 элементов из `dataset`?

dataset.sample(50)",
			explain: "Это неверно — нет метода Dataset.sample()."
		},
		{
			text: "dataset.shuffle().select(range(50))",
			explain: "Правильный! Как вы видели в этой главе, вы сначала перемешиваете набор данных, а затем выбираете из него подмножества.",
			correct: true
		},
		{
			text: "dataset.select(range(50)).shuffle()",
			explain: "Это неверно — хотя код запустится, он перемешает только первые 50 элементов в наборе данных."
		}
	]}
/>

### 3. Предположим, у вас есть набор данных о домашних питомцах под названием `pets_dataset`, в котором есть столбец `name`, обозначающий имя каждого питомца. Какой из следующих подходов позволит вам отфильтровать набор данных для всех домашних животных, имена которых начинаются с буквы «L»?

pets_dataset.filter(lambda x : x['name'].startswith('L'))",
			explain: "Правильно! Использование лямбда-функции Python для этих быстрых фильтров — отличная идея. Можете ли вы придумать другое решение?",
			correct: true
		},
		{
			text: "pets_dataset.filter(lambda x['name'].startswith('L'))",
			explain: "Это неверно — лямбда-функция принимает общую форму lambda *arguments* : *expression*, поэтому в этом случае вам необходимо предоставить аргументы."
		},
		{
			text: "Create a function like def filter_names(x): return x['name'].startswith('L') and run pets_dataset.filter(filter_names).",
			explain: "Правильно! Как и в случае с Dataset.map(), вы можете передавать явные функции в Dataset.filter(). Это полезно, когда у вас есть сложная логика, которая не подходит для короткой лямбда-функции. Какое из других решений будет работать?",
			correct: true
		}
	]}
/>

### 4. Что такое отображение в память?

### 5. Что из перечисленного ниже является основным преимуществом отображения памяти?

### 6. Почему следующий код не работает?

```py
from datasets import load_dataset

dataset = load_dataset("allocine", streaming=True, split="train")
dataset[0]
```

IterableDataset.",
			explain: "Правильно! IterableDataset — это генератор, а не контейнер, поэтому вы должны получить доступ к его элементам, используя next(iter(dataset)).",
			correct: true
		},
		{
			text: "Набор данных allocine не имеет разделения train.",
			explain: "Это неверно — проверьте [allocine карточку набора данных](https://huggingface.co/datasets/allocine) в Hub, чтобы увидеть, какие разбиения он содержит."
		}
	]}
/>

### 7. Что из перечисленного является основными преимуществами создания карточки датасета?

### 8. Что такое семантический поиск?

### 9. Для асимметричного семантического поиска можно использовать:

### 10. Могу ли я использовать 🤗 Datasets для загрузки данных и решения задач в других областях, например для обработки речи?

набором данных MNIST в Hub для примера компьютерного зрения."
		},
		{
			text: "Да",
			explain: "Правильно! Ознакомьтесь с захватывающими разработками в области речи и зрения в библиотеке 🤗 Transformers, чтобы узнать, как 🤗 Datasets используются в этих областях.",
			correct : true
		},
	]}
/>

