▲ KAIST 전산학부 김민수 교수 연구팀이 오늘날 인공지능 딥러닝 모델들을 처리하기 위해 필수적으로 사용되는 기계학습 시스템을 세계 최고 수준의 성능으로 끌어올렸다. (왼쪽부터) 김민수 교수와 GraphAI 한동형 박사

[기계신문] KAIST 전산학부 김민수 교수 연구팀이 딥러닝 모델을 비롯한 기계학습 모델을 학습하거나 추론하기 위해 필수적으로 사용되는 기계학습 시스템의 성능을 대폭 높일 수 있는 세계 최고 수준의 행렬 연산자 융합 기술(일명 FuseME)을 개발했다.

오늘날 광범위한 산업 분야들에서 사용되고 있는 딥러닝 모델들은 대부분 구글 텐서플로우(TensorFlow)나 IBM 시스템DS와 같은 기계학습 시스템을 이용해 처리되는데, 딥러닝 모델의 규모가 점점 더 커지고 그 모델에 사용되는 데이터의 규모가 점점 더 커짐에 따라, 이들을 원활히 처리할 수 있는 고성능 기계학습 시스템에 대한 중요성도 점점 더 커지고 있다.

일반적으로 딥러닝 모델은 행렬 곱셈, 행렬 합, 행렬 집계 등의 많은 행렬 연산자들로 구성된 방향성 비순환 그래프(Directed Acyclic Graph, 이하 DAG) 형태의 질의 계획으로 표현돼 기계학습 시스템에 의해 처리된다.

모델과 데이터의 규모가 클 때는 일반적으로 DAG 질의 계획은 수많은 컴퓨터로 구성된 클러스터에서 처리된다. 클러스터의 사양에 비해 모델과 데이터의 규모가 커지면 처리에 실패하거나 시간이 오래 걸리는 근본적인 문제가 있었다.

지금까지는 더 큰 규모의 모델이나 데이터를 처리하기 위해 단순히 컴퓨터 클러스터의 규모를 증가시키는 방식을 주로 사용했다.

그러나 연구팀은 DAG 질의 계획을 구성하는 각 행렬 연산자로부터 생성되는 일종의 ‘중간 데이터’를 메모리에 저장하거나 네트워크 통신을 통해 다른 컴퓨터로 전송하는 것이 문제의 원인임에 착안해, 중간 데이터를 저장하지 않거나 다른 컴퓨터로 전송하지 않도록 여러 행렬 연산자들을 하나의 연산자로 융합(fusion)하는 세계 최고 성능의 융합 기술인 FuseME(Fused Matrix Engine)을 개발해 문제를 해결했다.

현재까지의 기계학습 시스템들은 낮은 수준의 연산자 융합 기술만을 사용하고 있었다. 가장 복잡한 행렬 연산자인 행렬 곱을 제외한 나머지 연산자들만 융합해 성능이 별로 개선되지 않거나, 전체 DAG 질의 계획을 단순히 하나의 연산자처럼 실행해 메모리 부족으로 처리에 실패하는 한계를 지니고 있었다.

연구팀이 개발한 FuseME 기술은 수십 개 이상의 행렬 연산자들로 구성되는 DAG 질의 계획에서 어떤 연산자들끼리 서로 융합하는 것이 더 우수한 성능을 내는지 비용 기반으로 판별해 그룹으로 묶고, 클러스터의 사양, 네트워크 통신 속도, 입력 데이터 크기 등을 모두 고려해 각 융합 연산자 그룹을 메모리 부족으로 처리에 실패하지 않으면서 이론적으로 최적 성능을 낼 수 있는 CFO(Cuboid-based Fused Operator)라 불리는 연산자로 융합함으로써 한계를 극복했다. 이때 행렬 곱 연산자까지 포함해 연산자들을 융합하는 것이 핵심이다.

▲ KAIST 전산학부 김민수 교수 연구팀은 중간 데이터를 저장하지 않거나 다른 컴퓨터로 전송하지 않도록 여러 행렬 연산자들을 하나의 연산자로 융합하는 세계 최고 성능의 융합 기술인 FuseME(Fused Matrix Engine)을 개발했다.

김민수 교수 연구팀은 FuseME 기술을 종래 최고 기술로 알려진 구글의 텐서플로우나 IBM의 시스템DS와 비교 평가한 결과, 딥러닝 모델의 처리 속도를 최대 8.8배 향상하고, 텐서플로우나 시스템DS가 처리할 수 없는 훨씬 더 큰 규모의 모델 및 데이터를 처리하는 데 성공함을 보였다.

또한, FuseME의 CFO 융합 연산자는 종래의 최고 수준 융합 연산자와 비교해 처리 속도를 최대 238배 향상시키고, 네트워크 통신 비용을 최대 64배 감소시키는 사실을 확인했다.

연구팀은 이미 지난 2019년에 초대규모 행렬 곱 연산에 대해 종래 세계 최고 기술이었던 IBM 시스템ML과 슈퍼컴퓨팅 분야의 스칼라팩(ScaLAPACK) 대비 성능과 처리 규모를 훨씬 향상시킨 DistME라는 기술을 개발해 데이터베이스 분야 최고 국제학술대회 중 하나인 ACM SIGMOD에서 발표한 바 있다. 이번 FuseME 기술은 연산자 융합이 가능하도록 DistME를 한층 더 발전시킨 것으로, 해당 분야를 세계 최고 수준의 기술력을 바탕으로 지속적으로 선도하는 쾌거를 보여준 것이다.

김민수 교수는 “연구팀이 개발한 새로운 기술은 딥러닝 등 기계학습 모델의 처리 규모와 성능을 획기적으로 높일 수 있어 산업적 측면에서 파급 효과가 매우 클 것으로 기대한다”고 말했다.

인공지능 서비스를 제공하는 구글, 페이스북, 네이버, 카카오와 같은 대기업뿐만 아니라 신생 인공지능 벤처 기업들에서 초대규모 인공지능 모델 혹은 대규모 훈련 데이터 기반 모델의 서비스 및 제품을 개발할 때, 소규모 클러스터에서 저비용으로 빠르게 개발을 완료할 수 있다.

특히 FuseME 기술은 행렬 곱셈 기반의 연산자 융합을 통해 사용 가능한 하드웨어 자원에 따라서 계산 및 통신비용 그리고 메모리 사용의 측면에서 종래의 시스템들보다 성능이 우수하므로, 소규모의 클러스터와 같이 한정된 하드웨어 자원 때문에 인공지능 서비스 및 제품 개발에 어려움을 겪는 기업들에 인공지능 모델을 학습할 수 있는 적절한 솔루션을 제공할 수 있다.

뿐만 아니라 게임 및 가상현실 소프트웨어에서 행렬 곱셈을 기반으로 하는 그래픽을 표현하는 랜더링 방법에서 FuseME 기술을 이용하여 초고속으로 계산하는 기술에도 적용될 수 있다.

한편, 이번 연구에는 김 교수의 제자이자 현재 GraphAI(그래파이) 스타트업의 공동 창업자인 한동형 박사가 제1저자로 참여했으며, 지난 16일 미국 필라델피아에서 열린 데이터베이스 분야 국제학술대회 중 하나인 ACM SIGMOD에서 발표됐다.

이번 연구는 한국연구재단 선도연구센터 사업 및 중견연구자 지원사업, 과학기술정보통신부 IITP SW스타랩 사업의 지원을 받아 수행됐다.

기계신문, 기계산업 뉴스채널