DeepMind’s latest AI project solves programming challenges like a newb

Zamegljene roke tipkajo v temi na prenosnem računalniku z osvetljeno tipkovnico in nejasno kriptično programsko kodo, ki se pojavlja na zaslonu.
v odlični formi , Če bi umetno inteligenco prosili, naj pripravi sliko za ta članek, ali bi pomislila plesen,

Googlov oddelek za umetno inteligenco DeepMind se je lotil vsega zvezda Craft Za zvijanje beljakovin, Zato morda ni presenetljivo, da so se njegovi ustvarjalci sčasoma obrnili k osebnemu zanimanju: računalniškemu programiranju. V četrtkovi izdaji Science podjetje opisuje sistem, ki ga je razvilo in proizvaja kodo kot odgovor na specifično programiranje, ki se uporablja na tekmovanjih v človeškem programiranju.

Pri povprečnem izzivu bi lahko sistem AI dosegel oceno blizu zgornje polovice udeležencev. Imel pa je nekaj težav s skaliranjem, saj je bilo manj verjetno, da bo ustvaril uspešen program pri težavah, kjer je običajno potrebno več kode. Kljub temu je nekoliko presenetljivo dejstvo, da deluje, ne da bi dal kakršne koli strukturne informacije o algoritmih ali programskih jezikih.

kos izzivu

Izzivi računalniškega programiranja so precej preprosti: ljudje dobijo nalogo, da poskušajo dokončati in izdelati kodo, ki bo opravila zahtevano nalogo. V primeru, podanem v novem dokumentu, dobijo programerji dva niza in jih prosijo, naj ugotovijo, ali je mogoče narediti manjšega od obeh tako, da namesto nekaterih pritiskov tipk, potrebnih za tipkanje večjega, zamenjajo vračalko. Poslani programi se nato preverijo, ali zagotavljajo splošno rešitev problema ali ne uspejo, ko se testirajo dodatni primeri.

Glede na dovolj primerov programov, ki lahko rešijo posamezen problem, bo verjetno mogoče oceniti algoritemsko strukturo, potrebno za uspešnost sistema AI. Vendar to ne bo splošna rešitev za noben problem; Umetna inteligenca, ki je usposobljena za en del izziva, ne bo uspela, ko bo zahtevana, da se spopade z nepovezanim izzivom.

READ  Polna luna na noč čarovnic 2020: redka modra luna, ki osvetli nebo

Da bi bilo nekaj bolj splošnega, je ekipa DeepMind to obravnavala nekoliko kot jezikovni problem. Do neke mere je izjava o izzivu izraz tega, kar bi moral narediti algoritem, medtem ko je koda izraz iste stvari, le v drugem jeziku. Torej je bil zadevni AI zasnovan tako, da ima dva dela: enega, ki sprejme opis in ga pretvori v notranjo predstavitev, in drugega, ki uporablja notranjo predstavitev za ustvarjanje funkcionalne kode.

Tudi šolanje sistema je potekalo v dveh korakih. V prvi fazi je sistem moral le obdelati posnetek vsebine na GitHubu z več kot 700 GB kode. (Dandanes se to morda ne sliši veliko, če ga lahko spravite na pogon palec, vendar ne pozabite, da je koda le neobdelano besedilo, zato dobite veliko vrstic na gigabajt.) Upoštevajte, da bi podatki v tem To vključevali tudi komentarji, ki uporabljajo naravni jezik za razlago, kaj počne bližnja koda in bi zato morali pomagati pri vhodnih in izhodnih funkcijah.

Ko je bil sistem usposobljen, je šel skozi uglaševanje. DeepMind je pripravil svoja tekmovanja v programiranju in nato rezultate vnesel v sistem: opise težav, delujočo kodo, neuspešno kodo in testne primere, uporabljene za njeno testiranje.

Podobne metode so bile preizkušene že prej, vendar DeepMind kaže, da je lahko usposabljanju namenil več sredstev. “Ključno gonilo uspešnosti AlphaCode,” navaja dokument, “je prišlo iz povečanja števila vzorcev modela za red velikosti višje kot v prejšnjem delu.”

Mojca Andreja

Nagnjena je k apatiji. Nevidni raziskovalec. Vseživljenjski guru slanine. Potovalni odvisnik. Organizator. "

Related Posts

Dodaj odgovor

Vaš e-naslov ne bo objavljen.

Read also x