[논문 리뷰] Towards Lossless Binary Convolutional Neural Networks Using Piecewise Approximation
이 논문은 이미지넷과 같은 대규모 데이터셋에서의 정확도 저하 문제를 해결하기 위해 다중 이진 컨볼루션 신경망을 위한 조각별 근사(PA) 기법을 제안한다. 이 기법은 정밀도가 높은 가중치와 활성화를 조각들로 분할하고, 각 조각을 스케일링 계수로 근사함으로써 정확도 손실을 줄이고 병렬 비트단위 연산을 유지한다. 이 방법은 전체 정밀도의 ResNet 대비 상위-1 정확도 격차가 약 ~1.0%에 불과하며, Bi-Real Net보다 메모리와 FLOPs가 적은 것을 확인했다.
Binary Convolutional Neural Networks (CNNs) can significantly reduce the number of arithmetic operations and the size of memory storage, which makes the deployment of CNNs on mobile or embedded systems more promising. However, the accuracy degradation of single and multiple binary CNNs is unacceptable for modern architectures and large scale datasets like ImageNet. In this paper, we proposed a Piecewise Approximation (PA) scheme for multiple binary CNNs which lessens accuracy loss by approximating full precision weights and activations efficiently and maintains parallelism of bitwise operations to guarantee efficiency. Unlike previous approaches, the proposed PA scheme segments piece-wisely the full precision weights and activations, and approximates each piece with a scaling coefficient. Our implementation on ResNet with different depths on ImageNet can reduce both Top-1 and Top-5 classification accuracy gap compared with full precision to approximately 1.0%. Benefited from the binarization of the downsampling layer, our proposed PA-ResNet50 requires less memory usage and two times Flops than single binary CNNs with 4 weights and 5 activations bases. The PA scheme can also generalize to other architectures like DenseNet and MobileNet with similar approximation power as ResNet which is promising for other tasks using binary convolutions. The code and pretrained models will be publicly available.
연구 동기 및 목표
- 이미지넷과 같은 대규모 데이터셋에 배포될 때 단일 및 다중 이진 컨볼루션 신경망에서 발생하는 높은 정확도 저하 문제를 해결하기 위해.
- 추론 효율성을 위해 비트단위 연산의 병렬성을 유지하면서 기존의 다중 이진 컨볼루션 신경망보다 정확도 근사 성능을 향상시키기 위해.
- 정밀도가 높은 네트워크와 이진 네트워크 간의 정확도 격차를 줄이되, 계산 또는 메모리 효율성을 희생하지 않기 위해.
- ResNet, DenseNet, MobileNet와 같은 다양한 아키텍처로의 일반화를 위해.
제안 방법
- PA 기법은 가중치와 활성화의 전체 정밀도 범위를 여러 개의 연속된 조각으로 분할한다.
- 각 조각은 학습된 스케일링 계수로 근사되며, 순방향 및 역방향 전파 중에 효율적이고 미분 가능한 근사가 가능하다.
- 전체 정밀도 값을 표현하기 위해 조각별 선형 함수를 사용하여 추론 시 병렬 비트단위 연산을 가능하게 한다.
- 1×1 다운샘플링 레이어의 이진화를 통합하여 메모리 사용량과 FLOPs를 추가로 줄인다.
- 모든 조각에서 잔차 오차를 최소화하는 손실 함수를 사용하여 엔드 투 엔드로 학습한다.
- 가중치와 활성화에 대해 다수의 기저(예: 각각 4개와 5개)를 지원하여 세밀한 근사가 가능하다.
실험 결과
연구 질문
- RQ1조각별 근사 기법은 다중 이진 컨볼루션 신경망에서 정확도 저하를 줄일 수 있을까? 동시에 비트단위 연산의 효율성은 유지되는가?
- RQ2이미지넷에서 PA 기법은 단일 이진 컨볼루션 신경망 및 다른 다중 이진 컨볼루션 신경망과 비교해 정확도와 계산 효율성 측면에서 어떻게 성능을 내는가?
- RQ3PA 기법은 ResNet, DenseNet, MobileNet과 같은 다양한 컨볼루션 신경망 아키텍처로 얼마나 잘 일반화되는가?
- RQ4PA 프레임워크에서 다운샘플링 레이어의 이진화가 메모리 사용량과 FLOPs에 어떤 영향을 미치는가?
주요 결과
- PA-ResNet50 모델은 전체 정밀도 ResNet 대비 상위-1 및 상위-5 정확도 격차를 이미지넷에서 약 1.0%로 줄였다.
- 가중치 기저 4개와 활성화 기저 5개를 사용할 경우, PA-ResNet50는 Bi-Real Net보다 메모리 사용량이 적고, FLOPs는 약 두 배에 불과하지만, 더 깊은 네트워크임에도 불구하고 성능을 확보했다.
- PA 기법은 ABC-Net 및 기타 다중 이진 컨볼루션 신경망보다 정확도가 뛰어나면서도 비트단위 연산의 병렬성을 유지했다.
- 이 방법은 다른 아키텍처로도 잘 일반화되어 ResNet과 유사한 정도의 근사 성능을 DenseNet과 MobileNet에서도 달성했다.
- PA-ResNet50는 메모리 사용량이 단지 40.33 Mbit이며, 전체 정밀도 ResNet50 대비 FLOPs를 약 3배 줄였다.
- 맞춤형 하드웨어에서 PA-Net의 지연 시간은 Bi-Real Net 대비 단지 4T_mul + 4T_add + T_com 증가에 그쳐 강력한 효율 잠재력을 보였다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.