DeepMind прадставіў сістэму машыннага навучання для генерацыі кода па тэкставым апісанні задачы

Кампанія DeepMind, якая атрымала вядомасць сваімі распрацоўкамі ў галіне штучнага інтэлекту і пабудовы нейронавых сетак, здольных гуляць у кампутарныя і настольныя гульні на ўзроўні чалавека, прадставіла праект AlphaСode, які развівае сістэму машыннага навучання для генерацыі кода, здольную ўдзельнічаць у спаборніцтвах па праграмаванні на платформе Codefor сярэдні вынік. Ключавой асаблівасцю распрацоўкі з'яўляецца здольнасць генераваць код на мовах Python ці C++, прымаючы на ​​ўваходзе тэкст з пастаноўкай задачы на ​​англійскай мове.

Для тэсціравання сістэмы былі адабраны 10 новых спаборніцтваў Codeforces з больш за 5000 удзельнікамі, праведзеныя пасля завяршэння трэніроўкі мадэлі машыннага навучання. Вынікі выканання заданняў дазволілі сістэме AlphaСode увайсці прыкладна ў сярэдзіну рэйтынгу названых спаборніцтваў (54.3%). Прагназуемы агульны рэйтынг AlphaСode склаў 1238 балаў, што забяспечвае ўваходжанне ў Top 28% сярод усіх удзельнікаў Codeforces, хаця б раз якія ўдзельнічаюць у спаборніцтвах за апошнія 6 месяцаў. Адзначаецца, што праект пакуль знаходзіцца на пачатковай стадыі развіцця і ў будучыні плануецца павысіць якасць генераванага кода, а таксама развіваць AlphaСode у бок сістэм, якія дапамагаюць у напісанні кода, або сродкаў распрацоўкі прыкладанняў, якімі змогуць карыстацца людзі без навыкаў праграмавання.

У праекце выкарыстоўваецца архітэктура нейронавай сеткі "Transformer" у спалучэнні з метадамі сэмплявання і фільтрацыі, якія дазваляюць генераваць розныя непрадказальныя варыянты кода, якія адпавядаюць тэксту на натуральнай мове. Пасля фільтравання, кластарызацыі і ранжыравання з фармаванага струменя варыянтаў адсяецца найболей аптымальны працоўны код, які затым правяраецца на прадмет атрымання дакладнага выніку (у кожным заданні спаборніцтваў паказваецца прыклад уваходных дадзеных і які адпавядае гэтаму прыкладу вынік, які павінен быць атрыманы пасля выкананні праграмы).

DeepMind прадставіў сістэму машыннага навучання для генерацыі кода па тэкставым апісанні задачы

Для грубай трэніроўкі сістэмы машыннага навучання была задзейнічана кодавая база, даступная ў публічных рэпазітарах GitHub. Пасля падрыхтоўкі пачатковай мадэлі выконвалася фаза аптымізацыі, якая рэалізуецца на аснове калекцыі кода з прыкладамі задач і рашэнняў, прапанаваных удзельнікам спаборніцтваў Codeforces, CodeChef, HackerEarth, AtCoder і Aizu. Усяго для трэніроўкі было задзейнічана 715 ГБ кода з GitHub і больш за мільён прыкладаў рашэнняў тыпавых задач спаборніцтваў. Перад пераходам да генерацыі кода тэкст задачы праходзіў фазу нармалізацыі, на якой выключалася ўсё лішняе і пакідаліся толькі значныя часткі.

DeepMind прадставіў сістэму машыннага навучання для генерацыі кода па тэкставым апісанні задачы


Крыніца: opennet.ru

Дадаць каментар