Skip to main content
QUICK REVIEW

[논문 리뷰] Searching for Winograd-aware Quantized Networks

Javier Fernández-Marqués, Paul N. Whatmough|arXiv (Cornell University)|2020. 02. 25.
Advanced Neural Network Applications참고 문헌 69인용 수 14
한 줄 요약

이 논문은 Winograd 변환에서 발생하는 수치적 오차를 모델 훈련 과정에 통합하여 모바일 CPU에서 정확한 INT8 추론을 가능하게 하는 Winograd-aware 양자화 네트워크를 제안한다. 훈련 중에 변환 행렬을 학습하고, 지연 시간을 고려한 NAS 프레임워크(wiNAS)를 사용함으로써, CIFAR-10에서 정확도 손실 없이 im2row 대비 최대 2.66배 빠른 성능을 달성하며, FP32 Winograd 구현보다도 1.32배 더 빠른 추론을 유지한다.

ABSTRACT

Lightweight architectural designs of Convolutional Neural Networks (CNNs) together with quantization have paved the way for the deployment of demanding computer vision applications on mobile devices. Parallel to this, alternative formulations to the convolution operation such as FFT, Strassen and Winograd, have been adapted for use in CNNs offering further speedups. Winograd convolutions are the fastest known algorithm for spatially small convolutions, but exploiting their full potential comes with the burden of numerical error, rendering them unusable in quantized contexts. In this work we propose a Winograd-aware formulation of convolution layers which exposes the numerical inaccuracies introduced by the Winograd transformations to the learning of the model parameters, enabling the design of competitive quantized models without impacting model size. We also address the source of the numerical error and propose a relaxation on the form of the transformation matrices, resulting in up to 10% higher classification accuracy on CIFAR-10. Finally, we propose wiNAS, a neural architecture search (NAS) framework that jointly optimizes a given macro-architecture for accuracy and latency leveraging Winograd-aware layers. A Winograd-aware ResNet-18 optimized with wiNAS for CIFAR-10 results in 2.66x speedup compared to im2row, one of the most widely used optimized convolution implementations, with no loss in accuracy.

연구 동기 및 목표

  • 저정밀도 추론에서 Winograd 컨벌루션의 수치적 불안정성을 해결하기 위해.
  • 수치적 오차를 학습 과정에 노출시켜, INT8 양자화 모델에서 빠른 Winograd 컨벌루션을 사용할 수 있도록 하기 위해.
  • 모바일 CPU에서 정확도와 지연 시간을 고려해 네트워크 아키텍처와 컨벌루션 알고리즘 선택을 공동 최적화하기 위해.
  • 최적의 Winograd-aware 레이어를 선택하여 속도와 정확도를 극대화하는 신경망 아키텍처 탐색 프레임워크(wiNAS)를 개발하기 위해.
  • 학습된 Winograd 변환 행렬이 양자화 환경에서 표준 고정 행렬보다 우수한 성능을 보일 수 있는지 검증하기 위해.

제안 방법

  • 수치적 오차를 고려해 변환 행렬을 네트워크의 학습 가능한 파rameter로 통합한 Winograd-aware 컨벌루션 레이어를 제안하여, 모델이 Winograd 변환에 의해 유도되는 오차에 적응할 수 있도록 한다.
  • 특히 양자화 조건에서의 수치적 오차를 줄이기 위해 표준 Winograd 변환 행렬 형식을 완화하는 방법을 도입한다.
  • Winograd 계산 그래프 내 중간 출력으로 인한 높은 메모리 사용을 관리하기 위해 그래디언트 체크포인팅을 적용한다.
  • 모바일 CPU(A73/A53)에서 측정된 추론 시간을 활용해 정확도와 지연 시간을 동시에 최적화하는, 미분 가능한 NAS 프레임워크인 wiNAS를 개발한다.
  • 검색 과정에서 정확도와 속도를 균형 잡기 위해 지연 시간 가중치 항목(λ₂)을 포함한 다목적 손실 함수를 사용한다.
  • 정확도 저하를 완화하기 위해 초기 레이어에서 더 높은 비트 폭을 사용하는 혼합 정밀도 양자화 기법을 적용한다.

실험 결과

연구 질문

  • RQ1훈련 중에 변환 행렬을 학습함으로써, INT8 양자화 모델에서 Winograd 컨벌루션을 효과적으로 활용할 수 있는가?
  • RQ2Winograd 변환 행렬의 형식을 완화함으로써, 양자화 네트워크에서 수치적 안정성과 정확도에 어떤 영향을 미치는가?
  • RQ3wiNAS와 같은 NAS 프레임워크가 모바일 CPU에서 지연 시간을 최소화하면서도 높은 정확도를 유지하는 Winograd-aware 레이어를 효과적으로 선택할 수 있는가?
  • RQ4학습된 변환과 고정된 변환을 사용할 경우, 양자화 모델에서 지연 시간, 정확도, 수치적 오차 사이의 상호 상충 관계는 어떻게 되는가?
  • RQ5Winograd-aware 레이어가 INT8 추론에서 표준 im2row 및 FP32 Winograd 구현보다 얼마나 뛰어난 성능을 보일 수 있는가?

주요 결과

  • INT8로 양자화된 Winograd-aware ResNet-18는 A73에서 im2row 대비 2.66배 빠른 성능을 보이며, 정밀도가 전체인 모델과 비교해 정확도 손실 없이 유지된다.
  • 이 방법은 FP32 Winograd 구현보다 최대 1.32배 더 빠른 추론 성능을 달성하여, 실질적으로 INT8 Winograd가 FP32를 능가할 수 있음을 입증한다.
  • 학습된 Winograd 변환을 사용할 경우, 표준 고정 변환 대비 CIFAR-10에서 최대 10% 높은 정확도를 기록한다.
  • 지연 시간을 고려한 wiNAS는 CIFAR-100에서 A53에서 최대 9ms의 지연 감소를 이끌어내며, INT8 정확도를 1.1% 향상시킨다.
  • wiNAS를 사용해 최적화된 WA-Q 모델은 전체 정밀도 모델과의 정확도 격차를 메우며, 각각 CIFAR-10과 CIFAR-100에서 INT8 정확도를 0.32%와 1.1% 높게 달성한다.
  • A73에서 강력한 성능 향상을 유지하여, 최적화된 im2row 대비 ResNet-18 모델이 1.54배 더 빠른 성능을 보인다.

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

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

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

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