증류가 뭐예요?
지식 증류(knowledge distillation)를, 큰 앵무새의 답을 잔뜩 모아 작은 앵무새에게 따라 하게 가르치는 이야기로 풀어봤어요.
큰 앵무새는 잘해요. 그런데 느리고, 한 번 답할 때마다 콩이 잔뜩 들어요.매일 수천 번 물어봐야 하는 일이면 부담이 커요. 작은 앵무새면 좋겠는데, 작은 앵무새는 그만큼 못해요.
작은 앵무새를 책 산더미로 처음부터 다시 키우기엔 학교가 너무 비싸요.책 읽는 학교(사전 학습)는 콩 백만 자루짜리예요. 우리 일 하나 때문에 다시 열 수는 없어요.
증류는 큰 앵무새가 답한 걸 잔뜩 모아, 작은 앵무새에게 따라 하게 가르치는 거예요.큰 앵무새가 선생, 작은 앵무새가 학생이에요. 책 대신 선생의 답 쪽지로 배우니까 학교보다 훨씬 싸고 빨라요.
큰 앵무새의 답 쪽지 수천 장으로 작은 앵무새를 특훈시켜요.3번의 특훈이 파인튜닝이에요. 선생의 답 쪽지는 사람이 쓴 게 아니라서 합성 데이터라고 불러요.
학생은 선생을 넘기 어렵고, 선생의 실수도 그대로 배워요.그래서 시험으로 꼭 확인해요. 남의 앵무새 답으로 가르치는 건 약관 문제가 있어요. 작은 앵무새로 충분한 일만 보내는 건 라우팅, 다른 방법으로 작게 만드는 건 양자화예요.
증류 = 큰 앵무새의 답을 잔뜩 모아 작은 앵무새에게 따라 하게 가르치기. 학교보다 훨씬 싸게, 우리 일엔 충분한 작은 앵무새를 얻어요. 학생은 선생을 넘기 어렵고 실수도 배워요.
Knowledge distillation. 큰 교사 모델(teacher)의 출력으로 작은 학생 모델(student)을 학습시켜, 비용·지연을 줄이면서 특정 작업 성능을 유지하는 기법이에요. 교사 출력은 합성 데이터이고, 학생 학습은 파인튜닝(SFT)이에요. 타사 모델 출력으로 학습하는 건 약관 위반일 수 있어요.
어른들은 이렇게 불러요
- 지식 증류
Knowledge distillation - 작은 앵무새에게 흉내 가르치기. 큰 앵무새 답으로 작은 앵무새를 가르쳐요.
- 교사 · 학생 모델
Teacher · student model - 선생 앵무새와 학생 앵무새. 선생은 크고 잘하고, 학생은 작고 빨라요.
- 합성 데이터
Synthetic data - 앵무새가 쓴 답 쪽지. 사람이 아니라 앵무새가 만든 문제집. → 앵무새가 쓴 책으로 앵무새 가르치기
- 소형 모델 (SLM)
Small language model (SLM) - 작은 앵무새. 폰이나 노트북에도 올라가요. 한 가지 일은 잘해요.
- 파인튜닝
Fine-tuning - 답 쪽지로 하는 특훈. 학생이 배우는 방법이에요. → 짧은 특훈
- 양자화와의 차이
Versus quantization - 새로 가르치기 vs 같은 새를 가볍게. 증류는 다른 앵무새를 키우고, 양자화는 그 앵무새의 숫자를 굵게 적어요. → 콩을 굵게 세기
- 라우팅
Routing - 어느 앵무새에게 시킬까. 쉬운 일은 학생, 어려운 일은 선생. → 어느 앵무새에게 시킬까
- 평가
Evaluation - 선생과 학생의 시험. 학생이 충분한지 점수로 확인해요. → 시험관의 채점표