Skip to main content
QUICK REVIEW

[논문 리뷰] Restructuring Batch Normalization to Accelerate CNN Training

Wonkyung Jung, Dae-Jin Jung|arXiv (Cornell University)|2018. 07. 04.
Advanced Neural Network Applications참고 문헌 49인용 수 52
한 줄 요약

본 논문은 BN Fission-n-Fusion(BNFF)을 제안하여 배치 정규화(BN) 계층의 구조를 재구성하고, 메모리 접근을 감소시키며 DenseNet-121과 ResNet-50 같은 최신 CNN의 학습 속도를 향상시킨다; Skylake CPU에서 DenseNet-121에 대해 최대 25.7%, ResNet-50에 대해 16.1%의 학습 속도 향상을 얻는다.

ABSTRACT

Batch Normalization (BN) has become a core design block of modern Convolutional Neural Networks (CNNs). A typical modern CNN has a large number of BN layers in its lean and deep architecture. BN requires mean and variance calculations over each mini-batch during training. Therefore, the existing memory access reduction techniques, such as fusing multiple CONV layers, are not effective for accelerating BN due to their inability to optimize mini-batch related calculations during training. To address this increasingly important problem, we propose to restructure BN layers by first splitting a BN layer into two sub-layers (fission) and then combining the first sub-layer with its preceding CONV layer and the second sub-layer with the following activation and CONV layers (fusion). The proposed solution can significantly reduce main-memory accesses while training the latest CNN models, and the experiments on a chip multiprocessor show that the proposed BN restructuring can improve the performance of DenseNet-121 by 25.7%.

연구 동기 및 목표

  • 현대 심층 CNN 학습에서 비-CONV 계층, 특히 배치 정규화의 중요성이 상승하고 있음을 동기 부여한다.
  • DenseNet-121와 같은 심층 모델의 학습 중 BN 계층의 메모리 대역폭 병목을 분석한다.
  • 주 메모리 접근을 최소화하기 위해 BN 재구성(분해 및 융합)을 개발한다.
  • DenseNet-121 및 ResNet-50 전반에 걸친 CPU(스카이라이크) 및 GPU 플랫폼에서의 성능 향상을 시연한다.

제안 방법

  • BN 계층을 두 개의 하위 계층으로 분리한다(분해).
  • 앞선 CONV 계층과 첫 번째 하위 계층을 융합한다( CONV1-(sub-BN1)).
  • 다음 ReLU 및 CONV 계층과 두 번째 하위 계층을 융합한다(sub-BN2-ReLU-CONV2).
  • BN 평균 및 분산 계산을 단일 메모리 스윕으로 합쳐밍(mean/variance fusion, MVF).
  • 원하는 경우 DenseNet에서 CPL 경계 전반에 BN을 융합하기 위한 Inter-Composite-Layer Fusion(ICF)으로 BNFF를 확장한다.

실험 결과

연구 질문

  • RQ1BN이 심층 CNN의 학습 중 메모리 트래픽과 대역폭 병목을 얼마나 일으키는가?
  • RQ2정확도를 해치지 않고 off-chip 메모리 접근을 줄이기 위해 BN 계층을 분해 및 융합으로 재구성할 수 있는가?
  • RQ3BNFF를 DenseNet-121 및 ResNet-50에 적용했을 때 CPU 및 GPU 플랫폼에서 어떤 성능 향상이 있는가?
  • RQ4평균/분산 융합이 수치 정확도에 충분히 영향을 주어 BN 재구성의 사용을 정당화하는가?

주요 결과

  • BNFF는 DenseNet-121 및 ResNet-50의 학습 중 상당한 메모리 접근 감소 및 속도 향상을 달성한다.
  • Intel Skylake CPU에서 BNFF는 DenseNet-121에 대해 전체 학습 속도up이 25.7%, ResNet-50에 대해 16.1%를 제공합니다.
  • 전방향 패스 이득은 DenseNet-121에서 BNFF로 47.9%에 도달하고, 역방향 패스 이득은 15.4%에 도달한다(DenseNet-121).
  • Mean/Variance Fusion(MVF) 및 ReLU-Convolution Fusion(RCF)은 BNFF 위에 추가 이득을 제공한다(예: MVF가 Skylake에서 전체 이득 1.7%를 추가).
  • Inter-Composite-Layer Fusion(ICF)은 DenseNet에서 CPL 경계에서 BN 관련 메모리 접근을 추가로 제거함으로써 BNFF 대비 약 18% 수준의 개선을 제공할 수 있다.
  • BNFF는 메모리 접근을 최대 ~19%까지 줄이고 캐시 동작을 개선하며 서브루틴 호출에서 발생하는 오버헤드를 감소시킨다.

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

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

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

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