Image processing/Real-time

[2015] Flattened Convolutional Neural Networks for Feedforward Acceleration

유니디니 2020. 8. 23. 22:15
728x90
반응형

Written by Jonghoon Jin, Aysegul Dundar & Eugenio Culurciello

 

[Introduction]

 

빠른 Feed Forward 실행을 위해 설계된 평면화 된 컨볼루션 신경망을 제시하고자 한다. Parameter들의 중복성, 특히 컨볼루션 신경망에서 컨볼루션 필터의 가중치에 대해 광범위하게 연구되었으며 학습 후 필터의 Low rank 기반을 구성하기 위해 다양한 방법들이 제안되었다. 본 논문에서는 3D 공간에서 모든 방향에 걸쳐 연속적인 1차원 필터로 구성된 평면화된 네트워크를 학습시켜 기존 컨볼루션과 비슷한 성능을 얻었다. 기존 필터의 중복된(redundancy) 계산을 줄였고, 학습과정에서 3D 필터들을 1D 필터들의 연속된 3번 계산으로 달성할 수 있었다. (lateral, vertical and horizontal)

 

[Flattening Convolution Filters]

 

C : 채널, X, Y : spatial dimensions, F : output의 number of filters

I는 입력특징 맵을 N과 M은 input의 Spatial dimensions을 의미한다. 컨볼루션 필터는 세개의 외적 연산으로 분리할 수 있으며, a는 lateral filter, B는 vertical filter, r은 horizontal filter를 의미한다. 

 

분류 문제에서 난이도가 높아질수록 문제를 해결하기 위해 더 많은 수의 필터들이 필요하며, 학습된 필터는 고유 값을 분산하고 분리시키면 큰 정보의 손실이 발생한다. 대안으로, 모델이 학습시 1D 분리 필터를 학습할 수 있도록 receptive field 연결을 제한할 수 있다. 아래의 방정식 1과 같이, 컨볼루션 신경망의 단일 레이어가 다음과 같이 수정된다. 

파라미터의 경우 XYC에서 X+Y+C로 줄었으며 전체 연산의 수는 MNCXY에서 MN(C+X+Y)로 줄었다. 

우리는 학습시 오랜 시간을 소요하는 bias term을 추가하지 않았고, 테스트 시에 1D filters에 분리 적용하였다. 

 

[실험 결과]

 

학습시, 수렴율은 다음과 같다. 

파라미터 Reduction

C와 F는 input과 output channels를 나타내며, X와 Y는 필터의 spatial diensions을 나타낸다. 기존 컨볼루션 연산에 비해 연산량이 줄어든 것을 알수 있다. 

이미지 크기에 따라 메모리 사용량을 나타낸 그래프로, Naive 접근방식은 메모리 접근으로 인해 제한된 병렬처리를 이용하여 cnn의 실시간 성능을 제한합니다. BLAS 접근 방식은 추가 메모리 Copy 및 Space를 희생하면서 컨볼루션을 행렬 곱셈으로 처리한다. 반면에, 1D convolution pipeline은 피드 포워드에서 추가 리소스 없이도 3D 컨볼루션과 달리 역전파에서 추가 메모리 없이 충분한 병렬 처리를 달성할 수 있습니다. 따라서, flattened layer는 그림 6과 같이 각 컨볼루션이 6개의 조각으로 나뉘어지더라도 실제로는 기준 컨볼루션 레이어보다 적은 메모리를 사용한다. 

우리는 1D 구조로 변형된 모델이 1D 필터를 성공적으로 학습할 수 있으며, 기준 모델보다 evaluation 속도가 약 2배 향상된다는 것을 발견하였다. 또한, 매개변수가 10배 더 적으며, 평면화 된 컨볼루션 네트워크가 Cifar-10, Cifar-100 및 MNIST에서 유사하거나 더 나은 정확도를 달성하였다. 또한, 제안된 방법은 모델이 학습되면 튜닝이나 POST processing에 대한 노력이 필요하지 않으며 최적화 문제 해결의 어려움을 우회하여 1D 필터를 학습한다. 매개변수 감소 방법의 단순한 특성을 적용하여 큰 모델을 가속화 할 수 있을것으로 예상된다.

 

참고자료 : https://arxiv.org/pdf/1412.5474.pdf

반응형