딥러닝에서 말하는 경량화란?

1. 경량화란?

 

switch transformer model은 거대하기로 유명한 GPT-3 parameter의 9.14배인 1600000000000개(1.6조)

 

text description으로부터 image를 생성하는 DALL-E는 GPT-3 parameter의 0.068배인 12000000000개(120억)

 

성능을 높이려면 parameter 수를 늘려야한다고는 하지만 너무 심한 수준으로 끝을 모르고 증가하는 요즘 추세

 

거대기업이 아닌 일반 사람이 이런 모델을 돌리는 것은 사실상 불가능한 수준

 

무겁고 큰 performance가 좋은 모델에서 performance를 약간 손해보더라도

 

model size를 줄여 원래 모델보다 좋진 못하겠지만 어느정도 쓸 수는 있을 충분히 작은 모델을 만들고자하는 기술

 

 

경량화는 성능을 조금 포기하더라도 model의 크기를 줄여 쉽게 쓸 수 있는 model을 만들고자하는 기술

 

 

2. 경량화된 모델이란

 

사전적으로 소형화(miniaturization)는 단순히 크기만 줄이겠다는 것이지만

 

경량화(lightweight)는 ‘물건이나 규모 등에서 이전보다 줄거나 가벼워짐’이라는 뜻으로

 

단순히 크기만 줄이겠다는 것이 아니라 필요한건 가지면서 덜 필요한건 버리겠다는 뜻

 

 

2-1) 경량화 모델의 기본 도식

 

‘잘’ 수집한 데이터를 모델에 학습 시킨다.

 

모델은 왜 커지는가? 많은 데이터를 학습시키려다보니 그렇다

 

모델이 커지면 compression을 통해 작게 만들어 edge device에 탑재

 

카메라 등을 통해 적용할 곳을 결정하여 필요한 여러 domain에 적용

 

경량화 모델 기본 도식표

 

2-2) TinyML project

 

edge device에서 application을 수행하는 것은 비용이 적게 들고 다양한 응용이 가능하나 딥러닝을 수행하는 것이 쉽지 않다.

 

컴퓨터에서 돌릴 수 있는 cloudAI에서 compression하여 스마트폰에서 돌릴 수 있는 mobileAI가 나옴

 

요새는 extreme compression하여 칩 수준으로 극도의 저전력과 저용량을 가지면서 딥러닝을 돌릴 수 있는 tinyAI 연구가 진행중

 

 

cloudAI, mobileAI, tinyAI 비교한 그림

 

전력과 용량이 매우 작다는 것이 눈에 띔

 

 

2-3) edge computing은 뭐가 좋은가?

 

차에서 번호판을 탐지하는 task를 수행한다고 해보자.

 

기존의 cloud computing은 번호판을 탐지하면 cloud에 보내 처리한다.

 

그러나 만약 internet connection이 끊어지면 cloud에 보낼 수 없으니 항상 internet connection이 필요하다는 단점

 

추가로 데이터가 랜선을 타면서 필요한 송수신 시간(latency)이 필요해서 지연된다는 단점

 

컴퓨팅 파워를 돌리면서 모델 자체도 무거워 많은 전력 필요

 

 

그러나 edge computing을 수행할 수 있다면

 

차량 안에서 black box안에 칩 수준으로 모델을 넣으면 차량 안에서 모든 걸 다 해결함

 

internet connection이 필요없으며 데이터 송수신 시간 지연도 필요없고 모델 자체도 가벼워 전력도 많이 필요 없음

 

 

cloud computing과 edge computing은 cloud에 보내느냐 차량 안에서 모든걸 해결하느냐의 차이

 

 

TAGS.

Comments