model compression이란 무엇인가?

1. problem solving

 

large model이라는 initial state

 

데이터가 아닌 model이 input

 

적절한 경량화 기술을 통해 problem solving을 하여 compressed model을 얻는 과정이 model compression

 

적절한 경량화 기술은 pruning, quantization, knowledge distillation, filter decomposition 등을 의미

 

 

model compression의 decision problem solving 그림

 

 

2. optimization problem

 

large neural network가 주어질 때 pruning, quantization, knowledge distillation, filter decomposition 등

 

적절한 경량화 기술로 하나의 compressed network를 얻었다면 decision problem을 1번 해결한 것

 

더 적은 cost를 들여 compressed network를 혹시 더 줄일 수 있지 않을까?

 

cost를 줄여가며 iterative하게 반복하여 network를 계속 줄여가는데

 

원하는 성능의 최대치를 얻었다면 optimization problem을 해결한 것

 

 

network를 줄이는데 원하는 성능의 최대치를 얻을 때까지 cost를 줄여가며 network를 작게 만드는 것이 optimization

 

 

3. 주의해야할 사항

 

model compression의 optimization problem의 목표가 model size를 줄이는 것이라는 인상을 주기 쉬운데 그렇지 않다

 

input이 large model이고 output으로 compressed model을 얻는 problem solving 과정이다.

 

이 때 budget, stability, connectivity, CO2 emission, model size, inference time등의 제약조건 하에서

 

최대의 performance를 뽑는 compressed model을 얻는 과정이 model compression이다.

 

model size를 줄이는 것은 목표라기보다는 제약조건에 포함된 것이고

 

size를 줄이면서 성능은 최대인 것을 찾는 과정이라는 것

 

model compression의 정의

 

모델 크기를 줄이는 것은 제약 조건에 포함된 것이고 크기를 줄이면서 성능을 최대화시키는 과정이 compression

 

performance를 무조건 높이려는 modeling에서 현실은 자원이 충분하지 않으니까

 

performance를 약간 손해보더라도 주어진 자원을 지켜가면서 성능을 높이는 과정(model size는 줄여야겠지)이 compression

 

 

TAGS.

Comments