Какво представляват GANs? Как и защо трябва да ги използвате!



Тази статия обхваща подробното обяснение на „Какво представляват GANs“ с ограничения и предизвикателства, обхващащи учебния процес и прилагането на казуса за употреба.

Генеративните състезателни мрежи или GAN са подход за генеративно моделиране, който се използва Дълбоко обучение да се обучи моделът по хитър начин за генериране на данни, като се използва подмоделен подход. В тази статия ще се опитаме да разберем подробно „Какво представляват GANs“. В тази статия са разгледани следните теми:

Какво представляват генеративните модели?

Генеративните модели не са нищо друго освен тези модели, които използват Приближаване. В генеративен модел в данните има проби, т.е. входни променливи X, но липсва изходната променлива Y. Използваме само входните променливи, за да обучим генеративния модел и той разпознава модели от входните променливи, за да генерира изход, който е неизвестен и само въз основа на данните за обучението.





В , ние сме по-привързани към създаването на прогнозни модели от входните променливи, този тип моделиране е известен като дискриминативно моделиране. При класификационен проблем моделът трябва да различава към кой клас принадлежи примерът. От друга страна, ненаблюдаваните модели се използват за създаване или генериране на нови примери във входното разпределение.

как да използвам подниза в java -

За да дефинираме генеративни модели от гледна точка на неспециалисти, можем да кажем, че генеративните модели са в състояние да генерират нови примери от извадката, които не само са подобни на други примери, но са и неразличими.



Най-често срещаният пример за генеративен модел е a което по-често се използва като дискриминационен модел. Други примери за генеративни модели включват Gaussian Mixture Model и доста модерен пример, който е General Adversarial Networks. Нека се опитаме да разберем какво представляват GANs?

Какво представляват генеративните състезателни мрежи?

Генеративните състезателни мрежи или GAN са основан на дълбоко обучение генеративен модел, който се използва за учене без надзор. По принцип това е система, при която двама се конкурират Невронни мрежи състезавайте се помежду си за създаване или генериране на вариации в данните.

За първи път е описан в статия през 2014 г. от Ян Гудфелоу, а стандартизирана и много стабилна теория на модела е предложена от Алек Радфорд през 2016 г., която е известна като DCGAN (Deep Convolutional General Adversarial Networks). Повечето от съществуващите днес GAN използват архитектура DCGAN.



Архитектурата на GAN се състои от два подмодела, известни като Модел на генератор и Модел на дискриминатор. Нека се опитаме да разберем как всъщност работят ГАН.

Как работи?

За да разберем как работят GAN, нека го разделим.

  • Генеративни - Това означава, че моделът следва подход и е генеративен модел.
  • Състезателен - Моделът е обучен в състезателна обстановка
  • Мрежа - За обучението на модела използва невронните мрежи като алгоритми за изкуствен интелект.

В GAN има мрежа генератор, която взема проба и генерира извадка от данни и след това мрежата Discriminator решава дали данните се генерират или вземат от реалната извадка с помощта на двоичен файл проблем с помощта на сигмоидна функция, която дава изхода в диапазона от 0 до 1.

блок-схема - какво са gnas - edureka

Генеративният модел анализира разпределението на данните по такъв начин, че след фазата на обучение вероятността дискриминаторът да направи грешка се увеличава. А Дискриминаторът, от друга страна, се основава на модел, който ще изчисли вероятността извадката да идва от реалните данни, а не от генератора.

Целият процес може да бъде формализиран в математическа формула, дадена по-долу.

В горната формула:

G = генератор

D = Дискриминатор

Pdata (x) = Разпределение на реални данни

Pdata (z) = разпределител на генератора

x = извадка от реални данни

z = проба от генератор

масив от обекти java пример

D (x) = мрежа за дискриминация

G(z) = Generator Network

Сега идва учебната част за GAN, която може да бъде допълнително разделена на 2 части, които се извършват последователно.

Как да обучим ГАН?

Част 1:

Тренирайте дискриминатора и замразете генератора, което означава, че тренировъчният комплект за генератора е обърнат като Фалшив и мрежата ще направи само преминаването напред и няма да се приложи обратно разпространение.

По принцип дискриминаторът се обучава с реалните данни и проверява дали може да ги предвиди правилно, и същото с фалшивите данни, за да ги идентифицира като фалшиви.

Част 2:

Обучете генератора и замразете дискриминатора. В тази фаза получаваме резултатите от първата фаза и можем да ги използваме, за да направим по-добри от предишното състояние, за да се опитаме да заблудим дискриминатора по-добре.

