구글 딥마인드, 사람처럼 코딩하는 AI 개발자 ‘알파코드’ 개발

박정연 동아사이언스 기자

입력 2022-12-12 03:00 수정 2022-12-12 03:21

|
폰트
|
뉴스듣기
|
기사공유 | 
  • 페이스북
  • 트위터
인간 수준의 프로그래밍 능력 갖춰
문제 추론해 필요한 작업만 판단
복잡한 문제에선 낮은 성적 받기도


컴퓨터 프로그래밍 인공지능(AI) ‘알파코드’ 소개 이미지. 사진 출처 딥마인드 홈페이지

인공지능(AI)이 다시 한계를 넘었다. AI에 중요한 역할을 하는 컴퓨터 프로그래밍을 인간 개발자 수준으로 수행하는 데 성공했다. 비교적 간단한 사고 과정이 필요한 프로그래밍만 가능하지만 AI가 바둑, 체스 등 게임에 이어 더 복잡한 판단 능력이 요구되는 컴퓨터 프로그래밍 작업까지 가능할 것으로 기대된다.

구글의 AI 자회사 딥마인드는 자사의 컴퓨터 프로그래밍 AI ‘알파코드’가 프로그래밍 작업에서 일반적인 인간 수준의 성능을 달성했다는 연구 결과를 국제학술지 사이언스에 8일(현지 시간) 발표했다.

알파코드는 알고리즘을 특정한 프로그래밍 언어로 변환하는 코딩 작업을 할 수 있는 AI로 개발됐다. 글로 쓰인 코딩 문제를 읽고 이를 해결하는 프로그램을 스스로 만들 수 있다. 유사한 기능을 가진 다른 AI는 짧은 코딩만이 가능한 반면 알파코드는 복잡한 문제에 대한 해답을 내놓기 위해 만들어졌다.

알파코드는 프로그래밍 능력을 확인하기 위해 5000명 이상이 참여하는 온라인 코딩대회에 10차례 참여했다. 참가자들은 출제된 문제에 대해 이를 해결하는 프로그램을 제출한 뒤 평가를 받았다. 출제된 문제는 논리력, 비판적 사고, 알고리즘 창출 등의 능력이 복합적으로 요구됐다. 제한된 조건에서 건물이나 시설의 최적 입지를 찾아내는 방법이나 보드게임에서 승리할 수 있는 전략을 수립하는 문제 등이다.

총 10개 문제에서 알파코드는 놀라운 성적을 거뒀다. 10개 문제에서 상위 20.9∼73.9%에 해당하는 답을 내놨다. 평균 성적은 상위 54.3%였다. 참가자 5000명 중 평균 이상의 작업능력을 보여준 것이다.

연구진은 알파코드가 복잡한 컴퓨터 프로그래밍 작업을 수행할 수 있도록 독특한 ‘신경망 모델’을 학습했다고 설명했다. 고성능 네트워크를 사용해 수백만 개의 다양한 프로그램을 생성한 후 문제에 적합한 프로그램을 솎아내는 방식이다. 짧은 시간에 대량의 프로그램을 만들어내는 능력이 정답에 가까운 해답을 내놓을 수 있었던 비결이라는 설명이다.

알파코드는 또 복잡한 문제를 푸는 데 필요한 추론을 해내는 모습도 보였다. 방대한 프로그램 중 문제 해결에서 가장 중요한 설명에 주목하고 이와 관련된 내용들만 추려냈다. 예를 들어 가상의 도시에서 최적의 건물 위치를 정할 때 주변 교통량이나 인구 이동량에 대한 계산을 우선적으로 수행하는 작업 등이다. 문제와 관련된 프로그램을 무작위로 생성하는 것이 아니라 독해를 통해 가장 필요한 작업이 무엇인지 판단한 것이다.

알파코드의 한계점도 있다. 복잡한 문제를 여러 개로 나눠 푸는 문제에선 상대적으로 낮은 성적을 거뒀다. 반면 문제 해결 단계가 단순하거나 경우의 수를 검토하는 문제에선 좋은 성과를 보였다. 지코 콜터 미국 카네기멜런대 컴퓨터과학과 교수는 “알파코드가 자신이 수행하는 컴퓨터 프로그래밍 작업을 완전히 이해한다고 보기는 어렵지만 이전까지 AI에서 볼 수 없었던 코딩 능력을 보여줬다”고 말했다.

한편 앞서 딥마인드가 개발한 보드게임 AI ‘딥내시’는 고전 보드게임 ‘스트라테고’에서 인간 플레이어들을 상대로 80%가 넘는 승률을 보였다. 40개의 말을 움직이며 자신의 위치를 상대방에게 숨기는 이 게임은 정보 수집은 물론이고 사람처럼 허세를 부리는 전략싸움이 중요하다는 점에서 기존의 바둑이나 체스보다는 난도가 높은 것으로 알려져 있다.



박정연 동아사이언스 기자 hesse@donga.com

라이프



모바일 버전 보기