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

Компанія DeepMind, яка здобула популярність своїми розробками в галузі штучного інтелекту та побудови нейронних мереж, здатних грати в комп'ютерні та настільні ігри на рівні людини, представила проект AlphaСode, що розвиває систему машинного навчання для генерації коду, здатну брати участь у змаганнях з програмування на платформі Codeforces середній результат. Ключовою особливістю розробки є здатність генерувати код мовами 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

Додати коментар або відгук