Skip to main content
QUICK REVIEW

[논문 리뷰] Parallel Complexity of Forward and Backward Propagation

Maxim Naumov|arXiv (Cornell University)|2017. 12. 18.
Neural Networks and Applications참고 문헌 26인용 수 6
한 줄 요약

이 논문은 신경망의 전방 및 역방향 전파를 하삼각 및 상삼각 선형 방정식계의 해법으로 재정의하여, 직접 및 반복 방법을 통해 새로운 병렬 알고리즘을 가능하게 한다. 이는 피드포워드 및 순환 신경망에 대해 각각 O(log k) 및 O(log k log τ) 단계 내에서 역방향 전파를 병렬화할 수 있음을 증명하며, 표준 순차 계산을 초월한 모델 병렬화의 일반적 프레임워크를 제공한다.

ABSTRACT

We show that the forward and backward propagation can be formulated as a solution of lower and upper triangular systems of equations. For standard feedforward (FNNs) and recurrent neural networks (RNNs) the triangular systems are always block bi-diagonal, while for a general computation graph (directed acyclic graph) they can have a more complex triangular sparsity pattern. We discuss direct and iterative parallel algorithms that can be used for their solution and interpreted as different ways of performing model parallelism. Also, we show that for FNNs and RNNs with $k$ layers and $τ$ time steps the backward propagation can be performed in parallel in O($\log k$) and O($\log k \log τ$) steps, respectively. Finally, we outline the generalization of this technique using Jacobians that potentially allows us to handle arbitrary layers.

연구 동기 및 목표

  • 신경망의 전방 및 역방향 전파를 삼각형 선형 방정식계의 해법으로 재정의하기.
  • 직접 및 반복 수치 해법을 사용하여 이러한 방정식계에 대한 병렬 알고리즘 개발하기.
  • 제안된 병렬 기법의 시간, 작업 및 메모리 복잡도 분석하기.
  • 병렬 알고리즘이 실질적으로 효율적이게 되는 조건 설정하기.
  • 자기미분 행렬을 사용하여 임의의 계산 그래프 및 임의의 레이어 유형으로 프레임워크 일반화하기.

제안 방법

  • 계산 그래프에서 유도된 하삼각 및 상삼각 선형 방정식계로 전방 및 역방향 전파를 표현하기.
  • 피드포워드 신경망 및 순환 신경망에서 블록-이중대각선 삼각형 방정식계의 해법을 병렬화하기 위해 순환 감소의 변종 적용하기.
  • 직접 방법을 사용하여 피드포워드 신경망과 순환 신경망에 각각 O(log k) 및 O(log k log τ) 병렬 단계 달성하기.
  • 자리비 또는 BiCGStab와 같은 반복 해법을 사용해 근사 해를 구함으로써 메모리 효율적인 병렬화 가능하게 하기.
  • 다양한 수치 선형 대수 기법을 서로 다른 형태의 모델 병렬화로 해석하기.
  • 자기미분 행렬을 사용하여 임의의 레이어로 프레임워크 일반화하기, 복잡하거나 비미분 가능한 구성 요소에의 적용 가능하게 하기.

실험 결과

연구 질문

  • RQ1신경망의 전방 및 역방향 전파를 체계적으로 삼각형 선형 방정식계의 해법으로 재정의할 수 있는가?
  • RQ2표준 피드포워드 신경망 및 순환 신경망에서 역방향 전파의 이론적 병렬 복잡도는 얼마인가?
  • RQ3직접 및 반복 수치 해법은 딥러닝에서 모델 병렬화를 위해 어떻게 적응시킬 수 있는가?
  • RQ4제안된 병렬 알고리즘이 실질적으로 순차적 역전파보다 우월해지는 조건은 무엇인가?
  • RQ5이 프레임워크는 표준 피드포워드 및 순환 아키텍처를 초월해 임의의 레이어 및 계산 그래프로 일반화될 수 있는가?

주요 결과

  • k층을 가진 피드포워드 신경망에서 직접 방법을 사용해 역방향 전파를 O(log k) 단계 내에서 병렬화할 수 있다.
  • τ개의 시간 단계를 가진 순환 신경망에서 역방향 전파를 O(log k log τ) 단계 내에서 병렬화할 수 있다.
  • 병렬 알고리즘은 순차적 역전파보다 최대 두 배 이내의 메모리만 필요로 하여 메모리 효율적이다.
  • 자기미분 행렬을 사용해 임의의 레이어로 일반화되며, 복잡하거나 비미분 가능한 구성 요소에의 적용 가능하다.
  • 반복 방법은 O(ln²rη) 시간 복잡도와 O(lnr) 메모리 오버헤드를 달성하며, η < l일 경우 실용적이게 된다.
  • 미니배치 크기 r ≥ n 또는 l/log l ≥ n일 경우, 계산 오버헤드가 정당화되어 이 방법이 실용적이게 된다.

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

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

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

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