Ogólne podejście polega na przeprowadzeniu tradycyjnej analizy statystycznej na zestawie danych w celu zdefiniowania wielowymiarowego losowego procesu, który wygeneruje dane o tych samych cechach statystycznych. Zaletą tego podejścia jest to, że twoje syntetyczne dane są niezależne od modelu ML, ale statystycznie „zbliżone” do twoich danych. (zobacz poniżej omówienie alternatywy)
Zasadniczo szacujesz wielowymiarowy rozkład prawdopodobieństwa związany z procesem. Po oszacowaniu rozkładu można wygenerować dane syntetyczne za pomocą metody Monte Carlo lub podobnych powtarzanych metod próbkowania. Jeśli twoje dane przypominają rozkład parametryczny (np. Logarytmiczny), to podejście jest proste i niezawodne. Trudną częścią jest oszacowanie zależności między zmiennymi. Zobacz: https://www.encyclopediaofmath.org/index.php/Multi-dimensional_statystyczny_analiza .
Jeśli dane są nieregularne, metody nieparametryczne są łatwiejsze i prawdopodobnie bardziej niezawodne. Wielowymiarowe oszacowanie gęstości jądra jest metodą dostępną i atrakcyjną dla osób z ML. Ogólne wprowadzenie i łącza do określonych metod można znaleźć na stronie : https://en.wikipedia.org/wiki/Nonparametric_statistics .
Aby sprawdzić, czy ten proces działał dla Ciebie, ponownie przejrzyj proces uczenia maszynowego ze zsyntetyzowanymi danymi i powinieneś otrzymać model dość zbliżony do oryginału. Podobnie, jeśli umieścisz zsyntetyzowane dane w swoim modelu ML, powinieneś otrzymać wyniki, które mają podobny rozkład jak oryginalne wyniki.
W przeciwieństwie do tego proponujesz:
[oryginalne dane -> zbuduj model uczenia maszynowego -> użyj modelu ml do wygenerowania danych syntetycznych .... !!!]
Osiąga to coś innego niż metoda, którą właśnie opisałem. Rozwiązałoby to odwrotny problem : „jakie dane wejściowe mogłyby wygenerować dany zestaw danych wyjściowych modelu”. O ile model ML nie jest nadmiernie dopasowany do oryginalnych danych, te zsyntetyzowane dane nie będą wyglądać jak oryginalne dane pod każdym względem, a nawet najbardziej.
Rozważ model regresji liniowej. Ten sam model regresji liniowej może mieć identyczne dopasowanie do danych, które mają bardzo różne cechy. Słynna demonstracja tego odbywa się poprzez kwartet Anscombe .
Chociaż nie mam referencji, uważam, że ten problem może również powstać w regresji logistycznej, uogólnionych modelach liniowych, SVM i grupowaniu metodą K-średnich.
Istnieje kilka typów modeli ML (np. Drzewo decyzyjne), w których można je odwrócić w celu wygenerowania danych syntetycznych, choć wymaga to trochę pracy. Zobacz: Generowanie danych syntetycznych w celu dopasowania wzorców wyszukiwania danych .
Istnieje bardzo powszechne podejście do radzenia sobie z niezrównoważonymi zestawami danych, zwane SMOTE, które generuje próbki syntetyczne z klasy mniejszości. Działa poprzez zaburzanie próbek mniejszości przy użyciu różnic z sąsiadami (pomnożonych przez pewną liczbę losową od 0 do 1)
Oto cytat z oryginalnego artykułu:
Więcej informacji znajdziesz tutaj .
źródło
Augmentacja danych to proces syntetycznego tworzenia próbek na podstawie istniejących danych. Istniejące dane są nieco zaburzone, aby wygenerować nowe dane, które zachowują wiele oryginalnych właściwości danych. Na przykład, jeśli dane to obrazy. Piksele obrazu można zamieniać. Wiele przykładów technik powiększania danych można znaleźć tutaj .
źródło