Skip to main content
QUICK REVIEW

[논문 리뷰] Quantized Neural Networks: Training Neural Networks with Low Precision Weights and Activations

Itay Hubara, Matthieu Courbariaux|arXiv (Cornell University)|2016. 09. 22.
Neural Networks and Applications참고 문헌 53인용 수 1,420
한 줄 요약

본 논문은 극히 낮은 정밀도(가중치/활성화 1비트, 그래디언트는 6비트로 양자화)로 신경망을 학습시키고 MNIST, CIFAR-10, SVHN, ImageNet에서 경쟁력 있는 정확도를 보이며, 하드웨어 및 에너지 이점이 크게 강조됩니다.

ABSTRACT

We introduce a method to train Quantized Neural Networks (QNNs) --- neural networks with extremely low precision (e.g., 1-bit) weights and activations, at run-time. At train-time the quantized weights and activations are used for computing the parameter gradients. During the forward pass, QNNs drastically reduce memory size and accesses, and replace most arithmetic operations with bit-wise operations. As a result, power consumption is expected to be drastically reduced. We trained QNNs over the MNIST, CIFAR-10, SVHN and ImageNet datasets. The resulting QNNs achieve prediction accuracy comparable to their 32-bit counterparts. For example, our quantized version of AlexNet with 1-bit weights and 2-bit activations achieves $51\%$ top-1 accuracy. Moreover, we quantize the parameter gradients to 6-bits as well which enables gradients computation using only bit-wise operation. Quantized recurrent neural networks were tested over the Penn Treebank dataset, and achieved comparable accuracy as their 32-bit counterparts using only 4-bits. Last but not least, we programmed a binary matrix multiplication GPU kernel with which it is possible to run our MNIST QNN 7 times faster than with an unoptimized GPU kernel, without suffering any loss in classification accuracy. The QNN code is available online.

연구 동기 및 목표

  • 저정밀 가중치와 활성화로 학습 및 추론 모두에서 Quantized Neural Networks(QNNs)를 도입한다.
  • 표준 벤치마크에서 QNN이 32비트 네트워크와 유사한 정확도를 달성할 수 있음을 보인다.
  • 매개변수 그래디언트를 양자화하고 학습 효율을 위해 6비트 그래디언트 사용을 탐구한다.
  • MNIST, CIFAR-10, SVHN, ImageNet 및 언어 모델에서 QNN을 평가하여 다재다능성을 평가한다.
  • 이진화된 네트워크의 하드웨어 영향 및 에너지 효율성을 논의한다.

제안 방법

  • 순방향 패스 중 가중치와 활성화를 +1 또는 -1로 제한하기 위해 결정적 또는 확률적 이진화를 사용한다.
  • 이산화 단계에서 그래디언트를 전달하기 위해 Straight-Through Estimator를 적용한다.
  • 학습 중 곱셈을 줄이기 위해 시프트 기반 배치 정규화(SBN)를 도입한다.
  • 곱셈 연산을 최소화하기 위한 시프트 기반 AdaMax 최적화를 제안한다.
  • 가중치/활성화/그래디언트에 대해 선형 및 로그 양자화 방식(AP2 기반 양자화)을 채택한다.
  • 그래디언트 및 매개변수 업데이트에 실수 누적기를 사용하여 SGD의 효과를 유지한다.

실험 결과

연구 질문

  • RQ11비트 가중치와 활성화로 학습하고 배포하는 것이 큰 정확도 손실 없이 가능한가?
  • RQ2작거나 비트 폭으로 그래디언트를 양자화하는 것이 학습 성능에 미치는 영향은?
  • RQ3극저정밀도를 사용한 대규모 데이터셋(ImageNet)에서 QNN의 성능은?
  • RQ4완전정밀 네트워크와 비교할 때 QNN의 에너지 및 메모리 효율성은 어떤 의미를 가지는가?
  • RQ5QNN이 순환 모델과 언어 작업에서도 비슷한 정확도로 확장될 수 있는가?

주요 결과

  • BNNs/BNNs-변형 학습은 ImageNet에서 1비트 가중치와 2비트 활성화로 경쟁력 있는 top-1 정확도을 달성할 수 있다(예: AlexNet의 41.8% top-1, 67.1% top-5; GoogleNet의 47.1% top-1, 69.1% top-5).
  • 4비트 가중치와 활성화를 가진 이진화된 네트워크는 ImageNet에서 약 5.5–5.6%의 top-1 정확도 감소를 보이며(예: GoogleNet의 4비트에서 66.5% top-1; 6비트 가중치/활성화/그래디언트에서 66.4% top-1).
  • 6비트 양자화된 그래디언트로 학습하면 성능 저하가 완만하게 나타남(일부 구성에서 그래프의 46.8% 감소 등).
  • 펜 트리뱅크의 언어 모델은 4비트 가중치/활성화가 특정 RNN/LSTM 구성에서 32비트 정확도와 일치할 수 있음을 보인다(예: 4비트 RNN/LSTM, 4비트 활성화/가중치).
  • 순전파 메모리와 에너지는 BNN에서 대폭 감소한다(메모리 32배 작고 메모리 접근 32배 감소; XNOR-카운트가 다수의 MAC를 대체).
  • 하드웨어 커널 구현(바이너리 행렬 곱)은 상당한 속도 향상을 낳을 수 있다(예: MNIST BNN이 GPU에서 정확도 손실 없이 7배 빠름).

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

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

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

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