Skip to main content
QUICK REVIEW

[논문 리뷰] Deep Convolutional Neural Network Inference with Floating-point Weights and Fixed-point Activations

Liangzhen Lai, Naveen Suda|arXiv (Cornell University)|2017. 03. 08.
Advanced Neural Network Applications참고 문헌 20인용 수 84
한 줄 요약

이 논문은 CNN 추론을 위해 부동소수점 가중치와 고정소수점 활성화를 사용해 가중치 저장소와 하드웨어 곱셈기 전력 소모를 줄이고, AlexNet, SqueezeNet, GoogLeNet, VGG-16에서 실험적 결과를 제시한다.

ABSTRACT

Deep convolutional neural network (CNN) inference requires significant amount of memory and computation, which limits its deployment on embedded devices. To alleviate these problems to some extent, prior research utilize low precision fixed-point numbers to represent the CNN weights and activations. However, the minimum required data precision of fixed-point weights varies across different networks and also across different layers of the same network. In this work, we propose using floating-point numbers for representing the weights and fixed-point numbers for representing the activations. We show that using floating-point representation for weights is more efficient than fixed-point representation for the same bit-width and demonstrate it on popular large-scale CNNs such as AlexNet, SqueezeNet, GoogLeNet and VGG-16. We also show that such a representation scheme enables compact hardware multiply-and-accumulate (MAC) unit design. Experimental results show that the proposed scheme reduces the weight storage by up to 36% and power consumption of the hardware multiplier by up to 50%.

연구 동기 및 목표

  • 임베디드 장치에서 CNN 추론의 메모리 및 계산량 감소를 동기 부여한다.
  • 효율성을 위한 혼합 수 표현 스키마(부동소수점 가중치, 고정소수점 활성화) Investigate (한국어 맞춤) – 이 부분은 원문과 같은 의미로 번역해 주시면 좋습니다.
  • 고정소수점 대 부동소수점 가중치 간 표현 범위/정밀도 트레이드오프를 여러 인기 CNN에서 Demonstrate.
  • 제안된 스키마의 하드웨어 함의 및 잠재적인 영역/전력 이점을 보여준다.

제안 방법

  • 사전에 학습된 CNN 가중치를 Caffe 기반 파이프라인에서 부동소수점으로 양자화하고 활성화를 고정소수점으로 양자화한다.
  • AlexNet, SqueezeNet, GoogLeNet, VGG-16에서 다양한 가중치 표현 하에서 네트워크 정확도를 평가한다.
  • 추론 정확도 결정에 있어 표현 범위 대비 정밀도의 역할을 분석한다.
  • MAC 연산에서 하나의 부동소수점 피연산자와 하나의 고정소수점 피연산자를 사용하는 하드웨어 친화적 데이터 경로를 제안한다.

실험 결과

연구 질문

  • RQ1부동소수점 숫자로 표현된 CNN 가중치와 고정소수점 숫자로 표현된 활성화가 주요 아키텍처에서 추론 정확도에 어떤 영향을 미치는가?
  • RQ2저정밀도 가중치를 사용할 때 표현 범위가 정확도 손실의 지배적 요인인가, 부동소수점 가중치가 네트워크 간에 더 일관된 범위를 제공할 수 있는가?
  • RQ3CNN 추론을 위한 혼합 부동소수점/고정소수점 MAC 유닛의 잠재적 하드웨어 영역 및 전력 이점은 무엇인가?
  • RQ4연구된 네트워크 전반에 걸쳐 고정소수점 활성화 형식이 고정소수점 가중치에 비해 비교 가능한 정확도를 달성하면서도 효율적인 하드웨어 구현을 가능하게 할 수 있는가?

주요 결과

  • 가중치를 부동소수점으로 표현하면 같은 비트 폭에서 여러 네트워크에 대해 고정소수점보다 더 유사하거나 더 나은 범위/정밀도 트레이드오프를 달성할 수 있다.
  • 제안된 스키마는 하드웨어 구현에서 가중치 저장을 최대 36% 감소시키고 곱셈기 전력도 최대 50% 감소시킨다.
  • 부동소수점 가중치와 함께 고정소수점 활성화는 하드웨어 친화적인 곱추적 경로를 제공한다.
  • 가벼운 지수(예: 4비트)의 부동소수점 가중치는 여러 네트워크에서 거의 전체 정확도에 근접하게 제공할 수 있는 반면, 고정소수점 가중치 범위에 도달하려면 유사한 정확도에 도달하려면 더 많은 비트가 필요하다.
  • 정확도 동작은 많은 경우 가중치의 맨티사 정밀도보다 표현 범위(지수)에 더 강하게 의존한다.

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

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

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

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