
현재 필요한 인력의 수에 비해, 전문적인 프로그래머의 수는 부족하다. 그런데 만약, 인공지능(AI)이 스스로 프로그램을 짤 수 있다면 어떨까?
2020년, 인텔은 매사추세츠 공과대학교(MIT), 조지아 공과대학교와 협력해 놀라운 시스템을 선보였다. 바로 ‘기계 유추 코드 유사성(MISIM)’ 시스템이다. 이 시스템은 코드를 연구하고 분석해 그 코드가 다른 코드와 얼마나 유사한지를 통해 다른 코드와의 문법적 차이를 분석하고, 코드의 기능을 학습한다.
기계 프로그래밍은 자동화 도구를 활용해 개발 생산성을 높이는 것을 목표로 한다. 코드 유사성은 기계 프로그래밍이 제공하는 일부 자동화 도구의 핵심 기술이다. MISIM는 기존 코드 유사성 시스템과는 다르게 맥락 인식 의미 구조(CASS)를 바탕으로 한다. CASS는 코드가 실제로 무슨 일을 하는지 분석하는데, 다른 시스템과는 달리 특정 문맥으로 구성되어 더 높은 수준에서 코드에 대해 이해할 수 있다.
먼저 CASS에 코드 구조를 통합하면, 신경 네트워크 시스템이 수행을 위해 설계된 작업에 근거해 코드의 조각에 유사성 점수를 부여한다. 즉, 구조상 매우 다르게 보이는 두 개의 코드 조각이 동일한 기능을 수행한다면, 코드 조각들을 대체로 유사한 것으로 평가하는 것이다. MISIM은 컴파일러 없이 이러한 과정을 수행한다는 점도 큰 특징이다. 인텔의 MISIM 시스템은 이전의 코드 유사도 시스템보다 최대 40배 더 정확하게 유사한 코드를 식별해낸다.
자동으로 코딩하는 기술이 상용화된다면, 자연스럽게 많은 이점이 따라오게 된다. MISIM는 그 시작점이자 중요한 발판이 되었다. 앞으로 많은 연구를 통해 더 발전된 기술이 등장하길 바란다.
[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]