Rețeaua generativă adversară ( GAN pe scurt) este un algoritm de învățare automată nesupravegheat construit pe o combinație de două rețele neuronale , dintre care una (rețeaua G) generează mostre (vezi modelul generativ ), iar cealaltă (rețeaua D) încearcă să distinge mostrele corecte („autentice”) de cele incorecte (vezi Modelul discriminatoriu ). Întrucât rețelele G și D au scopuri opuse - să creeze eșantioane și să respingă mostre - între ele apare un joc antagonic . Rețeaua adversativă generativă a fost descrisă de Ian Goodfellow de la Google în 2014 [1] .
Utilizarea acestei tehnici face posibilă, în special, generarea de fotografii care sunt percepute de ochiul uman ca imagini naturale. De exemplu, există o încercare binecunoscută de a sintetiza fotografii cu pisici, care induce în eroare expertul, care le consideră a fi fotografii naturale [2] . În plus, GAN poate fi utilizat pentru a îmbunătăți calitatea fotografiilor neclare sau parțial corupte.
În sistemul GAN, una dintre rețele (rețeaua G, de la Generator) generează mostre (vezi Modelul generativ ), iar cealaltă (rețeaua D, de la Discriminator) încearcă să distingă mostrele corecte („autentice”) de cele incorecte (vezi Modelul Discriminativ ) [1] . Folosind un set de variabile spațiale latente , rețeaua generativă încearcă să modeleze un nou model amestecând mai multe dintre modelele originale. Rețeaua discriminativă este antrenată să facă distincția între eșantioanele autentice și cele false, iar rezultatele distincției sunt transmise la intrarea rețelei generative, astfel încât să poată alege cel mai bun set de parametri latenți, iar rețeaua discriminativă nu ar mai fi capabilă să distinge mostrele autentice de cele false. Astfel, scopul rețelei G este de a crește rata de eroare a rețelei D, iar scopul rețelei D este, dimpotrivă, de a îmbunătăți acuratețea recunoașterii [1] [3] .
Rețeaua de discriminare D, analizând mostre din datele originale și din cele falsificate de generator, atinge o anumită acuratețe de discriminare. În acest caz, generatorul începe cu combinații aleatorii ale parametrilor spațiului latenți (vezi distribuția normală multivariată ), iar după evaluarea probelor obținute de către rețeaua D, se aplică metoda de propagare inversă a erorii , care îmbunătățește calitatea generării prin corectarea intrării. set de parametri latenți. Treptat, imaginile artificiale la ieșirea rețelei generative devin din ce în ce mai calitative [4] . Rețeaua D este implementată ca o rețea neuronală convoluțională , în timp ce rețeaua G, dimpotrivă, desfășoară imaginea pe baza unor parametri ascunși.
În procesul de învățare competitivă comună, dacă sistemul este suficient de echilibrat, se ajunge la o stare de echilibru minimax , în care ambele rețele și-au îmbunătățit semnificativ calitatea, iar acum imaginile generate pot fi folosite aproape ca și pe cele reale.
Ideea învățării contradictorii a fost propusă în 2013 de Li, Gauci și Gross [5] . Această metodă este numită și „învățare Turing” [6] deoarece își propune să treacă testul Turing .
Principiul disputei într-un GAN este adesea descris prin metafore. De exemplu, o rețea generativă este asemănată cu un falsificator sau un falsificator de tablouri, iar o rețea discriminatorie este asemănată cu un expert care încearcă să recunoască un fals [7] [8] . Un alt exemplu este imaginea a doi boxeri, dintre care unul a studiat cu maestrul, iar al doilea este obligat să imite elevul [9] .
Într-o aplicație populară de generare a feței umane, fotografiile reale acționează ca date autentice, iar o rețea generativă încearcă să creeze fețe artificiale prin combinații variate de parametri latenți precum culoarea părului, proporțiile feței, forma ochilor, forma nasului, dimensiunea urechii, barba și mustața. , etc. d [10] [11]
Articolele cercetătorilor oferă exemple de implementare GAN bazată pe biblioteca TensorFlow [12] [13] .
GAN-urile sunt folosite pentru a obține imagini fotorealiste , de exemplu, pentru elemente de design industrial , design interior , haine, genți, serviete, scene de jocuri pe calculator etc. GAN-urile sunt, de asemenea, utilizate în rețeaua Facebook [14] . Recent, GAN-urile au fost folosite pentru a pregăti cadre de film sau animație [15] . De asemenea, aceste sisteme ajută la recrearea unui model tridimensional al unui obiect folosind imagini fragmentare [16] și la îmbunătățirea imaginilor obținute din observații astronomice [17] .
Tipuri de rețele neuronale artificiale | |
---|---|
|
Învățare automată și extragerea datelor | |
---|---|
Sarcini | |
Învățarea cu un profesor | |
analiza grupului | |
Reducerea dimensionalității | |
Prognoza structurală | |
Detectarea anomaliilor | |
Modele grafice probabilistice | |
Rețele neuronale | |
Consolidarea învățării |
|
Teorie | |
Reviste și conferințe |
|