РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pytoPmDtLd 88 of 95 menu
◀ ▶

Пакетная загрузка данных в PyTorch

Для обучения строки из набора удобно отдавать пакетами. Класс DataLoader из torch.utils.data оборачивает готовый набор и при обходе циклом возвращает сразу несколько пар признаков и меток.

Создадим набор из четырёх объектов, обернём его загрузчиком с пакетом из двух строк и выведем форму первого пакета:

import torch from torch.utils.data import TensorDataset, DataLoader features = torch.tensor([[1.0, 2.0], [3.0, 4.0], [5.0, 6.0], [7.0, 8.0]]) targets = torch.tensor([0, 1, 0, 1]) ds = TensorDataset(features, targets) loader = DataLoader(ds, batch_size=2) for batch_features, batch_targets in loader: print(batch_features.shape, batch_targets.shape) # выведет torch.Size([2, 2]) torch.Size([2]) break

В пакете признаки собираются в таблицу: первая ось - число строк в пакете, вторая совпадает с шириной одной строки набора. Метки лежат в одномерном тензоре той же длины, что и число строк в пакете.

Из таблицы 6 строк по 2 числа и ряда из 6 меток соберите набор. Обходите его пакетами по 3 строки и выведите форму таблицы признаков в первом пакете.

Для пяти строк-признаков [[1.0], [2.0], [3.0], [4.0], [5.0]] и меток [0, 1, 0, 1, 0] настройте выдачу по две строки за шаг. Выведите длину ряда меток в первом полученном пакете.

Соберите набор из восьми одинаковых строк [0.5, 1.5] и восьми нулевых меток. При обходе с размером пакета 4 выведите форму таблицы признаков одного из пакетов.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить