Sanjaju Li Neuroni Električne Ovce? Tvorac Prvih Neuronskih Mreža Ispričao Je O Svojoj Evoluciji I Budućnosti - Alternativni Prikaz

Sadržaj:

Sanjaju Li Neuroni Električne Ovce? Tvorac Prvih Neuronskih Mreža Ispričao Je O Svojoj Evoluciji I Budućnosti - Alternativni Prikaz
Sanjaju Li Neuroni Električne Ovce? Tvorac Prvih Neuronskih Mreža Ispričao Je O Svojoj Evoluciji I Budućnosti - Alternativni Prikaz

Video: Sanjaju Li Neuroni Električne Ovce? Tvorac Prvih Neuronskih Mreža Ispričao Je O Svojoj Evoluciji I Budućnosti - Alternativni Prikaz

Video: Sanjaju Li Neuroni Električne Ovce? Tvorac Prvih Neuronskih Mreža Ispričao Je O Svojoj Evoluciji I Budućnosti - Alternativni Prikaz
Video: Teorija evolucije pobijena biologijom (Pacifička zlatna zviždovka) 2024, Svibanj
Anonim

Jeffrey Hinton suvoditelj je koncepta dubokog učenja, dobitnik nagrade Turing za 2019. godinu i Googleov inženjer. Prošli tjedan, tijekom I / O konferencije za programere, Wired ga je intervjuirao i razgovarao o njegovoj fascinaciji mozgom i njegovoj sposobnosti da modelira računalo na temelju neuronske strukture mozga. Dugo vremena su se te ideje smatrale otkačenima. Zanimljiv i zabavan razgovor o svijesti, Hintonovim budućim planovima i o tome mogu li se računala naučiti sanjati.

Što će se dogoditi s neuronskim mrežama?

Započnimo s danima kada ste napisali svoje prve, vrlo utjecajne članke. Svi su rekli: "To je pametna ideja, ali mi stvarno ne možemo dizajnirati računala na ovaj način." Objasnite zašto ste inzistirali na svom i zašto ste bili tako sigurni da ste pronašli nešto važno.

Image
Image

Činilo mi se da mozak ne može raditi na bilo koji drugi način. Mora raditi proučavajući snagu veza. A ako želite natjerati uređaj da radi nešto pametno, imate dvije mogućnosti: ili ga programirate ili on uči. A nitko nije programirao ljude, pa smo morali studirati. Ova metoda je morala biti točna.

Objasnite što su neuronske mreže. Objasnite izvorni koncept

Uzmete relativno jednostavne elemente za obradu koji vrlo nejasno podsjećaju na neurone. Imaju dolazne veze, svaka veza ima težinu i ta se težina može mijenjati tijekom treninga. Ono što neuron čini jest poduzeti akcije na vezama pomnoženim s utezima, zbrojiti ih, a zatim odlučiti hoće li poslati podatke. Ako je zbroj upisan dovoljno velik, čini ishod. Ako je iznos negativan, ništa se ne šalje. To je sve. Sve što trebate učiniti je povezati oblak tih neurona s utezima i smisliti kako promijeniti te težine, a oni će učiniti sve. Jedino je pitanje kako ćete promijeniti utege.

Promotivni video:

Kad ste shvatili da je ovo grubi prikaz načina na koji mozak funkcionira?

O, da, sve je prvotno bilo namijenjeno. Dizajniran da liči na mozak na poslu.

Tako ste u nekom trenutku svoje karijere počeli shvaćati kako mozak funkcionira. Možda ste imali dvanaest godina, možda dvadeset i pet. Kad ste odlučili pokušati modelirati računala poput mozga?

Da odmah. To je bila cijela poanta. Ova cijela ideja bila je stvoriti uređaj za učenje koji uči poput mozga, prema idejama ljudi o tome kako mozak uči, mijenjajući snagu veza. I to nije bila moja ideja, Turing je imao istu ideju. Iako je Turing izmislio većinu temelja standardne informatike, vjerovao je da je mozak dezorganizirani uređaj sa slučajnim utezima i koristio je učvršćivanje za promjenu veza, tako da je mogao naučiti bilo što. A vjerovao je da je to najbolji put do inteligencije.

I slijedili ste Turingovu ideju da je najbolji način da se napravi stroj dizajnira ga poput ljudskog mozga. Tako funkcionira ljudski mozak, pa napravimo sličan stroj

Da, nije samo Turing mislio tako. Mnogi su tako mislili.

Kad su nastupila mračna vremena? Kad se dogodilo da su drugi ljudi koji su radili na tome i vjerovali da je Turingova ideja ispravna, počeli odustajati, a vi ste nastavili savijati liniju?

Uvijek je bilo šačica ljudi koji su vjerovali bez obzira na sve, posebno na području psihologije. No, među računalnim znanstvenicima, pretpostavljam u 90-ima, dogodilo se da su skupovi podataka bili prilično mali, a računala nisu bila tako brza. S malim setovima podataka, druge metode, kao što su strojevi za podršku vektora, pokazale su se nešto bolje. Nisu bili toliko zbunjeni bukom. Dakle, bilo je tužno jer smo u 80-ima razvili metodu širenja leđa, što je vrlo važno za neuronske mreže. Mislili smo da će on sve riješiti. I bili su zbunjeni da on nije ništa odlučio. Pitanje je zaista bilo na ljestvici, ali tada to nismo znali.

Image
Image

Zašto ste mislili da to ne radi?

Mislili smo da to ne radi jer nismo imali sasvim ispravne algoritme i ne baš ispravne objektivne funkcije. Dugo sam mislio da je to zbog toga što smo pokušavali vršiti učenje pod nadzorom kada označavate podatke, a mi smo morali nenadzirano učenje kada učimo iz neoznačenih podataka. Pokazalo se da je pitanje uglavnom na ljestvici.

Zanimljivo je. Problem je bio u tome što niste imali dovoljno podataka. Mislili ste da imate pravu količinu podataka, ali ste ih pogrešno označili. Dakle, upravo ste pogrešno dijagnosticirali problem?

Mislila sam da je greška što uopće koristimo etikete. Većina vašeg treninga odvija se bez upotrebe naljepnica, samo pokušavate modelirati strukturu u podacima. Zapravo i dalje tako mislim. Mislim da, budući da računala postaju brža, ako je računalo dovoljno brzo, onda je za bilo koji skup podataka određene veličine bolje trenirati bez nadzora. A nakon što dovršite nekontrolirano učenje, možete učiti s manje oznaka.

Dakle, devedesetih godina nastavljate s istraživanjima, u akademiji ste, još uvijek objavljujete, ali ne rješavate velike probleme. Jeste li ikada imali trenutak kad ste rekli: "Znate što, dovoljno je. Hoću li pokušati učiniti nešto drugo? " Ili ste samo sebi rekli da ćete nastaviti duboko učenje [to je koncept dubokog učenja, dubokog učenja neuronskih mreža

Da. Nešto poput ovoga bi trebalo raditi. Hoću reći, veze u mozgu se na neki način nauče, tek trebamo smisliti kako. A vjerojatno postoji mnogo različitih načina za jačanje veza u procesu učenja; mozak koristi jednu od njih. Mogu biti i drugi načini. Ali definitivno vam treba nešto što može učvrstiti te veze tijekom učenja. Nikad nisam sumnjao u to.

Nikad niste sumnjali u to. Kad se činilo da djeluje?

Jedno od najvećih razočaranja 80-ih bilo je to da ako napravimo mreže s mnogo skrivenih slojeva, ne bismo ih mogli trenirati. To nije u potpunosti točno, jer možete trenirati relativno jednostavne procese poput rukopisa. Ali nismo znali kako trenirati većinu dubokih neuronskih mreža. I oko 2005. godine smislio sam način da treniram duboke mreže bez nadzora. Unosite podatke, recimo u piksele i uvježbavate nekoliko detektora detalja, što je samo dobro objasnilo zašto su pikseli takvi kakvi jesu. Zatim tim detektorima dijelova unosite podatke i uvježbavate drugačiji skup detektora dijelova kako bismo mogli objasniti zašto određeni detekteri dijela imaju određene korelacije. Nastavljate trenirati sloj po sloj. Ali najzanimljivije je bilošto bi se moglo matematički razgraditi i dokazalo da svaki put kad trenirate novi sloj nećete nužno poboljšati model podataka, već ćete se baviti nizom koliko je vaš model dobar. A taj se raspon poboljšavao sa svakim dodavanjem sloja.

Što mislite pod opsegom koliko je vaš model dobar?

Nakon što nabavite model, možete postaviti pitanje: "Koliko neobično ovaj model nalazi te podatke?" Pokažete joj podatke i postavite pitanje: "Nalazite li sve to onako kako se očekuje ili je to neobično?" I to bi se moglo izmjeriti. I želio sam nabaviti model, dobar model koji gleda na podatke i kaže: „Da, da. Znao sam. Ovo nije iznenađujuće ". Uvijek je vrlo teško izračunati koliko će neobičan model pronaći podatke. Ali možete izračunati raspon toga. Možemo reći da će model smatrati ove podatke manje neobičnim od ovih. I moglo bi se pokazati kako se dodavanjem novih slojeva detektorima detalja, model formira, a sa svakim dodanim slojem dok pronalazi podatke, raspon razumijevanja koliko neobično pronalazi podatke postaje sve bolji.

Dakle, oko 2005. napravili ste taj matematički proboj. Kada ste počeli dobivati prave odgovore? S kojim podacima ste radili? Vaš prvi proboj bio je s govornim podacima, zar ne?

Bili su to samo rukopisni brojevi. Jako jednostavno. Otprilike u isto vrijeme počeo je razvoj GPU-a (Graphics Processing Unit). A ljudi koji su radili s neuronskim mrežama počeli su koristiti GPU-ove 2007. godine. Imao sam vrlo dobrog učenika koji je počeo koristiti GPU kako bi pronašao ceste u zračnim fotografijama. Napisao je kôd koji su potom usvojili drugi studenti pomoću GPU-a za prepoznavanje fonema u govoru. Iskoristili su ovu ideju pred-treninga. I kad je predobrada završena, samo su objesili oznake na vrh i koristili leđno širenje. Pokazalo se da je moguće stvoriti vrlo duboku mrežu koja je prethodno osposobljena za taj način. A onda bi se mogla primijeniti povratna širina i ona je stvarno uspjela. U prepoznavanju govora izvrsno je funkcionirao. U početku, međutim,nije bilo puno bolje.

Je li to bilo bolje od komercijalno dostupnog prepoznavanja govora? Zaobiđeni najboljim znanstvenim radovima o prepoznavanju govora?

Na relativno malom skupu podataka nazvanom TIMIT bio je nešto bolji od najboljeg akademskog rada. IBM je također učinio puno posla.

Ljudi su brzo shvatili da bi sve to - budući da zaobilazi standardne modele koji su bili u razvoju već 30 godina - moglo funkcionirati sasvim dobro ako se malo razvije. Moji maturanti otišli su u Microsoft, IBM i Google, a Google je vrlo brzo stvorio prepoznavanje radnog govora. Do 2012. godine, ovo djelo, koje je učinjeno još 2009. godine, pogodilo je Android. Android je odjednom puno bolji u prepoznavanju govora.

Pričaj mi o trenutku kada vi, koji 40 godina pohranjujete ove ideje, 20 godina objavljujete ovu temu, odjednom zaobiđite svoje kolege. Kakav je to osjećaj?

Pa, u to vrijeme sam samo 30 godina pohranjivao te ideje!

Točno točno

Bio je sjajan osjećaj da se sve to napokon pretvorilo u pravi problem.

Sjećate li se kad ste prvi put dobili podatke koji to ukazuju?

Ne.

U redu. Tako steknete ideju da to funkcionira s prepoznavanjem govora. Kada ste počeli primjenjivati neuronske mreže na druge probleme?

U početku smo ih počeli primjenjivati na sve druge probleme. George Dahl, s kojim smo izvorno radili na prepoznavanju govora, koristio ih je za predviđanje može li se molekula vezati za nešto i postati dobar lijek. A bilo je i natjecanja. Jednostavno je primijenio našu standardnu tehnologiju, izgrađenu za prepoznavanje govora, kako bi predvidio aktivnost droga i pobijedio na natjecanju. To je bio znak da radimo nešto vrlo svestrano. Tada se pojavio student koji je rekao: "Znate, Jeff, ova će stvar funkcionirati na prepoznavanju slika, a Fei-Fei Li je stvorio prikladan skup podataka za to. Postoji javni natječaj, napravimo nešto."

Dobili smo rezultate koji su daleko nadmašili standardni računalni vid. Bila je to 2012. godina.

Odnosno, u ova tri područja ste se isticali: modeliranje kemikalija, govor, glas. Gdje ste propali?

Razumijete li da su neuspjesi privremeni?

Pa, što razdvaja područja u kojima to sve djeluje najbrže i područja gdje to traje najduže? Izgleda da se vizualna obrada, prepoznavanje govora i nešto poput osnovnih ljudskih stvari koje radimo sa osjetilnom percepcijom smatraju prvim preprekama koje treba prevladati, zar ne?

Da i ne, jer postoje i druge stvari koje radimo dobro - iste motoričke sposobnosti. Vrlo smo dobri u kontroli motora. Naši su mozgovi za to definitivno opremljeni. I tek sada se neuronske mreže počinju natjecati s najboljim drugim tehnologijama za to. Oni će na kraju pobijediti, ali sada tek počinju pobjeđivati.

Mislim da je razmišljanje, apstraktno razmišljanje zadnje što učimo. Mislim da će one biti među posljednjim stvarima koje ove neuronske mreže nauče raditi.

I tako stalno ponavljate da će neuronske mreže na kraju prevladati svuda

Pa, mi smo neuronske mreže. Sve što možemo, oni mogu.

Istina, ali ljudski mozak je daleko od najučinkovitije računalne mašine koja je ikada izgrađena

Definitivno ne.

Definitivno nije moj ljudski mozak! Postoji li način da se modeliraju strojevi koji su mnogo učinkovitiji od ljudskog mozga?

Image
Image

Filozofski gledano, nemam zamjerki na ideju da bi mogao postojati neki potpuno drugačiji način svega toga. Možda ako započnete s logikom, pokušate automatizirati logiku, smislite neki dokaz maštovitih teorema, razlog, a onda odlučite da upravo kroz obrazloženje dolazite do vizualne percepcije, možda će takav pristup pobijediti. Ali ne još. Nemam filozofski prigovor takvoj pobjedi. Samo znamo da je mozak za to sposoban.

Ali postoje i stvari koje našem mozgu ne mogu dobro proći. Znači li to da ih neuronske mreže neće moći dobro odraditi?

Sasvim moguće, da.

A postoji i poseban problem, a to je da ne razumijemo u potpunosti kako djeluju neuronske mreže, zar ne?

Da, mi zapravo ne razumijemo kako oni funkcioniraju.

Ne razumijemo kako djeluju neuronske mreže od vrha prema dolje. To je osnovni element funkcioniranja neuronskih mreža koji ne razumijemo. Objasnite to i onda mi dopustite da mi postavi sljedeće pitanje: ako znamo kako sve to funkcionira, kako to onda sve funkcionira?

Kada gledate moderne sustave računalnog vida, većina ih je uglavnom usmjerena prema naprijed; ne koriste povratne veze. A onda postoji još nešto u modernim sustavima računalnog vida koji su vrlo skloni protivničkim pogreškama. Možete malo promijeniti nekoliko piksela, a ono što je bila slika pande i još uvijek izgleda potpuno poput pande, odjednom će vam postati noj u razumijevanju neuronske mreže. Očito je metoda zamjene piksela zamišljena na takav način da bi prevarila neuronsku mrežu u razmišljanju o noju. Ali poanta je u tome što je za tebe još uvijek panda.

U početku smo mislili da sve dobro funkcionira. Ali tada, suočeni s činjenicom da su gledali pandu i bili sigurni da je to noj, zabrinuli smo se. Mislim da je dio problema to što se oni ne pokušavaju rekonstruirati iz pogleda na visoku razinu. Pokušavaju učiti izolirano, gdje uče samo slojevi detektora detalja, a cijeli je cilj promijeniti utege kako bi što bolje pronašli pravi odgovor. Nedavno smo otkrili, ili Nick Frost, pronašli smo u Torontu da dodavanje rekonstrukcije povećava protivnički otpor. Mislim da se u ljudskom vidu rekonstrukcija koristi za učenje. A zato što toliko učimo radeći rekonstrukciju, mnogo smo otporniji na protivničke napade.

Vjerujete da komunikacija nizvodno u neuronskoj mreži omogućuje testiranje kako se nešto rekonstruira. Provjerite i uvjerite se da je to panda, a ne nojevi

Mislim da je ovo važno, da.

Ali znanstvenici mozga se s tim uopće ne slažu?

Znanstvenici s mozgom ne tvrde da ako imate dvije regije korteksa na putu percepcije, uvijek će postojati obrnute veze. Oni se raspravljaju o čemu se radi. Možda će vam trebati pažnja, učenje ili obnova. Ili za sve tri.

Tako da ne znamo što je povratna informacija. Gradite li svoje nove neuronske mreže, polazeći od pretpostavke da … ne, čak i nije tako - gradite povratnu informaciju, jer je potrebna za obnovu u vašim neuronskim mrežama, iako zapravo ne razumijete kako mozak funkcionira?

Da.

Nije li ovo trik? Pa, to je, ako pokušavaš napraviti nešto poput mozga, ali nisi siguran radi li to mozak?

Ne baš. Nisam u računalnoj neuroznanosti. Ne pokušavam modelirati kako mozak funkcionira. Gledam mozak i kažem: "Djeluje. Ako želimo raditi nešto drugo što djeluje, moramo gledati i na to smo nadahnuti." Inspirirani smo neuronima, ne gradeći neuronski model. Stoga je cijeli model neurona koji koristimo inspiriran činjenicom da neuroni imaju mnogo veza i da mijenjaju težine.

Zanimljivo je. Da sam računalni znanstvenik koji radi na neuronskim mrežama i želio bih zaobići Jeffa Hintona, jedna bi mogućnost bila izgraditi komunikaciju prema dolje i utemeljiti je na drugim modelima znanosti o mozgu. Na temelju obuke, a ne obnove

Da je bilo boljih modela, pobijedili biste. Da.

Vrlo je, vrlo zanimljivo. Dotaknimo se općenitije teme. Dakle, neuronske mreže mogu riješiti sve moguće probleme. Postoje li zagonetke u ljudskom mozgu koje neuronske mreže ne mogu ili ne žele pokriti? Na primjer, emocije

Ne.

Dakle, ljubav se može rekonstruirati neurološkom mrežom? Svijest se može rekonstruirati?

Apsolutno. Jednom kad shvatite što te stvari znače. Mi smo neuronske mreže, zar ne? Svijest je za mene posebno zanimljiva tema. Ali … ljudi zapravo ne znaju što misle ovom riječi. Postoji mnogo različitih definicija. I mislim da je to prilično znanstveni izraz. Stoga, ako ste prije 100 godina pitali ljude: što je život? Odgovorili bi im: "Pa, živa bića imaju životnu snagu, a kad umru, životna sila ih napušta. Ovo je razlika između živih i mrtvih ili imate vitalnost ili je nemate. " Sada nemamo životne snage, mislimo da je ovaj koncept došao prije znanosti. A kad jednom počnete malo razumijevati biokemiju i molekularnu biologiju, više vam ne treba životna snaga, shvatit ćete kako to sve stvarno djeluje. I ista će se stvar, mislim, dogoditi i sa sviješću. Mislim,da je svijest pokušaj objašnjenja mentalnih pojava pomoću entiteta. A ta suština, nije potrebna. Jednom kad to možete objasniti, možete objasniti kako radimo sve što ljude čini svjesnim bićima, objasnite različita značenja svijesti bez uključivanja bilo kakvih posebnih entiteta.

Ispada da nema emocija koje se ne bi mogle stvoriti? Ne postoji misao koja se ne može stvoriti? Ništa što ljudski um nije sposoban da teoretski ne bi mogao biti uspostavljen potpuno funkcionirajućom neuronskom mrežom nakon što zapravo shvatimo kako mozak funkcionira?

John Lennon otpjevao je nešto slično u jednoj od svojih pjesama.

Jeste li 100% sigurni u to?

Ne, ja sam Bayesian, tako da sam siguran za 99,9%.

Ok, što je onda 0,01%?

Pa, možda bismo, na primjer, svi mogli biti dio veće simulacije.

Pošteno. Pa što o mozgu učimo iz svog rada na računalima?

Pa, mislim da je iz onoga što smo naučili u posljednjih 10 godina zanimljivo da ako uzmete sustav s milijardama parametara i objektivnom funkcijom - na primjer, da popunite prazninu nizom riječi - djeluje bolje nego što bi trebalo. Djelovat će mnogo bolje nego što možda očekujete. Mogli biste pomisliti, a mnogi ljudi će u tradicionalnom AI istraživanju pomisliti da možete uzeti sustav s milijardu parametara, pokrenuti ga nasumičnim vrijednostima, izmjeriti gradijent ciljne funkcije, a zatim je podešavati kako biste poboljšali ciljnu funkciju. Moglo bi se pomisliti da bi se beznadežni algoritam neizbježno zaglavio. Ali ne, ispada da je ovo stvarno dobar algoritam. I što je veća skala, to bolje djeluje. I ovo je otkriće bilo u osnovi empirijsko. Iza svega je, naravno, stajala neka teorija, ali otkriće je bilo empirijsko. A sada,otkad smo to otkrili, čini se vjerojatnijim da mozak izračunava gradijent neke objektivne funkcije i ažurira težine i snagu sinaptičke veze kako bi održao korak s tim gradijentom. Samo trebamo otkriti koja je to ciljna funkcija i kako se pogoršava.

Ali to nismo razumjeli primjerom mozga? Ne razumijete ažuriranje stanja?

To je bila teorija. Davno su ljudi mislili da je to moguće. Ali u pozadini su uvijek bili neki računalni znanstvenici koji su rekli: "Da, ali ideja da je sve slučajno i da učenje dolazi zbog pada gradijenta neće raditi s milijardom parametara, morate povezati puno znanja." Sada znamo da to nije slučaj. Možete samo unijeti slučajne parametre i naučiti sve.

Zaronimo malo dublje. Kako sve više i više učimo, vjerojatno ćemo nastaviti učiti sve više i više o tome kako funkcionira ljudski mozak dok provodimo ogromna ispitivanja modela temeljenih na našem razumijevanju moždane funkcije. Jednom kada sve ovo shvatimo bolje, hoće li doći do točke u kojoj ćemo ponovno prevesti mozak da postanemo mnogo učinkovitiji strojevi?

Ako stvarno razumijemo što se događa, možemo poboljšati neke stvari poput obrazovanja. I mislim da ćemo se poboljšati. Bilo bi vrlo čudno napokon shvatiti što se događa u vašem mozgu, kako to uči, a ne prilagoditi se tako da bolje učite.

Što mislite, kako ćemo za nekoliko godina iskoristiti ono što smo naučili o mozgu i kako duboko učenje djeluje na transformaciju obrazovanja? Kako biste promijenili časove?

Nisam siguran da ćemo puno naučiti za par godina. Mislim da će trebati više vremena da se promijeni obrazovanje. Ali govoreći o tome, [digitalni] pomoćnici postaju prilično pametni. A kad pomoćnici mogu razumjeti razgovore, mogu razgovarati i školovati djecu.

A teoretski, ako razumemo mozak bolje, možemo programirati pomagače kako bi bolje razgovarali s djecom, na temelju onoga što su već naučili

Da, ali nisam mnogo razmišljao o tome. Radim nešto drugo. Ali sve se to čini prilično slično istini.

Možemo li razumjeti kako snovi rade?

Da, jako me zanimaju snovi. Toliko me zanima da imam barem četiri različite teorije snova.

Reci nam o njima - o prvom, drugom, trećem, četvrtom

Davno je postojala takva vrsta zvana Hopfield mreže, a oni su proučavali uspomene kao lokalne privlačnice. Hopfield je otkrio da će se, ako pokušate staviti previše sjećanja, one pokvariti. Uzet će dva lokalna privlačenja i kombinirati ih u jedan privlačni negdje na pola puta između njih.

Tada su Francis Crick i Graham Mitchison došli i rekli da se ove lažne zakone možemo riješiti učenjem (tj. Zaboravljajući ono što smo naučili). Isključujemo unos podataka, živčanu mrežu stavimo u nasumično stanje, pustimo da se smiri, kažemo da je loše, promijenimo veze da ne padne u ovo stanje i na taj način možemo učiniti da mreža pohrani više sjećanja.

Tada smo ušli Terry Seinowski i rekli: "Gledaj, ako nemamo samo neurone koji drže uspomene, već i hrpu drugih neurona, možemo li pronaći algoritam koji koristi sve ove ostale neurone da nam pomognu pri sjećanju sjećanja?" … Kao rezultat toga stvorili smo algoritam strojnog učenja Boltzmanna. A Boltzmannov algoritam strojnog učenja imao je izuzetno zanimljivo svojstvo: pokazujem podatke i on nekako prolazi kroz ostale jedinice dok ne dođu u vrlo sretno stanje, a nakon toga povećava snagu svih veza, temeljene na činjenici da su dvije jedinice aktivne u isto vrijeme.

Isto tako, trebali biste imati fazu u kojoj isključite ulaz, algoritam „šuška“i dovedete ga u stanje u kojem je sretan, tako da fantazira, a čim ima fantaziju, kažete: „Uzmi sve parove neurona koje su aktivne i smanjuju čvrstoću veza."

Objašnjavam vam algoritam kao postupak. Ali u stvarnosti je ovaj algoritam proizvod matematike i pitanje: "Kako trebate promijeniti te lance veza kako se ova neuronska mreža sa svim tim skrivenim jedinicama podataka ne čini iznenađujućim?" A trebala bi postojati i druga faza, koju nazivamo negativnom fazom, kada mreža funkcionira bez unosa podataka i neznanja, bez obzira u to stanje u koje se nalazite.

Sanjamo mnogo sati svake večeri. A ako se iznenada probudite, možete reći da ste upravo sanjali, jer san je pohranjen u kratkoročnom pamćenju. Znamo da snove vidimo mnogo sati, ali ujutro se, nakon buđenja, sjećamo samo posljednjeg sna, a ostalih se ne sjećamo, što je vrlo uspješno, jer bi ih netko mogao pogriješiti za stvarnost. Pa zašto se uopće ne sjećamo svojih snova? Prema Crick-u, ovo je značenje snova: otkriti ove stvari. Nekako učite obrnuto.

Terry Seinovski i ja pokazali smo da je to zapravo maksimalna vjerojatnost postupka učenja za Boltzmannove strojeve. Ovo je prva teorija o snovima.

Image
Image

Želim prijeći na vaše ostale teorije. Ali moje je pitanje: Jeste li uspjeli osposobiti neki od svojih algoritama dubokog učenja da zapravo sanjam?

Neki od prvih algoritama koji su mogli naučiti raditi sa skrivenim jedinicama bili su Boltzmannovi strojevi. Bili su krajnje neučinkoviti. Ali kasnije sam pronašao način rada s aproksimacijama, što se pokazalo učinkovitim. A to je zapravo poslužilo kao poticaj za nastavak rada s dubokim učenjem. To su stvari koje su istodobno uvježbavale jedan sloj detektora značajki. A to je bio učinkovit oblik Boltzmannove restriktivne naprave. I tako je učinila takvo obrnuto učenje. No umjesto da zaspi, mogla je samo maštati nakon svake oznake podataka.

Ok, pa androidi zapravo sanjaju o električnim ovcama. Prijeđimo na teorije dvije, tri i četiri

Druga teorija nazvana je Algoritam buđenja spavanja. Trebate trenirati generativni model. I imate ideju stvoriti model koji može generirati podatke, ima slojeve detektora značajki i aktivira viši i donji sloj, i tako dalje, sve do aktiviranja piksela - u osnovi stvarajući sliku. Ali želio bi je naučiti nečem drugom. Želite prepoznati podatke.

I zato morate napraviti algoritam s dvije faze. U fazi buđenja dolazi do podataka, pokušava ih prepoznati, a umjesto proučavanja veza koje koristi za prepoznavanje, proučava generativne veze. Podaci dolaze, aktiviram skrivene jedinice. A onda pokušavam ove skrivene jedinice naučiti oporaviti ove podatke. Uči rekonstruirati u svakom sloju. No, pitanje je kako naučiti izravne veze? Dakle, ideja je da ako znate izravne veze, možete naučiti obrnute veze, jer biste mogli naučiti obrnuti inženjer.

Sada se također ispostavilo da, ako koristite obrnute veze, možete naučiti i izravne pridruživanja, jer jednostavno možete započeti na vrhu i generirati neke podatke. A budući da generirate podatke, znate stanja svih skrivenih slojeva i možete proučavati izravne veze radi vraćanja tih stanja. I evo što se događa: ako započnete sa slučajnim vezama i pokušate koristiti obje faze naizmjenično, uspjet ćete. Da bi uspio, morate isprobati različite opcije, ali uspjet će.

Ok, pa što je s druge dvije teorije? Ostalo nam je samo osam minuta, mislim da neću imati vremena pitati o svemu

Dajte mi još sat vremena i ja ću vam reći za ostala dva.

Razgovarajmo o tome što slijedi. Gdje je vaš istraživački naslov? Koje probleme pokušavate riješiti sada?

U konačnici ćete morati raditi na nečemu što djelo još nije završeno. Mislim da možda dobro radim na nečemu što nikad neću dovršiti - nazvanim kapsulama, teoriji o tome kako se vizualna percepcija vrši rekonstrukcijom i kako se informacije usmjeravaju na pravo mjesto. Dva glavna motivirajuća faktora bila su da se u standardnim neuronskim mrežama informacija, aktivnost u sloju jednostavno automatski negdje pošalje i ne donesete odluku gdje ćete ga poslati. Ideja kapsule bila je donošenje odluka o tome gdje treba slati informacije.

Sada kada sam počeo raditi na kapsulama, vrlo pametni ljudi u Googleu izmislili su transformatore koji rade isto. Oni odlučuju gdje će poslati podatke i to je velika pobjeda.

Vratit ćemo se sljedeće godine i razgovarati o teorijama snova broj tri i broj četiri.

Ilya Khel