Стъпки за обучение

  1. Определете проблема - дефинирайте проблема и събирайте данни.
  2. Изберете Architecture Of GAN - В зависимост от вашия проблем изберете как да изглежда вашият GAN.
  3. Тренирайте дискриминатор за реални данни - Обучете дискриминатора с реални данни, за да ги предскажете като реални за n брой пъти.
  4. Генериране на фалшиви входове за генератор - Генериране на фалшиви проби от генератора
  5. Тренирайте дискриминатор за фалшиви данни - Обучете дискриминатора да предсказва генерираните данни като фалшиви.
  6. Генератор на влакове с изхода на дискриминатор - След получаване на прогнозите за дискриминатор, обучете генератора да заблуждава дискриминатора

Предизвикателства пред генералната състезателна мрежа

Концепцията за GAN е доста очарователна, но има много неуспехи, които могат да създадат много пречки по пътя му. Някои от основните предизвикателства пред GAN са:

  1. Стабилност е необходимо между дискриминатора и генератора, в противен случай цялата мрежа просто ще падне. В случай, че Дискриминаторът е твърде мощен, генераторът няма да успее да се обучи изцяло. И ако мрежата е твърде снизходителна, ще се генерира всяко изображение, което прави мрежата безполезна.
  2. GAN се провалят с ужас при определянето на позициониране на обектите по отношение на това колко пъти обектът трябва да се появи на това място.
  3. 3-D перспективата затруднява GAN, тъй като не е в състояние да разбере перспектива , той често дава плоско изображение за триизмерен обект.
  4. GAN имат проблем с разбирането на глобални обекти . Не може да разграничи или разбере холистична структура.
  5. По-новите типове GAN са по-напреднали и се очаква изцяло да преодолеят тези недостатъци.

Генеративни съревнователни мрежови приложения

Следват няколко приложения на GAN.

Предвиждане на следващ кадър във видеоклип

Предвиждането на бъдещи събития във видеокадър е възможно с помощта на GAN. DVD-GAN или Dual Video Discriminator GAN може да генерира 256 × 256 видеоклипа със забележителна точност с дължина до 48 кадъра. Това може да се използва за различни цели, включително наблюдение, при което можем да определим дейностите в рамка, която се изкривява поради други фактори като дъжд, прах, дим и др.

Генериране на текст към изображение

Внимателен GAN, управляван от обект (obj-GAN), изпълнява синтеза на текст към изображение в две стъпки. Генерирането на семантичното оформление е началната стъпка и след това генерирането на изображението чрез синтезиране на изображението чрез използване на деконволюционен генератор на изображения е последната стъпка.

Това може да се използва интензивно за генериране на изображения чрез разбиране на надписите, оформленията и прецизиране на детайлите чрез синтезиране на думите. Има още едно проучване за storyGANs, което може да синтезира цялата раскадка от само параграфи.

Подобряване на разделителната способност на изображение

Генеративна състезателна мрежа със супер разделителна способност или SRGAN е GAN, която може да генерира изображения със супер резолюция от изображения с ниска разделителна способност с по-фини детайли и по-добро качество.

Приложенията могат да бъдат огромни, представете си по-висококачествено изображение с по-фини детайли, генерирани от изображение с ниска разделителна способност. Количеството помощ, което би оказало за идентифициране на детайли в изображения с ниска разделителна способност, може да се използва за по-широки цели, включително наблюдение, документация, сигурност, откриване на модели и т.н.

Превод от изображение към изображение

Pix2Pix GAN е модел, предназначен за превод на изображения-изображения с общо предназначение.

Интерактивно генериране на изображения

GAN могат да се използват и за генериране на интерактивни изображения, Лабораторията за компютърни науки и изкуствен интелект (CSAIL) разработи GAN, която може да генерира триизмерни модели с реалистично осветление и отражения, активирани от редактирането на формата и текстурата.

предаване по стойност и предаване чрез препратка в java

Съвсем наскоро изследователите излязоха с модел, който може да синтезира възстановено лице, анимирано от движението на човек, като същевременно запазва външния вид на лицето.

Това ни води до края на тази статия, където научихме „Какво представляват GANs“. Надявам се, че сте наясно с всичко споделено с вас в този урок.

Ако сте намерили тази статия за „Какво представляват GANs“ подходяща, разгледайте доверена компания за онлайн обучение с мрежа от над 250 000 доволни учащи, разпространени по целия свят.

Ние сме тук, за да ви помогнем при всяка стъпка по вашето пътуване и да изготвим учебна програма, предназначена за студенти и професионалисти, които искат да бъдат . Курсът е създаден, за да ви даде начален старт в програмирането на Python и да ви обучи както за основните, така и за напредналите концепции на Python, заедно с различни като

Ако попаднете на някакви въпроси, не се колебайте да зададете всичките си въпроси в раздела за коментари на „Какво представляват GANs“ и нашият екип ще се радва да отговори.