티스토리 뷰

728x90

[Day 35] 모델 경량화 - 1

 

 

 

1. 강의 복습 내용

더보기

모델 경량화 - 1

 

 

1. 머신러닝 모델 경량화

- 머신러닝 모델은 여러 데이터들이 공유하는 어떤 패턴을 표현하기 위한 함수

- 가장 표현력이 좋다고 알려져 광범위하게 쓰이는 함수가 Deep Neural Network (DNN)

- 다양한 데이터를 아우르는 특징들을 많이 표현하고 싶을 수록 더욱 크고 복잡한 모델이 필요

- 크고 복잡한 모델이 필요하게 되는 것은 자연스러운 흐름

- 하지만, 사람 사회로 이 기술들이 스며들기 위해서는 대부분 크기는 점차 작아지고, 성능은 향상되는 방향으로 기술이 발전하는 모습을 보인다.

 

- 결국, 머신러닝도 이같은 흐름을 따를 것이고 머신러닝 모델 경량화 기술이 요구될 것이다.

 

*) 경량화? 소형화?

  • On-Device AI 혹은 서버형 경량화로 우리가 보고 싶어하는 효과는 속도, 용량, 연산의 최소화
  • 작아지게 (소형화) 만들기 보다는, 가벼워지게 (경량화) 만드는 것이 주안점
  • 작은 것은 부피 (혹은 크기)를 말하는 것이고, 가벼운 것은 무게를 말하는 것
  • 작은 것과 가벼운 것은 다르다
  • 소형화 (小形化)는 작다는 뜻이고, 경량화 (輕量化)는 가볍다는 뜻

*) 무엇을 경량화할까?

: 모델이 가진 무의미한 정보량을 줄여서 경량화를 달성하는 것이 목표

- 무의미한 정보가 줄어들면, 정보의 밀도가 올라간다. (정보=유의미한 정보+무의미한 정보)

- 따라서 모델 경량화란 모델 압축(Compression)과도 같다. (소형화가 아니다)

 

*) 어떻게 경량화할까?

: 즉 큰 모델에 들어있는 정보 중 더 중요한 정보와 덜 중요한 정보를 어떻게 가려낼 것인가? 의 질문으로 환원가능

- 덜 중요한 정보를 배제하는 방법

 

  • Pruning
  • Quantization
  • Knowledge Distillation
  • Filter Decomposition

2. Edge Device를 위한 모델 경량화

Cloud에서 처리하는 과정 vs Edge Device에서 처리하는 과정
각각의 단계에서의 경량화, 주로 Edge Inference를 다룰 예정

- 우리의 실생활에서는 수 많은 Edge Device를 통해 데이터를 주고 받고 결정을 한다.

- 하지만 Cloud에서 수 없이 많은 Edge Device를 통해 전달되는 데이터들을 처리하고 주고 받기에는 너무 많은 과정을 거쳐야하고, 연산량도 많아 Cloud가 감당할 수 없다.

- 때문에, 적절히 Edge Device 내에서 데이터를 처리하고 결정하는 과정을 거친다면 Cloud 부담이 많이 줄어들 것이다.

- Edge Device는 Cloud만큼의 리소스를 사용할 수 없기 때문에 각각의 리소스 한계에 맞는 모델이 필요할 것이고, 그치만 성능은 최대로 하는 기술이 필요하다. (모델 경량화의 필요성)

 

 

*) Edge Device 관점에서의 AI Model

- Cloud-Based AI의 경우, 모델의 성능을 높이기 위해 더더욱 거대한 모델, 파라미터 수가 기하급수적으로 커지거고 이런 모델들의 Performance를 얻기 위해 학습시키는 것에도 방대한 양의 Cost가 소요된다.

- 하지만 Edge Intelligence, 즉 Edge Device에서의 모델의 경우엔 다른 기준이 존재한다.

Edge Device에서의 AI Model

3. 머신러닝 모델 최적화

: 제약 조건(경량화) 하에서의 의사결정(최적화)

- Optimization Problem은 Decision Problem으로 바꿔 풀 수 있다.

- 즉, Decision Problem이 다항시간 안에 풀 수 있는 최대가 P이면 Optimization Problem은 항상 P 일 것이다.

- 반대로 Optimization Problem을 풀면 Decision Problem 또한 항상 풀 수 있다.

AI Model에서의 Decision Problem을 통한 Optimization Problem 해결 과정
Decision을 통한 Optimization 도출

2. 피어 세션

더보기

1. 1주일 간 피어 세션 진행 방식, 기록 방식 논의

2. 강의 내용에 대한 토의

- Further Question 위주 토론


3. Conclusion

더보기

1. 롯데정보통신 주최 CV 대회 참여 (재미삼아 다음주 휴강기간 중에 하기 위해서)

2. 강의가 다소 많이 추상적인 것 같아 흐름을 파악하고 떠올리기 힘들었음 (강의 내용을 토대로 목차 형태로 나타내기가 너무 난해했음) -> 슬라이드 별 Reference를 참고해야할 것 같다.

3. 강의와 함께 토이코드가 주어진 것은 매우 좋은 것 같다. (실험 정신)

 

4. U-Stage 마지막 주이므로, 전체 한번 정리를 해보고 무엇이 부족한지 파악하는 시간을 가져봐야 할 것 같다.

- 또 무엇에 내가 가장 흥미를 느꼈었는지. 되돌아보는 시간


'부스트캠프 AI Tech > 학습정리' 카테고리의 다른 글

[Day 37] 모델 경량화 - 3  (0) 2021.03.17
[Day 36] 모델 경량화 - 2  (0) 2021.03.16
[Day 34] Computer Vision (CV) - 5  (0) 2021.03.12
[Day 33] Computer Vision (CV) - 4  (0) 2021.03.11
[Day 32] Computer Vision (CV) - 3  (0) 2021.03.11
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함