다양한 상황에서 AI 모델을 최적화하고 경량화 하는 방법을 탐색
AI 경량화 기술과 접근 방식의 이해
파라미터 효율을 중시한 AI 모델 학습
최적화 기술을 통한 성능 향상 방법 숙지
여러 GPU로 학습하는 방법
실시간 처리
저자원 환경
에너지 효율성
AI 모델의 거대화로 계산 자원량이 기하급수적으로 늘었는데, 이런 환경에서 거대한 모델을 그대로 운영하기에는 다양한 현실적인 문제들이 생김.
따라서 경량화와 최적화 없이는 사실상 AI서비스는 불가함.
학습된 모델에서 중요도가 낮은 뉴런이나 연결을 제거하여 모델의 크기와 계산 비용을 줄이는 기법
Structured Pruning
뉴런, 채널, 혹은 레이어 전체를 제거하는 방식

Unstructured Pruning
연결된 가중치를 개별적으로 검증하여 독립적으로 제거하는 방식


출처: https://blogs.novita.ai/understanding-the-difference-structured-vs-unstructured-neural-pruning/
고성능의 Teacher 모델로부터 지식을 전달받아 Student 모델을 학습시키는 기법
경량화의 한종류로써 성능 저하를 최소화하며 모델을 압축하는 하나의 방법임.
세부 기법
모델의 가중치와 활성화률 낮은 비트 정밀도로 변환하여 저장 및 계산 효율성을 높이는 기법.
예를들면 32비트 부동소수점을 8비트 정수로 변환
모델 크기와 Fine-tuning
PEFT: Parameter-Efficient Fine-Tuning
PEFT 기법은 훈련된 모델을 자원 효율적인 방식으로 재학습하는 방법론
최대한 작은 파라미터를 학습하면서 Full-fine tuinig하는 것과 비슷한 성능을 내는 것이 목표
세부 기법
대규모 언어모델들은 애초에 요즘 단일 GPU로는 절대 학습 못하게 나온다...!
DIstributed Training
병렬컴퓨팅? 병렬적으로 처리할 대상을 뭘로 설정하느냐