W centrum tego pytania
„Jak… możemy przetwarzać dane z prawdziwej dystrybucji i dane z modelu generatywnego w tej samej iteracji?
Analiza publikacji fundamentalnej
Na stronie, o której mowa, Understanding Generative Adversarial Networks (2017) , doktorant Daniel Sieta poprawnie odwołuje się do Generative Adversarial Networks, Goodfellow, Pouget-Abadie, Mirza, Xu, Warde-Farley, Ozair, Courville i Bengio, czerwiec 2014 . To abstrakcyjne stwierdzenie: „Proponujemy nowe ramy do szacowania modeli generatywnych za pomocą procesu kontradyktoryjnego, w którym jednocześnie trenujemy dwa modele ...” W tym oryginalnym artykule zdefiniowano dwa modele zdefiniowane jako MLP (wielowarstwowe perceptrony).
- Model generatywny, G
- Model dyskryminacyjny, D
Te dwa modele są kontrolowane w taki sposób, że jeden zapewnia formę negatywnego sprzężenia zwrotnego w stosunku do drugiego, a zatem termin przeciwny.
- G jest przeszkolony do przechwytywania rozkładu danych zestawu przykładów wystarczająco dobrze, aby oszukać D.
- D jest szkolony, aby odkryć, czy jego dane wejściowe są próbkami G lub zestawem przykładów dla systemu GAN.
(Zbiór przykładów dla systemu GAN jest czasami określany jako rzeczywiste próbki, ale mogą one nie być bardziej rzeczywiste niż wygenerowane. Obie są tablicami numerycznymi w komputerze, jeden zestaw z wewnętrznym źródłem, a drugi z zewnętrznym pochodzenie. To, czy zewnętrzne pochodzą z kamery skierowanej na jakąś scenę fizyczną, nie ma znaczenia dla działania GAN.)
Prawdopodobnie oszukiwanie D jest równoznaczne z maksymalizacją prawdopodobieństwa, że D wygeneruje tyle fałszywych trafień i fałszywych negatywów, ile koryguje kategoryzacje, po 50%. W informatyce oznacza to, że granica informacji D dla G zbliża się do 0, gdy t zbliża się do nieskończoności. Jest to proces maksymalizacji entropii G z perspektywy D, a więc terminu entropia krzyżowa.
Jak dokonuje się konwergencja
Ponieważ funkcja straty odtworzona z zapisu Siety w pytaniu z 2017 roku jest funkcją D, zaprojektowaną w celu zminimalizowania entropii krzyżowej (lub korelacji) między dwoma rozkładami, gdy zastosuje się je do pełnego zestawu punktów dla danego stanu szkolenia.
( ( x1, y1) , D ) = 1D ( x1)
Istnieje oddzielna funkcja strat dla G, zaprojektowana w celu maksymalizacji entropii krzyżowej. Zauważ, że istnieją dwa poziomy szczegółowości treningu w systemie.
- Gra porusza się w grze dwuosobowej
- To z próbek treningowych
Tworzą one zagnieżdżoną iterację z zewnętrzną iteracją w następujący sposób.
- Trening G przebiega przy użyciu funkcji straty G.
- Próbne wzorce wprowadzania są generowane z G w jego bieżącym stanie treningu.
- Trening D przebiega przy użyciu funkcji straty D.
- Powtórz, jeśli entropia krzyżowa nie jest jeszcze wystarczająco zmaksymalizowana, D nadal może dyskryminować.
Kiedy D w końcu przegrywa grę, osiągnęliśmy nasz cel.
- G odzyskał dystrybucję danych treningowych
- D został zredukowany do nieskuteczności („wszędzie prawdopodobieństwo 1/2”)
Dlaczego szkolenie równoległe jest konieczne?
Gdyby te dwa modele nie były trenowane w obie strony do symulacji współbieżności, konwergencja w płaszczyźnie przeciwnej (iteracja zewnętrzna) nie pojawiłaby się w przypadku unikalnego rozwiązania, o którym mowa w artykule z 2014 r.
Więcej informacji
Poza pytaniem kolejnym przedmiotem zainteresowania w pracy Siety jest to, że „Zła konstrukcja funkcji straty generatora” może prowadzić do niewystarczających wartości gradientu, aby pokierować opadaniem i wytworzyć coś, co czasami nazywa się nasyceniem. Nasycenie to po prostu redukcja sygnału sprzężenia zwrotnego, który kieruje opadanie w propagacji wstecznej do chaotycznego hałasu wynikającego z zaokrąglania zmiennoprzecinkowego. Termin pochodzi od teorii sygnałów.
Sugeruję przestudiowanie artykułu z 2014 r. Autorstwa Goodfellow i in. (Doświadczeni badacze), aby dowiedzieć się więcej o technologii GAN niż na stronie z 2017 r.
Możesz traktować kombinację danych
z
wejściowych ix
wejściowych jako pojedynczą próbkę i oceniasz, jak dobrze dyskryminator przeprowadził klasyfikację każdego z nich.To dlatego post później dzieli jeden
y
naE(p~data)
iE(z)
- zasadniczo, masz różne oczekiwania względemy
każdego z danych wejściowych dyskryminatora i musisz zmierzyć oba w tym samym czasie, aby ocenić, jak dobrze radzi sobie dyskryminator.Właśnie dlatego funkcja straty jest pomyślana jako kombinacja zarówno dodatniej klasyfikacji rzeczywistego wkładu, jak i ujemnej klasyfikacji ujemnego wkładu.
źródło