Skip to main content
QUICK REVIEW

[논문 리뷰] SC-DCNN: Highly-Scalable Deep Convolutional Neural Network using Stochastic Computing

Ao Ren, Ji Li|arXiv (Cornell University)|2016. 11. 18.
Error Correcting Code Techniques참고 문헌 35인용 수 35
한 줄 요약

이 논문은 스위치 콘볼루션 신경망(DCNNs)을 스위치 컴퓨팅(SC)을 사용하여 실행하는 데 있어 초기 종합적 프레임워크인 SC-DCNN을 제안한다. 이는 초저전력 하드웨어 구현과 높은 에너지 효율성을 달성한다. SC는 AND 및 MUX 게이트를 이용해 간단한 논리 게이트로 곱셈과 덧셈을 수행할 수 있는 특성을 활용하여, 내적, 풀링, 활성화 함수를 최적화한 기능 블록을 설계하고, 기능 추출 유닛을 공동 최적화하며 효율적인 가중치 저장 방식을 적용한다. 그 결과, LeNet5를 17 mm²와 1.53 W로 구현하여 초당 781,250장의 이미지 처리 속도와 510,734 이미지/J의 에너지 효율을 달성한다.

ABSTRACT

With recent advancing of Internet of Things (IoTs), it becomes very attractive to implement the deep convolutional neural networks (DCNNs) onto embedded/portable systems. Presently, executing the software-based DCNNs requires high-performance server clusters in practice, restricting their widespread deployment on the mobile devices. To overcome this issue, considerable research efforts have been conducted in the context of developing highly-parallel and specific DCNN hardware, utilizing GPGPUs, FPGAs, and ASICs. Stochastic Computing (SC), which uses bit-stream to represent a number within [-1, 1] by counting the number of ones in the bit-stream, has a high potential for implementing DCNNs with high scalability and ultra-low hardware footprint. Since multiplications and additions can be calculated using AND gates and multiplexers in SC, significant reductions in power/energy and hardware footprint can be achieved compared to the conventional binary arithmetic implementations. The tremendous savings in power (energy) and hardware resources bring about immense design space for enhancing scalability and robustness for hardware DCNNs. This paper presents the first comprehensive design and optimization framework of SC-based DCNNs (SC-DCNNs). We first present the optimal designs of function blocks that perform the basic operations, i.e., inner product, pooling, and activation function. Then we propose the optimal design of four types of combinations of basic function blocks, named feature extraction blocks, which are in charge of extracting features from input feature maps. Besides, weight storage methods are investigated to reduce the area and power/energy consumption for storing weights. Finally, the whole SC-DCNN implementation is optimized, with feature extraction blocks carefully selected, to minimize area and power/energy consumption while maintaining a high network accuracy level.

연구 동기 및 목표

  • 임베디드 및 모바일 IoT 장치에 소프트웨어 기반 DCNN을 구현할 경우 발생하는 높은 전력 소모와 하드웨어 비용 문제를 해결하기 위해.
  • 초저전력 하드웨어 구현과 높은 에너지 효율을 달성할 수 있도록 스위치 컴퓨팅(SC)을 새로운 패러다임으로 탐색하기 위해.
  • 기능 블록, 기능 추출, 가중치 저장을 최적화하여 최소 면적과 전력 소모를 달성하는 종합적이고 하향식 프레임워크를 설계하기 위해.
  • 스위치 산술의 본질적 불확실성에도 불구하고 공동 최적화와 오차 보정을 통해 높은 네트워크 정확도를 유지하기 위해.

제안 방법

  • 스위치 컴퓨팅을 사용하여 [-1, 1] 범위의 실수를 비트 스트림으로 표현하여 AND 및 MUX 게이트를 통해 저복잡도 산술 연산을 가능하게 하기 위해.
  • 핵심 DCNN 연산인 내적(스칼라 곱), 최대 풀링, 평균 풀링, 활성화 함수(예: ReLU)를 SC 영역에서 전용 하드웨어 블록으로 설계하기 위해.
  • 입력 비트 스트림 길이와 논리 호환성에 맞게 맞춤형 구성이 적용된 기본 기능 블록을 조합한 네 가지 공동 최적화된 기능 추출 블록 아키텍처를 제안하기 위해.
  • SRAM 면적과 전력 소모를 최소화하기 위해 비트 슬라이싱, 가중치 그룹화, 비트 뒤집기 인코딩을 포함한 세 가지 가중치 저장 최적화 기법을 도입하기 위해.
  • 기능 블록 유형, 풀링 방법, 구성 파라미터 등 설계 공간을 탐색하기 위해 하향식 설계 철학을 적용하기 위해.
  • 다양한 구성에서 성능, 면적, 전력 소모, 에너지 효율을 검증하기 위해 LeNet5 기반 실험 평가를 수행하기 위해.

실험 결과

연구 질문

  • RQ1스위치 컴퓨팅이 하드웨어 구현 면적과 에너지 소모를 크게 줄일 수 있도록 DCNN을 효과적으로 구현할 수 있는가?
  • RQ2스위치 컴퓨팅 영역에서 핵심 DCNN 연산인 내적, 풀링, 활성화 함수를 효율적이고 정확하게 어떻게 실현할 수 있는가?
  • RQ3SC 기반 DCNN에서 정확도, 면적, 전력 효율성을 균형 잡는 데 최적의 기능 추출 블록 구성은 무엇인가?
  • RQ4다양한 가중치 저장 방식이 SC-DCNN의 면적과 에너지 효율성에 어떤 영향을 미치는가?
  • RQ5스위치 산술의 본질적 근사치로 인해 발생하는 오차는 얼마나 보완될 수 있으며, 이는 더 큰 네트워크로의 확장성과 추가 효율성 향상에 기여하는가?

주요 결과

  • SC-DCNN 프레임워크는 면적이 17 mm², 전력 소모가 1.53 W에 불과한 LeNet5를 실현하여 임베디드 시스템에 초소형으로 구현 가능하게 한다.
  • 제안된 SC-DCNN는 초당 781,250장의 이미지 처리 속도를 달성하여 실시간 추론에 있어 높은 계산 효율성을 보여준다.
  • 프레임워크는 면적 효율성 45,946 이미지/s/mm²와 에너지 효율성 510,734 이미지/J을 달성하여 기존 GPU 및 CPU 플랫폼을 크게 뛰어넘는다.
  • Nvidia Tesla C2075와 비교해 SC-DCNN(No.11)는 15,625배 높은 처리 속도와 159,604배 높은 에너지 효율성을 확보한다.
  • MUX 기반 기능 추출 블록을 사용한 구성은 가장 낮은 면적과 전력 소모를 달성하지만, APC 기반 블록은 더 높은 정확도를 제공하므로 애플리케이션 요구사항에 따라 최적의 트레이드오프를 설정할 수 있다.
  • 스위치 산술로 인한 오차가 계층 간 상쇄됨을 입증하여, 향후 더 큰 네트워크로의 확장에서 추가 효율성 향상이 가능할 것으로 예상된다.

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

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

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

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