Dokonuję klasyfikacji obrazów przy użyciu uczenia maszynowego.
Załóżmy, że mam pewne dane treningowe (obrazy) i podzielę dane na zestawy szkoleniowe i walidacyjne. Chcę też rozszerzyć dane (tworzyć nowe obrazy z oryginalnych) przez losowe obroty i wstrzykiwanie szumu. Augmentacja odbywa się offline.
Jaki jest właściwy sposób na powiększanie danych?
Najpierw podziel dane na zestawy szkoleniowe i walidacyjne, a następnie wykonaj rozbudowę danych zarówno na zestawach szkoleniowych, jak i walidacyjnych.
Najpierw podziel dane na zestawy szkoleniowe i walidacyjne, a następnie wykonaj powiększanie danych tylko na zestawie szkoleniowym.
Najpierw wykonaj rozbudowę danych, a następnie podziel dane na zestaw szkoleniowy i walidacyjny.
Odpowiedzi:
Najpierw podziel dane na zestawy szkoleniowe i walidacyjne, a następnie wykonaj powiększanie danych w zestawie szkoleniowym.
Korzystasz z zestawu sprawdzania poprawności, aby oszacować sposób działania metody na danych ze świata rzeczywistego, dlatego powinien zawierać tylko dane ze świata rzeczywistego. Dodanie rozszerzonych danych nie poprawi dokładności walidacji. W najlepszym wypadku powie coś o tym, jak dobrze twoja metoda reaguje na powiększanie danych, aw najgorszym przypadku zniszczy wyniki walidacji i interpretowalność.
źródło
nigdy nie rób 3, ponieważ dostaniesz wyciek. Załóżmy na przykład, że powiększenie to przesunięcie o 1 piksel w lewo. jeśli rozróżnienie na podział nie jest świadome, możesz uzyskać bardzo podobne próbki danych zarówno w pociągu, jak i podczas walidacji.
źródło
Rozszerzanie danych oznacza dodawanie zewnętrznych danych / informacji do istniejących danych, które są analizowane.
Tak więc, ponieważ całe rozszerzone dane byłyby wykorzystywane do uczenia maszynowego, wówczas bardziej odpowiedni byłby następujący proces:
źródło