Skip to main content
QUICK REVIEW

[논문 리뷰] DS-MLR: Exploiting Double Separability for Scaling up Distributed Multinomial Logistic Regression

Parameswaran Raman, Srinivasan, Sriram|arXiv (Cornell University)|2016. 04. 16.
Stochastic Gradient Optimization Techniques참고 문헌 36인용 수 5
한 줄 요약

DS-MLR는 다중군집 로지스틱 회귀에서 이중분리성(double separability)을 활용하여 동시에 데이터 병렬성과 모델 병렬성을 가능하게 하는 분산 확률적 최적화 알고리즘을 제안한다. 이로 인해 저장소 병목 현상이 제거되며, 극한의 다중분류 문제에서 최신 기술 수준의 확장성을 달성한다. 예를 들어, 159GB의 Reddit 데이터셋과 358GB의 모델 파라미터를 처리하는 데 있어서도 이전의 어떤 방법보다도 성능이 뛰어나다.

ABSTRACT

Scaling multinomial logistic regression to datasets with very large number of data points and classes is challenging. This is primarily because one needs to compute the log-partition function on every data point. This makes distributing the computation hard. In this paper, we present a distributed stochastic gradient descent based optimization method (DS-MLR) for scaling up multinomial logistic regression problems to massive scale datasets without hitting any storage constraints on the data and model parameters. Our algorithm exploits double-separability, an attractive property that allows us to achieve both data as well as model parallelism simultaneously. In addition, we introduce a non-blocking and asynchronous variant of our algorithm that avoids bulk-synchronization. We demonstrate the versatility of DS-MLR to various scenarios in data and model parallelism, through an extensive empirical study using several real-world datasets. In particular, we demonstrate the scalability of DS-MLR by solving an extreme multi-class classification problem on the Reddit dataset (159 GB data, 358 GB parameters) where, to the best of our knowledge, no other existing methods apply.

연구 동기 및 목표

  • 대규모 데이터셋에서 데이터 포인트와 클래스의 수가 많을 때 다중군집 로지스틱 회귀(MLR)의 확장성 문제를 해결한다.
  • 기존 방법(L-BFGS 및 LC)이 전체 모델 또는 데이터 복제를 요구하여 극한 규모 문제에 대해 비현실적이므로, 이러한 제약을 극복한다.
  • 데이터 병렬성과 모델 병렬성을 동시에 지원하여, 단일 머신에 데이터 또는 모델이 모두 들어가지 않는 경우에도 대응할 수 있도록 한다.
  • 동기화 오버헤드를 줄이고 분산 환경에서의 성능을 향상시키기 위해 비차단적이고 비동기적인 변형을 설계한다.
  • 모든 분산 머신러닝 환경, 특히 극한 규모 설정에서도 유연하게 적용 가능한 방법을 보여준다.

제안 방법

  • 이중분리성을 활용해 MLR 목적 함수를 재구성하여 데이터와 모델 파라미터를 독립적으로 분할할 수 있도록 한다.
  • 로그-파트리션 함수를 데이터 차원과 모델 차원에 따라 분리 가능한 구성요소로 분해함으로써, 전체 파라미터 복제 없이도 분산 계산이 가능하도록 한다.
  • 로컬 그래디언트와 집계된 보조 변수를 사용해 워커 간 파라미터를 업데이트하는 동기식 분산 최적화 알고리즘을 구현한다.
  • 계산과 통신을 겹치는 비차단적 비동기 변형(DS-MLR Async)을 개발하여 유휴 시간을 줄이고 처리량을 향상시킨다.
  • 각 반복 동안 데이터 전송 오버헤드를 최소화하기 위해 효율적인 통신 패턴을 갖춘 파라미터 서버 유사 아키텍처를 사용한다.
  • 이중분리 구조를 활용해 데이터 및 모델 크기에 비례하여 선형적으로 증가하는 방식으로 그래디언트를 계산하고 파라미터를 업데이트한다.

실험 결과

연구 질문

  • RQ1전체 파라미터 복제 비용이 과도하게 발생하지 않도록 하면서도, 데이터 병렬성과 모델 병렬성을 동시에 지원할 수 있는 분산 MLR 알고리즘을 설계할 수 있는가?
  • RQ2제안된 이중분리성 재구성 방식이, 이전 방법이 실패하는 극한 규모 설정에서도 확장 가능한 최적화를 어떻게 가능하게 하는가?
  • RQ3비차단적 비동기 변형(DS-MLR Async)이 동기적 및 차단적 대안 대비 어떤 성능 향상을 이룬다?
  • RQ4DS-MLR는 데이터 및 모델 크기의 다양한 규모에서 얼마나 잘 확장되는가? 특히 둘 다 단일 머신의 용량을 초과하는 경우에도 성능을 유지하는가?
  • RQ5실세계의 극한 다중분류 분류 작업, 예를 들어 17억 개의 댓글과 358,000개의 클래스를 가진 Reddit 데이터셋에서 DS-MLR는 어떤 성능을 보이는가?

주요 결과

  • DS-MLR는 159GB의 데이터와 358GB의 모델 파라미터를 가진 Reddit 데이터셋에 성공적으로 확장되었으며, 이는 이전의 어떤 방법으로도 적용이 불가능한 영역이다.
  • LSHTC1-large 데이터셋에서 DS-MLR는 1,191초 만에 수렴했고, LC 방법은 32,624초가 소요되어 27배의 속도 향상을 보였다.
  • 데이터도 모델도 단일 머신에 들어가지 않는 환경에서, DS-MLR는 비차단적 비동기 아키텍처 덕분에 YouTube8M-Video 데이터셋(4,716개 클래스, 1,152개 특징)에서 빠른 수렴을 달성했다.
  • 355GB의 모델 파라미터를 가진 ODP 데이터셋에서 DS-MLR는 LC를 능가했으며, LC는 반복 비용이 너무 높아 단일 반복조차 완료하지 못했다.
  • LSHTC1-large에서 DS-MLR는 근사 선형 속도 향상을 보였으며, 20개의 워커를 사용할 경우 16배의 속도 향상을 기록하여 강력한 수평 확장성을 입증했다.
  • 비동기 변형은 동기화 오버헤드를 줄였고, 특히 YouTube8M-Video와 같은 조밀한 데이터셋에서 다중코어, 다중머신 환경의 활용도를 극대화했다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.