Бесплатно Экспресс-аудит сайта:

13.12.2022

Нейросеть AlphaCode от Google сможет заменить программистов уровня Junior и Middle

Новое исследование показало, что представленная в феврале нейросеть DeepMind AlphaCode способна стать полноценным помощником опытных программистов, но всё ещё не сможет их заменить полностью.

AlphaCode изучила синтаксисы большого объема кода из GitHub, а затем научилась переводить описания задач в код, используя тысячи задач с соревнований по программированию. AlphaCode может генерировать до 1 млн. решений задачи (на Python или C++) и отсеивает неподходящие. После обучения AlphaCode решила около 34% поставленных задач.

Чтобы отфильтровать лишние решения:

  • AlphaCode сначала сохраняет только 1% программ, которые проходят тестовые случаи.
  • Чтобы еще больше сузить поиск решения, он группирует хранителей на основе сходства их выходных данных со сгенерированными входными данными;
  • Затем он отправляет программы из каждого кластера одну за другой, начиная с самого большого кластера, пока не остановится на успешной или не достигнет 10 представлений (средний максимум, который люди представляют на соревнованиях). Отправка из разных кластеров позволяет протестировать широкий спектр тактик программирования.
В онлайн-соревнованиях по программированию AlphaCode обыграла более 45% (из 5000) программистов. Более того, при решении задач AlphaCode не использовала готовые шаблоны, а генерировала новый код.

По словам DeepMind, нейросеть может выполнять рутинную работу с ПО, освобождая от этого опытных разработчиков, чтобы они могли сфокусироваться на задачах более высокого уровня. Также AlphaCode способна помочь людям без навыков программирования создавать простые программы, но иногда она допускает ошибки – например, создает переменные и не использует их.

В DeepMind отмечают, что текущие навыки AlphaCode применимы только для соревнований программистов, но в будущем AlphaCode сделает программирование полностью автоматизированным.