stub Autoencoder çi ye? - Yekbûn.AI
Girêdana bi me

AI 101

Autoencoder çi ye?

mm
Demê on

Ger we berê li ser teknîkên fêrbûna neçavdêrî xwendibe, dibe ku we rastî peyva "autoencode". Autoencoder yek ji wan awayên bingehîn in ku modelên fêrbûna neçapkirî têne pêşve xistin. Lê dîsa jî autoencoder bi rastî çi ye?

Bi kurtasî, kodkerên xweser bi girtina daneyan, berhevkirin û şîfrekirina daneyan, û dûv re jî daneya ji nûnertiya şîfrekirinê ji nû ve ava dikin, dixebitin. Model tê perwerde kirin heya ku winda kêm bibe û dane bi qasî ku ji nêz ve tê nûve kirin. Bi vê pêvajoyê, otoencoder dikare taybetmendiyên girîng ên daneyê fêr bibe. Digel ku ew pênaseyek bilez a otoenkoderek e, dê sûdmend be ku meriv ji nêz ve li otoenkoderan binêre û têgihîştinek çêtir a ka ew çawa dixebitin bistînin. Ev gotar dê hewil bide ku otoenkoderan rave bike, mîmariya otoencoder û serîlêdanên wan rave bike.

Autoencoder çi ye?

Otekoder torên neuralî ne. Tora neuralî ji gelek qatan pêk tê, û aliyek diyarker a otoenkoder ev e ku qatên têketinê bi qasî qata derketinê agahdarî dihewîne. Sedema ku qata têketinê û qata derketinê bi heman hejmarê yekîneyan heye ev e ku kodkerek xweser armanc dike ku daneyên têketinê dubare bike. Ew kopiyek daneyê piştî analîzkirina wê û ji nû ve avakirina wê bi şêwazek bê çavdêrî derdixe.

Daneyên ku di nav kodkerek xweser de derbas dibin ne tenê rasterast ji têketinê ber bi derketinê ve têne nexşandin, tê vê wateyê ku tor tenê daneya têketinê kopî nake. Sê hêmanên şîfrekerek xweser hene: Beşek şîfrekirinê (ketina) ya ku daneyan berhev dike, pêkhateyek ku daneya pêçandî (an jî şûşê) digire dest, û beşek dekoder (derketin). Dema ku dane di nav otokoderek de tê veguheztin, ew tê kod kirin û dûv re bi mezinahiyek piçûktir tê pelçiqandin. Dûv re tor li ser daneya kodkirî/tevlihevkirî tê perwerde kirin û ew vejandina wê daneyê derdixe.

Ji ber vê yekê çima hûn dixwazin torgilokek perwerde bikin da ku tenê daneyên ku jê re hatine dayîn ji nû ve ava bikin? Sedem ev e ku torgilok "bingeh", an taybetmendiyên herî girîng ên daneya têketinê fêr dibe. Piştî ku we torê perwerde kir, modelek dikare were afirandin ku dikare daneyên mîna hev, bi lêzêdekirin an jêbirina hin taybetmendiyên armancê re sentez bike. Mînakî, hûn dikarin otokoderek li ser wêneyên gewr perwerde bikin û dûv re modela perwerdekirî bikar bînin da ku genim / deng ji wêneyê derxînin.

Autoencoder Architecture

Ka em lê binihêrin mîmariya otoencoder. Em ê li vir mîmariya sereke ya otoencoder nîqaş bikin. Li ser vê mîmariya gelemperî cûrbecûr hene ku em ê di beşa jêrîn de nîqaş bikin.

