[논문 리뷰] Binary Complex Neural Network Acceleration on FPGA
이 논문은 Alveo U280 플랫폼에서 5,800 프레임 이상을 초당 처리하는 이진 복소수 신경망(BCNN)을 위한 하드웨are-소프트웨어 공동 설계 기반 FPGA 가속기를 제안한다. 고수준 합성(HLS)을 사용한 새로운 2D 컨볼루션 가속기와 함께 구조적 프루닝을 통합함으로써 모델 크기와 메모리 대역폭을 줄였으며, 정확도를 유지하면서 ResNet-18에서 GPU 대비 1.58배, NIN-Net에서 1.51배 빠른 성능을 달성한다.
Being able to learn from complex data with phase information is imperative for many signal processing applications. Today' s real-valued deep neural networks (DNNs) have shown efficiency in latent information analysis but fall short when applied to the complex domain. Deep complex networks (DCN), in contrast, can learn from complex data, but have high computational costs; therefore, they cannot satisfy the instant decision-making requirements of many deployable systems dealing with short observations or short signal bursts. Recent, Binarized Complex Neural Network (BCNN), which integrates DCNs with binarized neural networks (BNN), shows great potential in classifying complex data in real-time. In this paper, we propose a structural pruning based accelerator of BCNN, which is able to provide more than 5000 frames/s inference throughput on edge devices. The high performance comes from both the algorithm and hardware sides. On the algorithm side, we conduct structural pruning to the original BCNN models and obtain 20 $ imes$ pruning rates with negligible accuracy loss; on the hardware side, we propose a novel 2D convolution operation accelerator for the binary complex neural network. Experimental results show that the proposed design works with over 90% utilization and is able to achieve the inference throughput of 5882 frames/s and 4938 frames/s for complex NIN-Net and ResNet-18 using CIFAR-10 dataset and Alveo U280 Board.
연구 동기 및 목표
- 자원 제약이 있는 엣지 디바이스에서 복소수 신경망의 실시간 추론을 가능하게 하기 위해.
- 모델 압축과 효율적인 하드웨어 매핑을 통합하여 대규모 DNN에서의 메모리 대역폭과 온칩 자원 압박을 줄이기 위해.
- 구조적 프루닝과 맞춤형 컨볼루션 커널 아키텍처를 활용한 고처리량, 저지연 FPGA 가속기 설계를 위해.
- 실세계 데이터셋인 CIFAR-10과 ImageNet을 대상으로 제안된 BCNN 가속기의 성능 및 효율성을 평가하기 위해.
제안 방법
- 구조적 프루닝은 Surrogate Lagrangian Relaxation(SLR)를 사용하여 BCNN 모델에 적용되어 최대 20×의 프루닝 비율을 달성하면서 정확도 손실를 최소화한다.
- 이진화된 가중치는 Straight-Through Estimator(STE)를 사용하여 양자화되어 하드웨어에서 효율적인 이진 연산을 가능하게 한다.
- 이중 복소수 연산을 위한 병렬 처리를 극대화하고 파이pline 시작 간격을 최소화하기 위해 새로운 2D 컨볼루션 가속기를 설계한다.
- Xilinx Alveo U280 FPGA에 가속기를 구현하기 위해 고수준 합성(HLS)을 사용하며, 처리량을 극대화하기 위해 자원 스케줄링을 수행한다.
- 외부 메모리 액세스의 병목 현상을 방지하기 위해 온칩 메모리 사용을 최적화하며, 높은 온칩 대역폭과 낮은 지연을 활용한다.
- CIFAR-10과 ImageNet 데이터셋을 사용하여 하드웨어 평가를 수행하였으며, Alveo U280와 RTX 6000 GPU를 대비해 처리량과 지연 시간을 측정하였다.
실험 결과
연구 질문
- RQ1구조적 프루닝과 이진 양자화를 조합하여 복소수 신경망에서 높은 압축 비율을 달성하면서 정확도 손실를 최소화할 수 있는가?
- RQ2이진 복소수 컨볼루션 연산에 대해 처리량과 하드웨어 활용도를 극대화하기 위해 FPGA 기반 가속기를 어떻게 아키텍처화할 수 있는가?
- RQ3FPGA 기반 BCNN 가속기의 성능 향상은 GPU 기반 구현 대비 추론 처리량과 에너지 효율 측면에서 얼마나 향상되는가?
- RQ4풀링 레이어의 종류(스펙트럼, 평균, 최대)가 BCNN 모델의 정확도와 효율성에 어떤 영향을 미치는가?
- RQ5대규모 BCNN 모델에서 외부 메모리 액세스의 병목 현상을 방지하기 위해 온칩 메모리 활용도를 얼마나 극대화할 수 있는가?
주요 결과
- 제안된 BCNN 가속기는 Alveo U280 FPGA에서 NIN-Net에 대해 5,882 프레임/초, ResNet-18에 대해 4,938 프레임/초의 처리량을 달성한다.
- 모델 압축 비율은 20×이며, CIFAR-10에서 복소수 NIN-Net의 경우 정확도 손실 1.9%, 복소수 ResNet-18의 경우 2.8%에 그친다.
- FPGA 구현은 NIN-Net과 ResNet-18에 대해 각각 GPU 대비 1.51배와 1.58배의 속도 향상을 달성한다.
- 하드웨어 활용도는 90% 이상을 기록하며, LUT가 주요 자원 병목 요소로 나타나며, NIN-Net과 ResNet-18에 대해 각각 9개와 8개의 병렬 커널을 지원한다.
- 평균 풀링이 정확도는 뛰어나면서도 복잡도는 수용 가능한 수준이어서 최종 모델에 선택되었다.
- ImageNet에서 복소수 ResNetE-18 모델은 원본 형태에서 83.46%의 top-5 정확도를 유지하며, 프루닝 후 78.38%, 프루닝+양자화 후 71.69%의 정확도를 기록한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.