Пример PyTorch с дополнениями набора проверки - PullRequest
0 голосов
/ 06 мая 2020

В этом примере видения PyTorch для обучения передачи они выполняют дополнения набора проверки, и я не могу понять почему.

# Just normalization for validation
data_transforms = {
    'train': transforms.Compose([
        transforms.RandomResizedCrop(224),
        transforms.RandomHorizontalFlip(),
        transforms.ToTensor(),
        transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
    ]),
    'val': transforms.Compose([
        transforms.Resize(256),
        transforms.CenterCrop(224),
        transforms.ToTensor(),
        transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
    ]),
}

Насколько я знаю, данные Дополнения должны производиться исключительно на обучающем наборе (а иногда и на тестовом наборе, в так называемом "Test Time Augmentations").

Почему это тоже сделано здесь?
Кроме того, почему бы просто не изменить размер прямо до 224?

1 Ответ

1 голос
/ 06 мая 2020

Чтобы уточнить, случайное увеличение данных разрешено только в обучающем наборе. Вы можете применить увеличение данных к наборам проверки и тестирования при условии, что ни одно из дополнений не является случайным. Вы ясно увидите это в приведенном вами примере.

В обучающей выборке используется множество случайных дополнений (дополнения, использующие случайность, обычно имеют в названии слово «случайное»). Однако набор для проверки использует только дополнения, которые не вносят случайности в данные.

Последняя важная деталь: когда вы используете нормализацию для набора проверки и тестирования, вы ДОЛЖНЫ использовать те же самые факторы, которые вы использовали для обучающего набора. Вы увидите, что в приведенном выше примере числа остались прежними.

Необходимость изменить размер и затем центрировать кадрирование возникает из-за того, что набор val должен происходить из того же домена набора поездов, таким образом, если первый был изменен случайным образом и обрезан до 224, набор val необходимо детерминированно изменить размер и обрезать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...