Wêne: Michela Massi bi rêya Wikimedia Commons, (https://commons.wikimedia.org/wiki/File:Autoencoder_schema.png)

Wekî ku berê jî behs kir ku kodkerek xweser bi bingehîn dikare li sê beşên cihêreng were dabeş kirin: encoder, bottleneck, û dekoder.

Beşa şîfrekerê ya otoenkoderê bi gelemperî torgilokek veguhêz e, bi zexm ve girêdayî ye. Armanca qatên şîfrekirinê ew e ku daneya têketinê bigirin û wê di nav nûneriyek cîhê dereng de biperçiqînin, ku nûneriyek nû ya daneyê ya ku pîvan kêm kiriye çêbike.

Tebeqên kodê, an jî şûşê, bi nûnertiya pêçandî ya daneyê re mijûl dibin. Koda bottleneck bi baldarî hatî sêwirandin da ku beşên herî têkildar ên daneyên çavdêrîkirî destnîşan bike, an jî bi vî rengî taybetmendiyên daneyan ên ku ji bo nûavakirina daneyê herî girîng in destnîşan bike. Armanc li vir ew e ku were destnîşankirin ka kîjan aliyên daneyê divê werin parastin û kîjan dikarin werin avêtin. Pêdivî ye ku koda bottleneck du ramanên cihêreng hevseng bike: mezinahiya nûnertiyê (nûnerî çiqas tevlihev e) û pêwendiya guhêrbar/taybetmendiyê. Gewrê li ser giranî û nerîtên torê çalakkirina element-aqilmend pêk tîne. Ji qata şûşê re carinan wekî nûneriyek veşartî an guhêrbarên veşartî jî tê gotin.

Tebeqeya dekoderê ew e ku berpirsiyar e ku daneyên pêçandî bigire û vegere nûneriyek bi heman pîvanên daneyên orîjînal, neguhêrbar. Veguherandin bi nûnertiya cîhê veşartî ya ku ji hêla şîfrekerê ve hatî çêkirin ve tête kirin.

Mîmariya herî bingehîn a otoenkoder mîmariyek feed-pêşverû ye, bi avahiyek pir dişibihe perceptronek yek-tebeqeyê ku di perceptronên pirreng de tê bikar anîn. Mîna torên neuralî yên birêkûpêk-pêşveçûn, şîfrekera otomatîkî bi karanîna paşnavkirinê ve tê perwerde kirin.

Taybetmendiyên An Autoencoder

Cûreyên cûrbecûr yên kodkerên xweser hene, lê hemî wan xwedî hin taybetmendiyên ku wan yek dikin hene.

Autoencoders bixweber fêr dibin. Ew ne hewceyî etîketan in, û heke têra daneyan bidin, hêsan e ku meriv kodkerek otobusê bigire da ku bigihîje performansa bilind li ser celebek daneya têketinê ya taybetî.

Autoencoder taybetmendiya daneyê ne. Ev tê vê wateyê ku ew tenê dikarin daneya ku pir dişibihe daneyên ku kodkerê otomatîkî berê li ser hatine perwerde kirin berhev bikin. Otoenkoder di heman demê de winda ne, tê vê wateyê ku dê encamên modelê li gorî daneyên têketinê xera bibin.

Dema sêwirana otoenkoderek, endezyarên fêrbûna makîneyê pêdivî ye ku bala xwe bidin çar hîperparametreyên modela cihê: mezinahiya kodê, hejmara qatê, girêkên per qat, û fonksiyona windabûnê.

Mezinahiya kodê biryar dide ka çend girêkan beşa navîn a torê dest pê dikin, û hindik girêk daneyan bêtir dişoxilînin. Di otokoderek kûr de, dema ku hejmara qatan dikare her jimarek be ku endezyar guncan dibîne, divê hejmara girêkên di qatekê de kêm bibe her ku şîfreker diçe. Di vê navberê de, berevajî di dekoderê de rast e, tê vê wateyê ku her ku qatên dekoder nêzî qata dawîn dibin divê hejmara girêkên her qatê zêde bibe. Di dawiyê de, fonksiyona windakirina kodkerek xweser bi gelemperî an xaça-entropiya binary an jî xeletiya çargoşeya navîn e. Xaça-entropiya binary ji bo nimûneyên ku nirxên têketina daneyê di nav rêzek 0 - 1 de ne guncan e.

Cureyên Autoencoder

Wekî ku li jor behs kir, guhertoyên li ser mîmariya otoenkodera klasîk hene. Ka em mîmarên cihêreng ên otoencoder lêkolîn bikin.

sparse

Wêne: Michela Massi bi rêya Wikimedia Commons, CC BY SA 4.0 (https://commons.wikimedia.org/wiki/File:Autoencoder_sparso.png)

Dema ku kodkerên otomatîkî bi gelemperî xwedan stûnek e ku daneyan bi kêmkirina girêkan ve dişewitîne, otoencoder kêms alternatîfek ji wê forma xebitandinê ya tîpîk in. Di torgilokek kêm de, qatên veşartî heman mezinahiyê wekî qatên şîfreker û dekoderê diparêzin. Di şûna wê de, çalakkirinên di nav qatek diyarkirî de têne ceza kirin, wê saz dikin da ku fonksiyona windabûnê çêtir taybetmendiyên statîstîkî yên daneyên têketinê bigire. Ji bo ku ew bi rengek din were gotin, dema ku qatên veşartî yên otokoderek piçûktir ji xweya kodkerek kevneşopî bêtir yekîneyên xwe hene, tenê rêjeyek diyarkirî ji wan di her demek diyarkirî de çalak in. Fonksiyonên çalakkirinê yên herî bandorker têne parastin û yên din têne paşguh kirin, û ev astengî ji torê re dibe alîkar ku tenê taybetmendiyên herî berbiçav ên daneya têketinê destnîşan bike.

Contractive

Otoenkoderên peymanî têne sêwirandin ku li hember guheztinên piçûk ên daneyê berxwedêr bin, nûneriyek domdar a daneyan biparêzin. Ev bi sepandina cezayê li fonksiyona windakirinê pêk tê. Ev teknîka rêkûpêkkirinê li ser bingeha norma Frobenius ya matrixa Jacobian ji bo aktîvkirina enkodera têketinê ye. Bandora vê teknîka birêkûpêkkirinê ev e ku model neçar e ku kodkirinek ava bike ku tê de têketinên wekhev dê kodên wekhev hebin.

Convolutional

Autoencoders convolutional Daneyên têketinê bi dabeşkirina daneyan di binbeşan de kod dikin û dûv re van beşan vediguhezînin nîşanên hêsan ên ku bi hev re têne berhev kirin da ku nûneriyek nû ya daneyê biafirînin. Mîna torên neuralî yên pevgirêdanê, kodkerek xweser a konvolutional di fêrbûna daneyên wêneyê de pispor e, û ew parzûnek bikar tîne ku li seranserê wêneyê beş bi beş tê veguheztin. Şîfreyên ku ji hêla qatê şîfrekirinê ve têne çêkirin dikarin ji bo ji nû ve avakirina wêneyê, nîşankirina wêneyê, an guheztina geometriya wêneyê werin bikar anîn. Gava ku fîlter ji hêla torê ve hatin fêr kirin, ew dikarin li ser her têketinek têra xwe wekhev werin bikar anîn da ku taybetmendiyên wêneyê derxînin.

Denoising

Wêne: MAL bi rêya Wikimedia Commons, CC BY SA 3.0 (https://en.wikipedia.org/wiki/Pel:ROF_Denoising_Example.png)

Denoising autoencoders deng têxe nav kodkirinê, di encamê de kodkirinek ku guhertoyek xerabûyî ya daneya têketina orjînal e. Ev guhertoya xerabûyî ya daneyê ji bo perwerdekirina modelê tê bikar anîn, lê fonksiyona windabûnê nirxên derketinê bi têketina orjînal re berhev dike û ne bi têketina xerabûyî re. Armanc ev e ku tor dê bikaribe guhertoya wêneyê ya orîjînal, ne-xirabkirî ji nû ve hilberîne. Bi berhevkirina daneyên xerabûyî bi daneya orîjînal re, tor fêr dibe ka kîjan taybetmendiyên daneyê herî girîng in û kîjan taybetmendî ne girîng / xirab in. Bi gotinek din, ji bo ku modelek wêneyên xerabûyî nerazî bike, pêdivî ye ku ew taybetmendiyên girîng ên daneyên wêneyê derxîne.

Variational

Autoencoders Guhertoyên bi çêkirina texmînan li ser ka guhêrbarên dereng ên daneyan çawa têne belav kirin tevdigerin. Otokoderek guherbar ji bo taybetmendiyên cihêreng ên wêneyên perwerdehiyê / taybetmendiyên dereng dabeşek îhtîmalek çêdike. Dema perwerdehiyê, şîfreker ji bo taybetmendiyên cihêreng ên wêneyên têketinê dabeşên dereng diafirîne.

 

Ji ber ku model li şûna nirxên veqetandî taybetmendî an wêneyan wekî dabeşên Gaussian fêr dibe, ew dikare ji bo afirandina wêneyên nû were bikar anîn. Dabeşkirina Gaussian ji bo afirandina vektorek tête nimûne, ku di nav tora dekodkirinê de tê veguheztin, ku wêneyek li ser bingeha vê vektora nimûneyan çêdike. Di bingeh de, model taybetmendiyên hevpar ên wêneyên perwerdehiyê fêr dibe û hin îhtîmala ku ew ê çêbibin ji wan re destnîşan dike. Dûv re dabeşkirina îhtîmal dikare were bikar anîn da ku wêneyek berevajî bike, wêneyên nû yên ku dişibin wêneyên orjînal, perwerdehiyê çêbike.

Dema ku torê perwerde dike, daneyên kodkirî têne analîz kirin û modela naskirinê du vektoran derdixe, navgîn û dûrbûna standard a wêneyan derdixe. Li ser van nirxan belavkirinek tê afirandin. Ev ji bo dewletên cuda yên veşartî tê kirin. Dûv re dekoder nimûneyên rasthatî ji belavkirina têkildar digire û wan bikar tîne da ku têketinên destpêkê yên torê ji nû ve ava bike.

Serlêdanên Autoencoder

Autoencoders dikare ji bo berfireh were bikar anîn cur be cur ên sepanên, lê ew bi gelemperî ji bo peywirên mîna kêmkirina dimensîyonê, jêbirina daneyan, derxistina taybetmendiyê, hilberîna wêneyê, pêşbîniya rêzikan, û pergalên pêşniyarê têne bikar anîn.

Rakirina daneyan bikaranîna kodkerên xweser e ji bo derxistina genim/deng ji wêneyan. Bi heman rengî, kodkerên otomatîkî dikarin werin bikar anîn da ku celebên din ên zirara wêneyê, mîna wêneyên berbiçav an wêneyên ku beşên winda ne, tamîr bikin. Kêmkirina mezinbûnê dikare arîkariya torên kapasîteya bilind bike ku taybetmendiyên kêrhatî yên wêneyan fêr bibin, tê vê wateyê ku şîfrekerên xweser dikarin werin bikar anîn da ku perwerdehiya celebên din ên torên neuralî zêde bikin. Ev di heman demê de karanîna kodkerên xweser ji bo derxistina taybetmendiyê jî rast e, ji ber ku kodkerên xweser dikarin werin bikar anîn da ku taybetmendiyên komên din ên perwerdehiyê nas bikin da ku modelên din perwerde bikin.

Di warê hilberîna wêneyê de, otoenkoder dikarin werin bikar anîn da ku wêneyên mirovî yên sexte an karakterên anîmasyon biafirînin, ku di sêwirana pergalên naskirina rûyê an otomatîkkirina hin aliyên anîmasyonê de serîlêdan hene.

Ji bo destnîşankirina strukturên demkî yên daneyan dikarin modelên pêşbîniya rêzikan werin bikar anîn, tê vê wateyê ku kodkerek xweser dikare were bikar anîn da ku ya din jî di rêzek de çêbike. Ji ber vê yekê, ji bo hilberîna vîdyoyan dikare kodkerek xweser were bikar anîn. Di dawiyê de, kodkerên xweser ên kûr dikarin werin bikar anîn da ku pergalên pêşniyarê biafirînin bi hilgirtina qalibên ku bi berjewendiya bikarhêner ve girêdayî ne, digel ku şîfreker daneyên tevlêbûna bikarhêner analîz dike û dekoder pêşnîyarên ku li gorî qalibên sazkirî ne diafirîne.

Blogger û bernameçêkerê ku di nav de pispor e Fêrbûna Machine û Fêrbûna Kûr mijarên. Daniel hêvî dike ku alîkariya kesên din bike ku hêza AI-ê ji bo başiya civakî bikar bînin.