AlphaCode, koda paaudzes AI

DeepMind, kas pazīstams ar savu attīstību mākslīgā intelekta jomā un nesen atklāto neironu tīklu veidošana, kas spēj spēlēt datorspēles un galda spēles cilvēka līmenī AlphaCode projekts kas apraksta, kā mašīnmācīšanās sistēma koda ģenerēšanai ka vari piedalīties programmēšanas konkursos Codeforces platformā un demonstrēt vidēju rezultātu.

Tiek minēts, ka projekts izmanto “Transformatora” neironu tīkla arhitektūru kombinācijā ar citām izlases un filtrēšanas metodēm, lai ģenerētu dažādus neparedzamus koda variantus, kas atbilst dabiskās valodas tekstam.

Metode, kā tā darbojas Alfakods pamatā ir filtrēšana, grupēšana un kārtošana, pēc tam no ģenerētās opciju straumes tiek atlasīts optimālākais darba kods, kas pēc tam tiek pārbaudīts, lai nodrošinātu pareizu rezultātu (katrā konkursa uzdevumā ir piemērs ievades dati un atbilstošs rezultāts) šim piemēram, kas jāiegūst pēc programmas izpildes).

Mēs detalizēti aprakstām AlphaCode, kas izmanto uz transformatoriem balstītus valodu modeļus, lai ģenerētu kodu vēl nebijušā mērogā, un pēc tam inteliģenti filtrē nelielu daudzsološu programmu kopu.

Mēs apstiprinām savu sniegumu, izmantojot konkursus, kas tiek mitināti Codeforces — populārā platformā, kurā regulāri tiek rīkoti konkursi, kas piesaista desmitiem tūkstošu dalībnieku no visas pasaules, lai pārbaudītu savas kodēšanas prasmes. Novērtēšanai atlasījām 10 nesenus konkursus, katrs jaunāks par mūsu apmācību datiem. AlphaCode bija aptuveni vienāds ar vidējo konkurentu, atzīmējot pirmo reizi, kad AI koda ģenerēšanas sistēma ir sasniegusi konkurētspējīgu veiktspējas līmeni programmēšanas sacensībās.

Aptuvenai sistēmas apmācībai mašīnmācība, tiek uzsvērts, ka tika izmantots publiskajās GitHub krātuvēs pieejamais bāzes kods. Pēc sākotnējā modeļa sagatavošanas tika veikta optimizācijas fāze, kuras pamatā bija kodu kolekcija ar problēmu piemēriem un risinājumiem, kas tika piedāvāti Codeforces, CodeChef, HackerEarth, AtCoder un Aizu konkursu dalībniekiem.

Kopumā AlphaCode veidošanai Izmantots 715 GB GitHub koda un vairāk nekā miljons konkursa tipisku problēmu risinājumu piemēru. Pirms koda ģenerēšanas uzdevuma teksts izgāja normalizācijas fāzi, kurā tika izslēgts viss liekais un palika tikai nozīmīgākās daļas.

Lai pārbaudītu sistēmu, tika atlasīti 10 jauni Codeforces konkursi ar vairāk nekā 5.000 dalībniekiem, kas notika pēc mašīnmācīšanās modeļa apmācības pabeigšanas.

Varu droši teikt, ka AlphaCode rezultāti pārsniedza manas cerības. Es biju skeptisks, jo pat vienkāršās konkurences problēmās bieži vien ir nepieciešams ne tikai ieviest algoritmu, bet arī (un tas ir grūtākais) to izdomāt. AlphaCode izdevās veikt daudzsološa jauna konkurenta līmenī. Es nevaru sagaidīt, lai redzētu, kas notiks!

MIKS MIRZAJANOVS

KODEFORCES DIBINĀTĀJS

Uzdevumu rezultāti atļauti lai ievadītu AlphaCode sistēmu aptuveni šo sacensību kvalifikācijas vidū (54,3%). AlphaCode prognozētais kopējais rezultāts bija 1238 punkti, kas garantē iekļūšanu Top 28% starp visiem Codeforces dalībniekiem, kuri pēdējo 6 mēnešu laikā ir piedalījušies sacensībās vismaz vienu reizi.

Jāpiebilst, ka ir novērojams, ka projekts vēl ir sākotnējā izstrādes stadijā un ka nākotnē plānots uzlabot ģenerētā koda kvalitāti, kā arī attīstīt AlphaСode uz sistēmām, kas palīdz rakstīt kodu, vai lietojumprogrammu izstrādes rīki, kurus var izmantot cilvēki bez programmēšanas prasmēm.

Beidzot ja jūs interesē uzzināt vairāk par to, jums jāzina, ka galvenā izstrādes funkcija ir iespēja ģenerēt kodu Python vai C++, kā teksta ievadi izmantojot problēmas izklāstu angļu valodā.

Jūs varat pārbaudīt detaļas Šajā saitē.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.