Sieć generatywnych przeciwników - Generative adversarial network

Sieć generatywna ( GAN ) to klasa frameworków uczenia maszynowego zaprojektowana przez Iana Goodfellowa i jego współpracowników w czerwcu 2014 roku. Dwie sieci neuronowe rywalizują ze sobą w grze (w formie gry o sumie zerowej , w której zysk jednego agenta to strata innego agenta).

Biorąc pod uwagę zestaw szkoleniowy, ta technika uczy się generować nowe dane z takimi samymi statystykami jak zestaw szkoleniowy. Na przykład, GAN wyszkolony na zdjęciach może generować nowe zdjęcia, które dla ludzkich obserwatorów wydają się przynajmniej powierzchownie autentyczne i mają wiele realistycznych cech. Choć pierwotnie zaproponowane jako forma modelu generatywnego dla uczenia się bez nadzoru , GAN okazały się również przydatne w uczeniu się częściowo nadzorowanym , w pełni nadzorowanym , oraz w uczeniu ze wzmocnieniem .

Podstawowa idea GAN opiera się na „pośrednim” szkoleniu przez dyskryminator, który sam jest również dynamicznie aktualizowany. Zasadniczo oznacza to, że generator nie jest wyszkolony, aby minimalizować odległość do określonego obrazu, ale raczej oszukiwać dyskryminator. Umożliwia to modelowi uczenie się w sposób nienadzorowany.

metoda

Generatywna sieć generuje kandydatów natomiast dyskryminacyjną sieć ocenia je. Konkurs działa w zakresie dystrybucji danych. Zazwyczaj sieć generatywna uczy się mapować z przestrzeni utajonej do dystrybucji danych będących przedmiotem zainteresowania, podczas gdy sieć dyskryminacyjna odróżnia kandydatów wytworzonych przez generator od rzeczywistej dystrybucji danych. Celem szkoleniowym sieci generatywnej jest zwiększenie wskaźnika błędów sieci dyskryminacyjnej (tj. „oszukanie” sieci dyskryminacyjnej poprzez wyprodukowanie nowych kandydatów, o których dyskryminator myśli, że nie są zsyntetyzowane (będących częścią prawdziwego rozkładu danych)).

Znany zbiór danych służy jako wstępne dane uczące dyskryminatora. Szkolenie polega na przedstawieniu go za pomocą próbek z uczącego zestawu danych, aż do osiągnięcia akceptowalnej dokładności. Generator działa w oparciu o to, czy uda mu się oszukać dyskryminator. Zazwyczaj generator jest zaszczepiany randomizowanymi danymi wejściowymi, które są pobierane z predefiniowanej przestrzeni utajonej (np. wielowymiarowy rozkład normalny ). Następnie kandydaci zsyntetyzowani przez generator są oceniani przez dyskryminator. Niezależne procedury propagacji wstecznej są stosowane do obu sieci, dzięki czemu generator wytwarza lepsze próbki, podczas gdy dyskryminator staje się bardziej wykwalifikowany w oznaczaniu próbek syntetycznych. Generator używany do generowania obrazu jest zwykle dekonwolucyjną siecią neuronową, a dyskryminatorem jest splotowa sieć neuronowa .

GAN często cierpią z powodu „załamania się trybu”, w którym nie potrafią prawidłowo uogólnić, tracąc całe tryby z danych wejściowych. Na przykład GAN wyszkolony na zbiorze danych MNIST zawierającym wiele próbek każdej cyfry może mimo wszystko nieśmiało pominąć podzbiór cyfr ze swojego wyjścia. Niektórzy badacze postrzegają podstawowy problem jako słabą sieć dyskryminacyjną, która nie zauważa wzorca przeoczenia, podczas gdy inni przypisują winę złemu doborowi funkcji celu . Zaproponowano wiele rozwiązań. Konwergencja sieci GAN to otwarty problem.

GAN są niejawnymi modelami generatywnymi , co oznacza, że ​​nie modelują one jawnie funkcji wiarygodności ani nie zapewniają środków do znalezienia zmiennej latentnej odpowiadającej danej próbce, w przeciwieństwie do alternatyw, takich jak model generujący oparty na przepływie .

Aplikacje

Liczba aplikacji GAN gwałtownie wzrosła.

Moda, sztuka i reklama

GAN mogą być używane do generowania sztuki; The Verge napisał w marcu 2019 roku, że „Obrazy stworzone przez GAN stały się definiującym wyglądem współczesnej sztuki AI”. GAN można również wykorzystać do malowania zdjęć lub tworzenia zdjęć wymyślonych modelek mody, bez konieczności zatrudniania modelki, fotografa lub wizażysty lub płacenia za studio i transport.

Nauki ścisłe

GAN mogą ulepszać obrazy astronomiczne i symulować soczewkowanie grawitacyjne w badaniach ciemnej materii. Wykorzystano je w 2019 roku do pomyślnego modelowania rozkładu ciemnej materii w określonym kierunku w przestrzeni i przewidywania soczewkowania grawitacyjnego , które nastąpi.

