닫기

일반뉴스

배너

인텔, MIT-조지아 공과대학과 ‘기계 프로그래밍 코드 유사성 시스템’ 선봬

URL복사
[마감임박!! 무료] 생성형AI, 디지털트원, 제조AI, SaaS, 클라우드로 생산성 높이고, 비용절감 방안 제시.. AI자율제조혁신포럼 개최 (3/27~29, 코엑스3층 컨퍼런스룸 317~318호)

[헬로티]


인텔이 매사추세츠 공과대학교(이하 MIT), 조지아 공과대학교와 협력해 개발한 새로운 기계 프로그래밍 시스템을 선보였다. ‘기계 유추 코드 유사성(MISIM)’ 시스템은 코드의 구조를 연구하고 코드의 유사한 동작에 기반해 다른 코드의 문법적 차이를 분석해 소프트웨어가 의도하는 바를 학습하기 위해 개발된 자동화 엔진이다.


저스틴 고트슐리히(Justin Gottschlich), 인텔 기계 프로그래밍 연구소 설립자는 “기계 프로그래밍에 대한 인텔의 궁극적인 목표는 소프트웨어 개발의 보편화이다. 완전한 소프트웨어 개발 보편화가 실현된다면, 모든 사람들이 기계 프로그래밍을 통해 코드나, 자연어를 비롯한 다른 어떤 것도 가장 선호하는 방법으로 자신들의 의도를 표현하며 소프트웨어를 개발할 수 있게 될 것”이라고 말했다.


기계 프로그래밍은 자동화 도구를 활용해 개발 생산성을 높이는 것을 목표로 한다. 코드 유사성은 기계 프로그래밍이 제공하는 일부 자동화 도구의 핵심 기술이다. 코드 유사성은 개발 생산성을 높이기 위해 일부 소프트웨어 개발 프로세스를 정확하고 효율적으로 자동화 할 수 있는 잠재력을 보유하고 있다.


그러나 정확한 코드 유사성 시스템을 구축하는 것은 매우 어려운 작업이다. 이러한 시스템은 두 개의 코드 스니핏(조각)이 유사한 특성을 보이는지 또는 유사한 목표 달성을 위한 코드인지 판단하며, 이러한 작업은 단순한 학습 코드 만으로는 실행하기 벅찬 과정이다.


인텔이 MIT와 조지아 공과대학교와 협력해 개발한 MISIM은 두 개의 코드 조각이 서로 다른 데이터 구조와 알고리즘을 사용하는 경우에도 유사한 연산을 수행하는 시기를 정확하게 판단할 수 있다.


MISIM과 기존 코드 유사성 시스템을 가르는 매우 중요한 요소는 코드가 실제로 하는 것이 무엇인지 드러내는 맥락 인식 의미 구조(CASS)다. CASS는 코드의 실제 작동 원리를 확인하기 위한 여타 시스템과는 달리 특정 문맥으로 구성할 수 있어 더 높은 수준에서 코드를 설명하는 정보를 확인할 수 있다.


CASS는 코드가 어떤 식으로 작동하는지가 아닌 코드가 무엇을 하는지에 대한 보다 구체적인 인사이트를 제공할 수 있다. 게다가, MISIM은 사람이 읽을 수 있는 소스 코드를 컴퓨터에서 실행 가능한 형태의 코드로 변환하는 프로그램인 컴파일러를 사용하지 않고도 이러한 작업을 수행할 수 있다.


이는 추천 시스템이나 자동화 버그 수정을 위한 중요한 특성과 같은 개발자가 현재 쓰고 있는 코드의 불완전한 조각에서 실행할 수 있는 역량 등 기존 시스템 대비 다양한 이점을 제공한다.


일단 CASS에 코드 구조를 통합하면, 신경 네트워크 시스템이 수행을 위해 설계된 작업에 근거하여 코드의 조각에 유사성 점수를 부여한다. 즉, 두 개의 코드 조각이 구조상 매우 다르게 보이지만 동일한 기능을 수행한다면, 이러한 신경 네트워크 시스템이 코드 조각들을 대체로 유사한 것으로 평가한다.


연구진은 이러한 원칙을 통일된 시스템에 통합함으로써 MISIM이 이전의 최첨단 시스템보다 최대 40배 더 정확하게 유사한 코드 조각을 식별할 수 있게 됐다.


인텔은 꾸준히 MISIM의 기능을 확장해 나감과 동시에 모든 소프트웨어 개발자들이 인텔의 다양한 이기종 아키텍처에서 프로그램이 가능하도록 지원하는 코드 추천 엔진 제작을 목표로 하고 있다. 인텔은 현재 연구 단계를 거쳐 실증 개발 단계 과정에 있다.











배너









주요파트너/추천기업