본문 바로가기

Programmer Jinyo/Machine Learning

MobileNets (모바일넷) 내용 정리 글


투명한 기부를 하고싶다면 이 링크로 와보세요! 🥰 (클릭!)

바이낸스(₿) 수수료 평생 20% 할인받는 링크로 가입하기! 🔥 (클릭!)

더보기

* 잊지 말자!

Kernel size : conv filter의 width , height

Depth-wise Convolution : 

 

 

 

모바일 기기나 어플 등에서 성능이 낮은 환경에서도 사용할 수 있도록 효율성에 초점을 맞추어 설계된 모델이라고 한다.

 

작은 신경망을 만들기 위한 기술들은 아래와 같은 종류들이 있다.

빨간 글씨가 모바일넷에서 사용됨

FC-Layer을 없애거나

Kernel 사이즈를 줄이거나

채널 수를 줄이거나

다운샘플링을 하거나

더보기

초반에 다운샘플링을 많이 하면 accuracy가 떨어지며 파라미터가 적어짐. 후반에 downsampling을 많이 하면 accuracy가 좋지만 파라미터가 많아짐. 이라고 설명이 써있는걸 봤는데, hmm.. 내생각엔 파라미터 수는 변함 없을 것 같고 GPU RAM 크기를 얼마나 먹냐, runtime이 얼마나 느려지냐 차이 같은데...

Depthwise Separable convolutions를 쓰거나

(잘 모른다면 이전 글 참고하시면 좋을 것 같아요 ㅎㅎ..

2019/12/10 - [Programmer Jinyo/Machine Learning] - Depthwise Separable Convolution 설명 및 pytorch 구현 )

Shuffle Operatoions 하거나

Distillation & compression (정제, 압축) 하거나.

 

그래서 이 모델은 세가지 특징을 가지고 있다.

1. Depthwise separable convolution

2. Width multiplier

3. Resolution multiplier

 

우선 Depthwise separable convolution에 대한 설명이다.

 

논문에 실린 그림이다.

Depthwise Conv를 진행한 후 BN ReLU를 진행하는 점이 일반적인 Depthwise Seperable Conv와 다른 점이다.

해당 과정을 거치면 일반적인 conv 2d 과정보다 파라미터 수와 computational cost를 줄일 수 있게 된다.

 

이를 통하면 accuracy는 많이 줄지 않으면서도 많은 효율을 뽑아낼 수 있다.

 

Width Multiplier 의 경우 파라미터 a를 도입하여 uniform 하게 thin network를 만드는 것을 목적으로 한다.

input channel M이 있을 떄, aM개의 output channel을 만들어 주는 것이다.

depthwise separable convolution과 a를 같이 사용하면 연산량은 

 

이 된다.

 

a는 0~1사이의 값을 가지며 1, 0.75, 0.5 , 0.25등의 값을 넣어줄 수 있게 된다. baseline은 a=1인 경우이다.

위의 결과를 보면 대략적으로 a*a의 scale로 연산량이 줄게 된다.

 

 

Resolution Miltiplier

이번엔 resolution multiplier g를 도입해서 연산량을 줄인다.

이것은 input이미지와 내부 모든 layer의 representation을 같은 곱으로 줄이는 것을 목적으로 한다.

예를 들어 입력 해상도가 224 * 224면 192*192라던가 160*160 등으로 줄어들 수 있게 되는 것이다.

 

 

연산은 위와 같이 줄어든다.

 

 

 

(진짜 Deptwise seperable conv빼고는 별거 없다;;; 있어보일려고 파라미터 붙였네 ㅋㅋㅋㅋㅋㅋ)

 

 

 

 

 

실험 결과는 위와 같았다고 한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

참고 링크

http://melonicedlatte.com/machinelearning/2019/11/01/212800.html

https://hichoe95.tistory.com/53

https://arxiv.org/pdf/1704.04861.pdf (논문 원본 링크)