서울대 컴퓨터공학부 전병곤 교수 연구진,
딥러닝 모델을 쉽고 빠르게 개발할 수 있는 시스템 JANUS 개발
서울대 컴퓨터공학부 전병곤 교수 연구진은 딥러닝 모델을 쉽고 빠르게 개발할 수 있는 시스템인 JANUS를 개발했다고 밝혔다.
딥러닝 기술은 최근 이미지 처리, 음성 인식, 자율주행 등 다양한 분야에서 비약적인 발전을 가져오며 4차 산업 혁명의 가장 중요한 핵심 기술 중 하나로 인식되고 있으며, 연구 경쟁도 매우 치열한 분야이다.
딥러닝 시스템은 개발자들이 원하는 대로 모델을 표현하고 학습 및 추론할 수 있게 해 주는데, 기존 딥러닝 시스템들은 모델을 쉽게 표현하는 일과 모델을 빠르게 학습시키는 일, 둘 중 한 쪽에만 더 특화되어 있었다. TensorFlow로 대표되는 심볼릭 그래프 (“symbolic graph”) 기반 시스템에서는 고정된 구조의 모델을 빠르게 학습시킬 수는 있었지만 다양한 구조의 모델을 쉽게 표현하기는 어려웠고, 반대로 PyTorch로 대표되는 명령형 (“imperative”) 시스템에서는 다양한 모델을 쉽게 만들 수는 있지만 이를 학습시키는 데는 시간이 더 오래 걸렸다.
전병곤 교수 연구팀에서 제안한 JANUS는 기존 시스템들의 한계를 극복하여, 새로운 모델을 쉽게 표현하고 빠르게 학습시킬 수 있는 시스템이다. JANUS는 기존 명령형 시스템에서와 같이 쉬운 프로그래밍 모델을 그대로 사용하면서도, 내부에서 명령형 프로그램을 심볼릭 그래프로 자동 변환 및 최적화를 수행한다. 그 결과 다양한 모델을 학습하는데 걸리는 시간은 명령형 시스템 대비 최대 48배까지 빨라지고 심볼릭 그래프 기반 시스템의 성능에 근접한다.
이번 연구 결과는 글로벌 기업인 구글, 페이스북, 아마존 보다 앞선 결과이다. 해당 연구 결과는 2019년 2월 미국 보스턴에서 개최될 시스템 분야 최우수 학회 중 하나인 NSDI (USENIX Symposium on Networked Systems Design and Implementation)에서 발표될 예정이다.
출판 전 논문 페이지: https://arxiv.org/abs/1812.01329 (최종 출판본은 2019년 2월 공개 예정)
[그림1] JANUS 전체 시스템 구조. 프로파일러(Profiler)에서 프로그램의 특성에 대한 정보를 모아서, 효율적인 심볼릭 그래프를 만들고 수행한다. 수행 중 프로그램의 특성이 달라지는 경우, 정확성을 보장하기 위해 원본 명령형 프로그램이 다시 수행된다.
[문의사항]
전병곤 서울대학교 컴퓨터공학부 교수 / bgchun@snu.ac.kr
정은지 서울대학교 컴퓨터공학부 박사과정 / ejjeong@snu.ac.kr
이동하 서울대학교 공과대학 대외협력실 팀장 / lee496@snu.ac.kr