2020.08.14

인텔, MIT·조지아공대와 손잡고 자동 코딩해주는 AI 엔진 개발 나선다

Patrick Nelson | Network World
인텔이 MIT·조지아 공대 연구진이 자동 코딩을 해주는 AI 엔진 개발에 나서고 있다. 이 엔진으로 코드 유사성을 분석해 각 코드의 역할을 파악함으로써 자동 소프트웨어 코딩 시대를 열겠다는 취지다. 

인공지능(AI)이 급속히 발전하고 있다. 컴퓨터가 프로그래머 없어 혼자 코드를 작성하는 시대로 접어들게 되는 것일까? 이번에 발표된 연구를 보면 그런 획기적인 시점이 점점 가까워지고 있는지도 모른다. 
 
ⓒMonsitj/Getty Images

MIT와 조지아 공대의 연구원들이 인텔과 손을 잡고 MISIM(Machine Inferred Code Similarity)이라는 이름의 AI 엔진 개발에 나선다. 이 엔진은 소프트웨어 코드를 분석해 그것이 다른 코드와 얼마나 유사한지 결정하도록 설계된다. 흥미로운 점은 이 엔진 시스템이 지닌 잠재력이다. 코드 조각들의 기능을 학습하고 학습한 내용을 바탕으로 소프트웨어의 코드 작성 방식을 바꿀 수 있다. 누구든지 소프트웨어 프로그램에게 원하는 바를 설명하면, 머신 프로그래밍(MP)시스템이 코드를 짜고 앱을 만들어 내놓는 일이 가능해질 수 있는 셈이다. 

인텔의 수석과학자 겸 머신 프로그래밍 연구소의 이사 겸 설립자인 저스틴 고트슐리히는 보도자료에서 "(자동 코딩이) 완벽하게 구현되면 코드로든, 자연어로든, 기타 어떤 것으로든지 간에 사람들은 원하는 방식으로 MP에 의사를 표현해 소프트웨어를 만들 수 있게 될 것"이라고 설명했다. 이어 그는 "(자동코딩은) 원대한 목표이며 완수해야 할 과업들이 많다. MISIM는 그 목표를 달성하기 위해 내딛은 중요한 첫 발자국이다"라고 덧붙였다. 

자동 코딩의 작동 방식
인텔 측의 설명에 따르면 신경망은 각 코드 스니펫들이 “수행하는 고유의 기능”을 바탕으로 코드마다 유사도 점수를 부여한다. 예를 들어, 서로 짜임새가 완전히 다른 두 개의 코드 샘플도 수행하는 기능이 같으면 동일한 점수가 부여된다. 이후 신경망 알고리즘은 어떤 코드 스니펫이 더 효율적인지 판단할 수 있다. 

초창기 코드 유사도 시스템은 표절 탐지에 사용됐다. 그러나 MISIM의 경우 신경망 알고리즘은 코드 청크를 보고 코드 스니펫이 유사한 특성을 가지고 있는지 또는 유사한 목표를 지향하는지 문맥적으로 확인한다. 이후 기능이 더 좋은 코드를 제안하는 등 코드를 전반적으로 최적화시킬 수 있다. 

MISIM의 핵심은 개발자의(소프트웨어 개발) 의도이며, '의도 기반 프로그래밍'을 향한 이정표에 해당한다. 프로그래머가 아닌 사람도 개발 의도에 맞춰 소프트웨어를 개발하도록 하는 또 하나의 진전이 이뤄진 셈이다. 의도 기반 프로그래밍에서는 기존처럼 프로그래밍 명령어를 한 줄 한 줄 컴파일링하고 컴퓨터에 실행을 지시하는 기존의 방식으로 알고리즘을 짜지 않는다. 대신 오픈소스 코드 풀을 이용한다. 

인텔 측은 "MISIM은 맥락인식적 의미구조(CASS)를 바탕으로 코드의 실제 기능을 분석한다는 점에서 기존 코드 유사도 시스템과 차이가 있다. 특정 문맥에 맞춰 구성되는 CASS 덕분에, MISIM은 (만들고자 하는) 코드에 대한 설명을 더 높은 층위에서 이해할 수 있다. CASS는 코드의 기능 자체보다 코드의 작동 원리에 대해 보다 구체적인 인사이트를 제공할 수 있다" 라고 설명한다. 

이 과정은 컴파일링(인간이 읽을 수 있는 코드를 컴퓨터 프로그램으로 변환하는 프로그래밍에 사용되는 단계) 없이 이뤄진다. 편리하게도 코드에서 일어나는 일을 확인하기 부분적으로 스니펫을 실행할 수 있다. 게다가, 이 시스템은 코드를 한 줄 한 줄 뒤지며 버그를 발견하는 것같은 지루한 작업도 덜어준다. 자세한 내용은 인텔 문서를 참조하면 확인할 수 있다(PDF). 

인텔은 연구팀의 MISIM 시스템이 기존의 코드 유사도 시스템보다 40배 더 정확하게 유사한 코드를 식별해낸다고 전했다.

*패트릭 넬슨은 음악산업 무역 출판사인 Producer Report의 편집자 겸 출판인이었으며 여러 테크 블로그에 기고했다. 넬슨은 컬트 클래식 소설 ‘스프롤리즘’을 썼다. ciokr@idg.co.kr
 



