1.6 KiB
1.6 KiB
Подготовка данных
По мимо подготовки датасета реализуется 2 обязательных класса:
- Обязательный класс. В него мы подаем путь до датасета и трансформации, которые необходимо провести.
dataset = DatasetNameDataset(path=.... , transforms=....)
Вот так выглядит сам класс:
class DatasetNameDataset(Dataset): # название класса
def __init__(self, *args, **kwargs) # инициализация
def __len__(self):
pass # Вот тут функционал поиска длины датасета
def __getitem__(self, index):
pass # Функционал поиска по индексу, где мы должны получить в ответе данные и ответ к ним (sample, target)
- Класс pytorch DataLoader
DataLoader(dataset=dataset, batch_size=BATCH_SIZE, shuffle=False)
где:
- dataset* - наш датасет
- batch* - 'пакет' из BATCH_SIZE чилса данных и ответов к ним.
- shuffle* - либо разрешаем либо запрещаем перемешивать данные при каждой итерации
И для задач классификации, ровно как и для задач регрессии, данные классы идентичны. НО различаются они только тем, какие именно данные в них подаются и какой ответ мы получаем.