13일 전

알파코드를 활용한 경쟁 수준의 코드 생성

Yujia Li, David Choi, Junyoung Chung, Nate Kushman, Julian Schrittwieser, Rémi Leblond, Tom Eccles, James Keeling, Felix Gimeno, Agustin Dal Lago, Thomas Hubert, Peter Choy, Cyprien de Masson d&#39, Autume, Igor Babuschkin, Xinyun Chen, Po-Sen Huang, Johannes Welbl, Sven Gowal, Alexey Cherepanov, James Molloy, Daniel J. Mankowitz, Esme Sutherland Robson, Pushmeet Kohli, Nando de Freitas, Koray Kavukcuoglu, Oriol Vinyals
알파코드를 활용한 경쟁 수준의 코드 생성
초록

프로그래밍은 강력하고 널리 사용되는 문제 해결 도구이다. 프로그래머를 보조하거나 스스로 프로그램을 생성할 수 있는 시스템을 개발하면 프로그래밍의 생산성과 접근성을 크게 향상시킬 수 있으나, 현재까지 인공지능(AI)의 혁신을 통합하는 것은 여전히 도전적인 과제였다. 최근 대규모 언어 모델들은 코드 생성 능력에서 놀라운 성과를 보여주며 간단한 프로그래밍 작업을 수행할 수 있게 되었으나, 단순히 지시를 코드로 번역하는 것을 넘어서 알고리즘 이해와 복잡한 자연어 해석이 요구되는 더 복잡하고 미리 보지 못한 문제에 대해서는 여전히 낮은 성능을 보이고 있다. 예를 들어, 알고리즘 지식과 복잡한 자연어를 이해해야 하는 경쟁 프로그래밍 문제는 여전히 극도로 도전적인 과제이다. 이러한 격차를 극복하기 위해 우리는 더 깊은 추론 능력이 필요한 문제에 대해 새로운 해결책을 생성할 수 있는 코드 생성 시스템인 알파코드(AlphaCode)를 소개한다. 코드포스(Codeforces) 플랫폼에서 최근 열린 프로그래밍 대회를 기반으로 한 시뮬레이션 평가에서 알파코드는 참가자 수 5,000명 이상인 대회에서 평균적으로 상위 54.3%의 순위를 기록했다. 우리는 우수하고 신뢰할 수 있는 성능을 달성하기 위해 세 가지 핵심 요소가 필수적임을 발견했다. 첫째, 훈련과 평가를 위한 광범위하고 정제된 경쟁 프로그래밍 데이터셋이며, 둘째, 대규모이면서 샘플링이 효율적인 트랜스포머 기반 아키텍처이며, 셋째, 대규모 모델 샘플링을 통해 탐색 공간을 탐색한 후 프로그램의 동작 기반으로 필터링을 통해 최종 제출물 수를 소수로 축소하는 절차이다.

알파코드를 활용한 경쟁 수준의 코드 생성 | 최신 연구 논문 | HyperAI초신경