Zaproponowano GAN jako szybki i dokładny sposób modelowania formowania się wysokoenergetycznych strumieni i modelowania pęków za pomocą kalorymetrów w eksperymentach fizyki wysokich energii . Sieci GAN zostały również przeszkolone w celu dokładnego przybliżania wąskich gardeł w kosztownych obliczeniowo symulacjach eksperymentów fizyki cząstek elementarnych. Zastosowania w kontekście obecnych i proponowanych eksperymentów CERN wykazały potencjał tych metod w przyspieszaniu symulacji i/lub poprawie wierności symulacji.

Gry wideo

W 2018 r. sieci GAN dotarły do społeczności twórców gier wideo jako metoda skalowania tekstur 2D o niskiej rozdzielczości w starych grach wideo poprzez odtworzenie ich w rozdzielczości 4K lub wyższej za pomocą treningu obrazu, a następnie próbkowanie w dół, aby dopasować je do natywnej wersji gry. rozdzielczość (z wynikami zbliżonymi do metody supersamplingu antyaliasingu ). Po odpowiednim przeszkoleniu GAN zapewniają wyraźniejszy i ostrzejszy obraz tekstury 2D o wyższej jakości niż oryginał, przy pełnym zachowaniu poziomu szczegółów, kolorów itp. Znane przykłady szerokiego wykorzystania GAN obejmują Final Fantasy VIII , Final Fantasy IX , Resident Evil REmake HD Remaster i Max Payne .

Obawy dotyczące złośliwych aplikacji

Obraz generowany przez StyleGAN, który do złudzenia przypomina zdjęcie prawdziwej osoby. Ten obraz został wygenerowany przez StyleGAN na podstawie analizy portretów.
Kolejny przykład głębokiego uczenia się GAN

Pojawiły się obawy dotyczące potencjalnego wykorzystania syntezy ludzkiego obrazu opartej na GAN do złowrogich celów, np. do produkcji fałszywych, potencjalnie obciążających zdjęć i filmów. GAN można wykorzystać do generowania unikalnych, realistycznych zdjęć profilowych osób, które nie istnieją, w celu zautomatyzowania tworzenia fałszywych profili w mediach społecznościowych.

W 2019 r. stan Kalifornia rozważył i uchwalił 3 października 2019 r. ustawę AB-602 , która zakazuje używania technologii syntezy ludzkiego obrazu do tworzenia fałszywej pornografii bez zgody przedstawionych osób, oraz ustawę AB-730 , która zakazuje dystrybucji zmanipulowanych filmów wideo kandydata politycznego w ciągu 60 dni od wyborów. Oba projekty ustaw były autorstwa członka Zgromadzenia Marca Bermana i podpisane przez gubernatora Gavina Newsoma . Przepisy wejdą w życie w 2020 roku.

Program Media Forensics DARPA bada sposoby przeciwdziałania fałszywym mediom, w tym fałszywym mediom produkowanym przy użyciu GAN.

Transfer nauki

Najnowocześniejsze badania nad uczeniem transferu wykorzystują GAN do wymuszenia wyrównania ukrytej przestrzeni cech, na przykład w uczeniu głębokiego wzmacniania. Działa to poprzez podawanie osadzeniom zadania źródłowego i docelowego do dyskryminatora, który próbuje odgadnąć kontekst. Wynikająca z tego strata jest następnie (odwrotnie) propagowana wstecz przez enkoder.

Różne zastosowania

GAN może być stosowany do wykrywania obrazów jaskry, pomagając we wczesnej diagnozie, która jest niezbędna do uniknięcia częściowej lub całkowitej utraty wzroku.

Sieci GAN, które wytwarzają fotorealistyczne obrazy, mogą być wykorzystywane do wizualizacji wystroju wnętrz , wzornictwa przemysłowego , butów, toreb i elementów odzieży lub elementów do scen gier komputerowych . Takie sieci zostały zgłoszone jako używane przez Facebooka .

Sieci GAN mogą rekonstruować modele 3D obiektów na podstawie obrazów , generować nowe obiekty jako chmury punktów 3D i modelować wzorce ruchu na wideo.

GAN można wykorzystać do postarzenia zdjęć twarzy, aby pokazać, jak wygląd danej osoby może się zmieniać wraz z wiekiem.

Sieci GAN mogą być również używane do przesyłania stylów map w kartografii lub do powiększania obrazów widoku ulicy.

Informacje zwrotne dotyczące trafności sieci GAN mogą być wykorzystywane do generowania obrazów i zastępowania systemów wyszukiwania obrazów.

Odmiana sieci GAN jest wykorzystywana do uczenia sieci w celu generowania optymalnych wejść sterujących do nieliniowych systemów dynamicznych . Tam, gdzie sieć dyskryminacyjna jest znana jako krytyk, który sprawdza optymalność rozwiązania, a sieć generatywna jest znana jako sieć adaptacyjna, która generuje optymalną kontrolę. Sieć krytyczna i adaptacyjna szkolą się nawzajem, aby przybliżyć nieliniową kontrolę optymalną.

