프렌들리AI와 심볼릭 그래프 처리와 명령형 처리의 동시 수행으로 처리 속도 향상

전병곤 교수는 “꾸준히 세계를 선도하는 최고 AI 플랫폼 기술을 발표해서 기쁘다”라고 소감을 전했다.
전병곤 교수는 “꾸준히 세계를 선도하는 최고 AI 플랫폼 기술을 발표해서 기쁘다”라고 소감을 전했다.

서울대학교 공과대학(학장 이병호)은 컴퓨터공학부 전병곤 교수 연구팀이 프렌들리에이아이(FriendliAI)와 공동으로 모든 딥러닝 프로그램을 수정 없이 더 빠르게 수행할 수 있는 시스템 ‘테라(Terra)’를 개발했다.

Terra의 개발로 심볼릭(Symbolic) 그래프 처리와 명령형 처리가 동시에 수행되어 훨씬 처리 속도가 빠르게 되었다. 이번 연구는 기존에 없던 새로운 딥러닝 프로그램의 수행 모델을 제안한 것으로, 향후 딥러닝 프레임워크 기술에 새로운 방향을 제시하고 있다.

현재 가장 널리 쓰이는 딥러닝 프레임워크인 파이토치(PyTorch)와 텐서플로우(TensorFlow)는 모두 보통의 파이썬 프로그램처럼 딥러닝 프로그램을 작성을 필요로 한다. 작성된 딥러닝 프로그램은 일반적인 파이썬 프로그램과 마찬가지로 파이썬 인터프리터가 처리하여 인공지능 연산을 수행한다.

하지만, 파이썬 인터프리터를 이용한 수행 방식은 전체적인 딥러닝 연산을 한 번에 표현하는 심볼릭 그래프가 없어서 전체 최적화 시도를 해 볼 수 없기에 학습 속도가 느리다는 단점이 있다.

이를 해결하기 위해 기존 연구에서는 Just-In-Time(JIT) 컴파일 기법을 통해서 주어진 파이썬 딥러닝 프로그램을 심볼릭 그래프로 변환하고, 별도의 심볼릭 그래프 수행 엔진으로 프로그램을 수행하는 다양한 방법들이 제안되었다.

하지만 JIT 컴파일을 이용한 방법 역시 사용자가 코드를 수정해야 하거나 프로그램의 수행 정확성이 보장되지 않거나, 파이썬 언어를 제한적으로 지원한다는 한계가 있었다.

이에 전병곤 교수 연구팀과 프렌들리에이아이(FriendliAI)는 완전히 새로운 파이썬 딥러닝 프로그램 수행방식을 제안하였다.

기존의 방법처럼 주어진 파이썬 프로그램 전체를 심볼릭 그래프로 변환하는 대신, Terra는 프로그램에서 실제 딥러닝 연산만 수집하여 이에 대해서만 대응하는 심볼릭 그래프를 생성한다.

그 다음, 생성된 심볼릭 그래프와 주어진 파이썬 프로그램에서 딥러닝 연산이 아닌 부분들을 동시에 수행하여 JIT 컴파일 방식으로는 불가능했던 파이썬 프로그램들의 수행을 지원한다.

Terra의 딥러닝 프로그램 수행 개요
Terra의 딥러닝 프로그램 수행 개요

Terra의 동시 수행 엔진은 사용자가 작성한 파이썬 딥러닝 프로그램의 수정을 필요로 하지 않으면서도 프로그램 수행의 정확성을 보장하고, 파이썬 언어의 모든 문법을 그대로 사용할 수 있도록 한 세계 최초의 방법이다.

Terra는 텐서플로우 기본 명령형 수행방식 대비 최대 1.73배 빠른 딥러닝 학습 속도를 제공하고 기존 텐서플로우에서 사용하는 최신 JIT 컴파일 기반의 오토그래프(AutoGraph)가 수행하지 못하는 프로그램들까지도 더 빠르게 수행할 수 있다.

전병곤 교수는 “꾸준히 세계를 선도하는 최고 AI 플랫폼 기술을 발표해서 기쁘고 영광”이라고 소감을 밝히고 “최근에는 초거대 AI 연구 개발에 집중하고 있으며, 프렌들리에이아이(FriendliAI)는 누구나 초거대 AI 모델을 쉽게 개발해서 사용할 수 있도록, 초거대 AI모델 개발 플랫폼을 만들고 있다”라고 최근 연구 방향을 전하였다.

한편, 이번 연구 결과는 12월 6일부터 14일까지 가상으로 개최되는 'NeurIPS 2021(Neural Information Processing Systems)'에서 'Terra: Imperative-Symbolic Co-Execution of Imperative Deep-Learning Programs' 제목으로 발표될 예정이다.

 

 

저작권자 © 인공지능신문 무단전재 및 재배포 금지