2020.08.14

인텔, MIT·조지아공대와 손잡고 자동 코딩해주는 AI 엔진 개발 나선다

Patrick Nelson | Network World
인텔이 MIT·조지아 공대 연구진이 자동 코딩을 해주는 AI 엔진 개발에 나서고 있다. 이 엔진으로 코드 유사성을 분석해 각 코드의 역할을 파악함으로써 자동 소프트웨어 코딩 시대를 열겠다는 취지다. 

인공지능(AI)이 급속히 발전하고 있다. 컴퓨터가 프로그래머 없어 혼자 코드를 작성하는 시대로 접어들게 되는 것일까? 이번에 발표된 연구를 보면 그런 획기적인 시점이 점점 가까워지고 있는지도 모른다. 
 
ⓒMonsitj/Getty Images

MIT와 조지아 공대의 연구원들이 인텔과 손을 잡고 MISIM(Machine Inferred Code Similarity)이라는 이름의 AI 엔진 개발에 나선다. 이 엔진은 소프트웨어 코드를 분석해 그것이 다른 코드와 얼마나 유사한지 결정하도록 설계된다. 흥미로운 점은 이 엔진 시스템이 지닌 잠재력이다. 코드 조각들의 기능을 학습하고 학습한 내용을 바탕으로 소프트웨어의 코드 작성 방식을 바꿀 수 있다. 누구든지 소프트웨어 프로그램에게 원하는 바를 설명하면, 머신 프로그래밍(MP)시스템이 코드를 짜고 앱을 만들어 내놓는 일이 가능해질 수 있는 셈이다. 

인텔의 수석과학자 겸 머신 프로그래밍 연구소의 이사 겸 설립자인 저스틴 고트슐리히는 보도자료에서 "(자동 코딩이) 완벽하게 구현되면 코드로든, 자연어로든, 기타 어떤 것으로든지 간에 사람들은 원하는 방식으로 MP에 의사를 표현해 소프트웨어를 만들 수 있게 될 것"이라고 설명했다. 이어 그는 "(자동코딩은) 원대한 목표이며 완수해야 할 과업들이 많다. MISIM는 그 목표를 달성하기 위해 내딛은 중요한 첫 발자국이다"라고 덧붙였다. 

자동 코딩의 작동 방식
인텔 측의 설명에 따르면 신경망은 각 코드 스니펫들이 “수행하는 고유의 기능”을 바탕으로 코드마다 유사도 점수를 부여한다. 예를 들어, 서로 짜임새가 완전히 다른 두 개의 코드 샘플도 수행하는 기능이 같으면 동일한 점수가 부여된다. 이후 신경망 알고리즘은 어떤 코드 스니펫이 더 효율적인지 판단할 수 있다. 

초창기 코드 유사도 시스템은 표절 탐지에 사용됐다. 그러나 MISIM의 경우 신경망 알고리즘은 코드 청크를 보고 코드 스니펫이 유사한 특성을 가지고 있는지 또는 유사한 목표를 지향하는지 문맥적으로 확인한다. 이후 기능이 더 좋은 코드를 제안하는 등 코드를 전반적으로 최적화시킬 수 있다. 

MISIM의 핵심은 개발자의(소프트웨어 개발) 의도이며, '의도 기반 프로그래밍'을 향한 이정표에 해당한다. 프로그래머가 아닌 사람도 개발 의도에 맞춰 소프트웨어를 개발하도록 하는 또 하나의 진전이 이뤄진 셈이다. 의도 기반 프로그래밍에서는 기존처럼 프로그래밍 명령어를 한 줄 한 줄 컴파일링하고 컴퓨터에 실행을 지시하는 기존의 방식으로 알고리즘을 짜지 않는다. 대신 오픈소스 코드 풀을 이용한다. 

인텔 측은 "MISIM은 맥락인식적 의미구조(CASS)를 바탕으로 코드의 실제 기능을 분석한다는 점에서 기존 코드 유사도 시스템과 차이가 있다. 특정 문맥에 맞춰 구성되는 CASS 덕분에, MISIM은 (만들고자 하는) 코드에 대한 설명을 더 높은 층위에서 이해할 수 있다. CASS는 코드의 기능 자체보다 코드의 작동 원리에 대해 보다 구체적인 인사이트를 제공할 수 있다" 라고 설명한다. 

이 과정은 컴파일링(인간이 읽을 수 있는 코드를 컴퓨터 프로그램으로 변환하는 프로그래밍에 사용되는 단계) 없이 이뤄진다. 편리하게도 코드에서 일어나는 일을 확인하기 부분적으로 스니펫을 실행할 수 있다. 게다가, 이 시스템은 코드를 한 줄 한 줄 뒤지며 버그를 발견하는 것같은 지루한 작업도 덜어준다. 자세한 내용은 인텔 문서를 참조하면 확인할 수 있다(PDF). 

인텔은 연구팀의 MISIM 시스템이 기존의 코드 유사도 시스템보다 40배 더 정확하게 유사한 코드를 식별해낸다고 전했다.

*패트릭 넬슨은 음악산업 무역 출판사인 Producer Report의 편집자 겸 출판인이었으며 여러 테크 블로그에 기고했다. 넬슨은 컬트 클래식 소설 ‘스프롤리즘’을 썼다. ciokr@idg.co.kr
 

X