포스텍, 머신러닝을 위한 데이터 샘플링 방법 개발

포스텍이 머신러닝을 위한 데이터 샘플링 방법을 개발했다. 한욱신 포스텍 인공지능대학원 교수(왼쪽)와  IT융합공학과 통합과정 김경민 씨
포스텍이 머신러닝을 위한 데이터 샘플링 방법을 개발했다. 한욱신 포스텍 인공지능대학원 교수(왼쪽)와 IT융합공학과 통합과정 김경민 씨

데이터는 ‘테이블(table)’이라는 그룹으로 분산해 저장돼 있다. 인공지능이 테이블로 저장된 데이터를 학습하려면 ‘조인(join)’이라는 과정을 통해 하나의 거대한 테이블을 만들어야 하는데, 그 크기가 매우 커 저장이 어려울 뿐 아니라 조인하는 과정에서 오랜 시간이 걸린다. 테이블로부터 데이터를 빠르고, 균일하게 샘플링하는 기법에 대한 연구는 아직까지 풀리지 않는 난제로 남아있다.

포스텍(POSTECH) 한욱식 인공지능대학원 교수와 IT융합공학과 통합과정 김경민 씨 연구팀이 여러 테이블로 저장된 데이터에 대한 최적의 샘플링 기법을 제안해 빠르게 결과를 도출하는 데 성공했다. 연구성과는 최근 세계적인 데이터베이스 학회 ‘ACM PODS’에서 발표됐다. 이 학회에 한국 연구진 논문이 발표된 것은 42년 학회 역사상 처음이다.

연구팀은 이번 연구에서 메타 샘플링의 일종인 DRS(Degree-based Rejection Sampling) 기법을 이용했다. 기존에는 샘플 공간에서 바로 값을 추출하기 전에 샘플 공간의 모든 값에 대한 확률을 미리 계산해야 했다. 연구팀이 제안한 기법은 특정 값의 빈도에 기반한 단순한 확률 분포를 가진 샘플 공간을 먼저 추출하고, 그 샘플 공간에서 값을 뽑아낸다.

또 테이블을 합치는 ‘조인’ 과정에서 쿼리를 트리 형태로 분석하는 ‘일반적 하이퍼트리 분해(GHD)’를 통해 기법을 더 확장시켰다. 전체 쿼리를 하나의 조인 알고리즘으로 처리하면 쿼리에 조인 관계가 많을 경우 시간 복잡도가 크다. GHD를 사용하면 전체 쿼리가 아닌 작은 쿼리에 대해 조인을 진행하고 이 결과들을 합쳐 시간 복잡도를 낮출 수 있다.

한욱신 교수는 “이 기법은 데이터들의 계층적인 구조를 보여주는 트리 형태나 순환되는 관계를 보여주는 사이클 형태에 상관없이 모든 쿼리에 적용할 수 있다”면서 “머신러닝을 위한 데이터 샘플링 과정에서 속도와 정확도를 향상시키는 데 기여할 것”이라고 말했다.

이번 연구는 과학기술정보통신부와 한국연구재단의 지원을 받아 수행됐다.

포항=정재훈 기자 jhoon@etnews.com