GAN zostały wykorzystane do zobrazowania wpływu zmiany klimatu na określone domy.

Model GAN ​​o nazwie Speech2Face może zrekonstruować obraz twarzy osoby po wysłuchaniu jej głosu.

W 2016 r. GAN zostały wykorzystane do wygenerowania nowych cząsteczek dla różnych celów białkowych związanych z rakiem, stanem zapalnym i zwłóknieniem. W 2019 roku molekuły generowane przez GAN zostały poddane walidacji eksperymentalnej na myszach.

Podczas gdy większość aplikacji GAN dotyczy przetwarzania obrazu, praca została również wykonana z danymi szeregów czasowych. Na przykład powtarzające się sieci GAN (R-GAN) zostały wykorzystane do generowania danych energetycznych na potrzeby uczenia maszynowego.

Historia

Najbardziej bezpośrednią inspiracją dla GAN była ocena kontrastu szumu, która wykorzystuje tę samą funkcję straty co GAN i którą Goodfellow badał podczas swojego doktoratu w latach 2010–2014.

Inni ludzie mieli podobne pomysły, ale nie rozwijali ich w podobny sposób. Pomysł dotyczący sieci adwersarzy został opublikowany w poście na blogu z 2010 roku autorstwa Olli Niemitalo. Pomysł ten nigdy nie został wdrożony i nie wiązał się ze stochastycznością w generatorze, a zatem nie był modelem generatywnym. Obecnie jest znany jako warunkowy GAN lub cGAN. Pomysł podobny do GAN został wykorzystany do modelowania zachowania zwierząt przez Li, Gauci i Grossa w 2013 roku.

Uczenie maszynowe kontradyktoryjności ma inne zastosowania poza modelowaniem generatywnym i może być stosowane do modeli innych niż sieci neuronowe. W teorii sterowania, uczenie kontradyktoryjności oparte na sieciach neuronowych zostało wykorzystane w 2006 roku do szkolenia niezawodnych kontrolerów w sensie teorii gier, poprzez naprzemienne iteracje między polityką minimalizacji (kontroler) i polityką maksymalizacji (zakłócenie).

W 2017 roku GAN został użyty do poprawy obrazu, skupiając się na realistycznych teksturach, a nie na dokładności pikseli, zapewniając wyższą jakość obrazu przy dużym powiększeniu. W 2017 roku powstały pierwsze twarze. Zostały one wystawione w lutym 2018 roku w Grand Palais. Twarze wygenerowane przez StyleGAN w 2019 roku porównały się z deepfake'ami .

Począwszy od 2017 roku, technologia GAN zaczęła zaznaczać swoją obecność na arenie sztuk pięknych, wraz z pojawieniem się nowo opracowanej implementacji, o której mówiono, że przekroczyła próg możliwości generowania unikalnych i atrakcyjnych obrazów abstrakcyjnych, a tym samym została nazwana „CAN ”, dla „kreatywnej sieci kontradyktoryjnej”. System GAN został wykorzystany do stworzenia obrazu Edmond de Belamy w 2018 roku , który sprzedano za 432 500 USD. Artykuł z początku 2019 roku autorstwa członków oryginalnego zespołu CAN omawiał dalsze postępy w tym systemie, a także rozważał ogólne perspektywy sztuki wykorzystującej sztuczną inteligencję.

W maju 2019 r. naukowcy z Samsunga zademonstrowali system oparty na GAN, który produkuje filmy mówiącej osoby, mając tylko jedno zdjęcie tej osoby.

W sierpniu 2019 r. utworzono duży zestaw danych składający się z 12197 utworów MIDI, każdy ze sparowanymi tekstami i wyrównaniem melodii do generowania melodii neuronowych z tekstów przy użyciu warunkowego GAN-LSTM (patrz źródła w GitHub AI Melody Generation from Lyrics ).

W maju 2020 r. badacze Nvidii nauczyli system sztucznej inteligencji (nazywany „GameGAN”), aby odtworzyć grę Pac-Mana, po prostu obserwując, w którą gra.

Klasyfikacja

Dwukierunkowy GAN

Podczas gdy standardowy model GAN ​​uczy się mapowania z przestrzeni utajonej do dystrybucji danych, modele odwrotne, takie jak dwukierunkowy GAN (BiGAN) i autoenkodery adwersyjne również uczą się mapowania z danych do przestrzeni utajonej. To mapowanie odwrotne umożliwia rzutowanie rzeczywistych lub wygenerowanych przykładów danych z powrotem do przestrzeni utajonej, podobnie jak koder autokodera wariacyjnego . Zastosowania modeli dwukierunkowych obejmują uczenie częściowo nadzorowane , interpretowalne uczenie maszynowe i neuronowe tłumaczenie maszynowe .

Bibliografia

Zewnętrzne linki