DeepMind представи система за машинно обучение за генериране на код на базата на текстово описание на задачата

Компанията DeepMind, известна с разработките си в областта на изкуствения интелект и създаването на невронни мрежи, способни да играят в компютърни и настолни игри на ниво сравнимо с човешкото, представи проекта AlphaCode, който развива система за машинно обучение за генериране на код, способна да участва в състезания по програмиране на платформата Codeforces и да показва среден резултат. Ключовата характеристика на разработката е способността да генерира код на языците Python или C++, приемайки текстово описание на задачата на английски език.

За тестване на системата бяха избрани 10 нови състезания Codeforces с над 5000 участници, проведени след завършване на обучението на модела за машинно обучение. Резултатите от изпълнението на задачите позволиха на системата AlphaCode да влезе в около средата на класирането на посочените състезания (54.3%). Прогнозираният общ рейтинг на AlphaCode възлезе на 1238 точки, което осигурява влизане в Top 28% сред всички участници в Codeforces, които поне веднъж са участвали в състезания през последните 6 месеца. Отбелязва се, че проектът все още е в ранна фаза на развитие и в бъдеще се планира повишаване на качеството на генерирания код, както и развитие на AlphaCode към системи, помагащи в писането на код, или средства за разработка на приложения, с които могат да работят хора без умения за програмиране.

В проекта се използва архитектура на невронната мрежа „Transformer“ в комбинация с методи за семплиране и филтриране, позволяващи генерирането на различни непредсказуеми варианти на код, съответстващи на текста на естествения език. След филтриране, клъстеризиране и ранжиране от създадения поток от варианти се отсеират най-оптималния работещ код, който след това се проверява за получаване на правилен резултат (в всяка задача на състезанията се посочва пример за входни данни и съответстващият резултат, който трябва да бъде получен след изпълнението на програмата).

DeepMind представи система за машинно обучение за генериране на код на базата на текстово описание на задачата

За груба тренировка на машинно обучение беше използвана кодова база, достъпна в публичните репозитории на GitHub. След подготовката на началния модел, се извърши фаза на оптимизация, реализирана на базата на колекция код с примери за задачи и решения, предлагани на участниците в състезанията Codeforces, CodeChef, HackerEarth, AtCoder и Aizu. Общо за тренировката беше използвано 715 ГБ код от GitHub и над милион примери за решения на типови задачи от състезания. Преди преминаване към генерирането на код, текстът на задачата премина през фаза на нормализация, при която се изключваше всичко излишно и оставаха само значителните части.

DeepMind представи система за машинно обучение за генериране на код на базата на текстово описание на задачата


Източник: opennet.ru
Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster