DeepMind topshiriqning matn tavsifidan kod yaratish uchun mashinani o'rganish tizimini taqdim etdi

Sun'iy intellekt sohasidagi ishlanmalari va inson darajasida kompyuter va stol o'yinlarini o'ynashga qodir neyron tarmoqlarni qurish bilan mashhur bo'lgan DeepMind kompaniyasi ishtirok etishi mumkin bo'lgan kodlarni yaratish uchun mashinani o'rganish tizimini ishlab chiquvchi AlphaCode loyihasini taqdim etdi. Codeforces platformasidagi dasturlash musobaqalarida va o'rtacha natijani ko'rsating. Rivojlanishning asosiy xususiyati Python yoki C++-da ingliz tilidagi muammo bayoni bilan matnni kiritish sifatida kod yaratish qobiliyatidir.

Tizimni sinab ko'rish uchun 10 dan ortiq ishtirokchi bilan 5000 ta yangi Codeforces musobaqalari tanlab olindi, ular mashinani o'rganish modelini o'qitish tugagandan so'ng o'tkazildi. Vazifalarni bajarish natijalari AlphaCode tizimiga ushbu musobaqalar reytingining taxminan o'rtasiga kirishga imkon berdi (54.3%). Alphasode-ning bashorat qilingan umumiy reytingi 1238 ballni tashkil etdi, bu oxirgi 28 oy ichida kamida bir marta musobaqalarda qatnashgan barcha Codeforces ishtirokchilari orasida Top 6% ga kirishni ta'minlaydi. Ta'kidlanishicha, loyiha hali rivojlanishning dastlabki bosqichida va kelajakda yaratilgan kod sifatini yaxshilash, shuningdek, kod yozishda yordam beruvchi tizimlar uchun AlphaCode yoki ilovalarni ishlab chiqish vositalarini ishlab chiqish rejalashtirilgan. dasturlash qobiliyatiga ega bo'lmagan odamlar tomonidan qo'llaniladi.

Loyiha Transformer neyron tarmog'i arxitekturasidan namuna olish va filtrlash usullari bilan birgalikda tabiiy til matniga mos keladigan turli xil oldindan aytib bo'lmaydigan kod variantlarini yaratish uchun foydalanadi. Filtrlash, klasterlash va tartiblashdan so'ng, yaratilgan variantlar oqimidan eng maqbul ishchi kod chiqarib tashlanadi, so'ngra to'g'ri natija olinganligiga ishonch hosil qilish uchun tekshiriladi (har bir tanlov topshirig'i kiritilgan ma'lumotlarning namunasini va ushbu misolga mos keladigan natijani ko'rsatadi. , dasturni bajargandan so'ng olinishi kerak).

DeepMind topshiriqning matn tavsifidan kod yaratish uchun mashinani o'rganish tizimini taqdim etdi

Mashinani o'rganish tizimini taxminan o'rgatish uchun biz ommaviy GitHub omborlarida mavjud bo'lgan kod bazasidan foydalandik. Dastlabki modelni tayyorlagandan so'ng, Codeforces, CodeChef, HackerEarth, AtCoder va Aizu tanlovlari ishtirokchilari tomonidan taklif qilingan muammolar va echimlar misollari bilan kodlar to'plamiga asoslangan optimallashtirish bosqichi amalga oshirildi. Trening uchun jami 715 Gb GitHub kodi va odatdagi raqobat muammolarini hal qilishning milliondan ortiq misollari ishlatilgan. Kod ishlab chiqarishga o'tishdan oldin, vazifa matni normalizatsiya bosqichidan o'tdi, uning davomida keraksiz hamma narsa yo'q qilindi va faqat muhim qismlar qoldi.

DeepMind topshiriqning matn tavsifidan kod yaratish uchun mashinani o'rganish tizimini taqdim etdi


Manba: opennet.ru

a Izoh qo'shish