AI 모델 증류란 무엇이며, 작은 모델은 어떻게 큰 모델을 배울까요?
AI 모델 증류는 성능은 좋지만 무겁고 비용이 큰 교사 모델(teacher model) 의 예측 방식 일부를, 더 작고 가벼운 학생 모델(student model) 이 배우게 하는 학습 기법입니다. 정식 명칭은 보통 지식 증류(Knowledge Distillation, KD) 입니다. 핵심은 큰 모델의 파라미터를 단순히 줄이거나 복사하는 데 있지 않습니다. 같은 입력을 보았을 때 교사가 내놓는 답의 분포와, 경우에 따라 내부 표현까지 학생이 닮도록 새로 훈련하는 데 있습니다.arxiv.org
이 기법이 필요한 이유는 비교적 분명합니다. 대형 모델은 복잡한 문제에서 좋은 성능을 낼 수 있지만, 서비스 단계에서는 응답 지연시간, 메모리, 전력, 서버 비용, 기기 성능 같은 제약을 만납니다. 증류는 학습 때는 큰 교사의 계산 능력을 활용하고, 운영 때는 더 작은 학생을 배포하려는 선택입니다. 따라서 증류를 이해하는 가장 좋은 관점은 ‘지능을 작게 접는 마법’이 아니라 학습 비용과 운영 비용을 서로 다른 모델에 배분하는 전략이라는 것입니다.arxiv.org
왜 큰 모델을 그대로 쓰지 않고 학생 모델을 만들까요?
모델을 개발하는 단계와 운영하는 단계의 요구는 다릅니다. 학습 단계에서는 긴 시간과 많은 컴퓨팅 자원을 투입할 수 있지만, 실제 서비스는 짧은 응답시간과 예측 가능한 비용을 요구하는 경우가 많습니다. 특히 모바일 기기, 내장형 장비, 대량 요청을 처리하는 API, 개인정보 때문에 기기 안에서 추론해야 하는 환경에서는 모델의 크기와 지연시간이 제품 요구사항이 됩니다.arxiv.orgarxiv.org
예를 들어 문서 분류 서비스를 생각해 볼 수 있습니다. 한 건의 문서를 수 초 동안 분석해도 되는 내부 검토 업무라면 큰 모델을 사용할 여지가 있습니다. 반면 사용자가 버튼을 누를 때마다 즉시 분류 결과를 보여 주거나, 수백만 건의 문서를 지속적으로 처리해야 한다면 모델 한 번의 추론에 필요한 메모리와 시간이 누적됩니다. 이때 학생 모델이 교사에 가까운 업무 성능을 유지한다면, 품질을 일부 희생하더라도 운영 조건을 만족하는 선택지가 될 수 있습니다.
다만 ‘작은 모델이므로 항상 싸다’고 단정할 수는 없습니다. 모델 파라미터 수는 저장 공간과 메모리의 중요한 지표이지만, 실제 속도는 입력 길이, 배치 크기, 연산 라이브러리, 하드웨어, 메모리 이동 비용에도 좌우됩니다. 논문에서 보고된 속도 향상 수치를 다른 장비와 업무에 그대로 적용해서는 안 되는 이유입니다.arxiv.orgarxiv.org
지식 증류에서 교사와 학생은 무엇을 주고받나요?
일반적인 지도학습에서 정답은 ‘이 이미지는 고양이’, ‘이 문장은 긍정’처럼 하나의 정답 레이블로 주어집니다. 이를 하드 타깃(hard target) 이라고 부를 수 있습니다. 그러나 교사 모델은 정답 하나만 내놓는 것이 아니라, 가능한 답마다 서로 다른 점수나 확률을 계산합니다. 예컨대 이미지에 대해 고양이 0.70, 여우 0.20, 개 0.08처럼 예측할 수 있습니다.
증류는 이 분포를 학생의 추가 학습 자료로 씁니다. 고양이가 정답이라는 사실 외에도, 교사가 이 입력을 여우와 어느 정도 비슷하게 보았고 개와는 덜 비슷하게 보았다는 신호를 전달하는 셈입니다. Hinton과 공동 연구자들은 이런 부드러운 목표값이 단일 하드 레이블에 담길 수 없는 유용한 정보를 전달할 수 있다고 설명했습니다.arxiv.org
여기서 ‘지식’은 사람이 문장으로 적어 둔 규칙 목록을 뜻하지 않습니다. 더 정확히 말하면, 특정 입력을 출력으로 바꾸는 교사의 학습된 함수와 행동 패턴을 뜻합니다. 학생은 교사의 파라미터를 그대로 보유하지 않을 수 있고, 교사와 층 수나 구조가 달라도 됩니다. 중요한 것은 주어진 입력에서 학생의 출력 또는 표현이 설정한 목표에 따라 교사와 가까워지는 것입니다.arxiv.orgarxiv.org
소프트 타깃과 온도는 어떻게 작동하나요?
분류 모델의 마지막 층은 흔히 로짓(logit)이라는 점수를 만든 뒤, 소프트맥스(softmax) 함수를 통해 확률분포로 바꿉니다. 증류에서는 교사와 학생의 로짓을 온도 (T)로 나눈 소프트맥스를 사용해 분포를 더 완만하게 만들 수 있습니다.
[ p_i^{(T)}=\frac{\exp(z_i/T)}{\sum_j\exp(z_j/T)} ]
여기서 (z_i)는 클래스 (i)의 로짓입니다. (T=1)이면 일반적인 소프트맥스와 같고, 온도를 높이면 가장 높은 확률에만 몰린 분포가 평평해집니다. 그러면 낮은 순위 클래스들 사이의 상대적 차이도 학습 신호로 나타날 여지가 생깁니다. 이것이 온도를 ‘교사의 답을 흐리게 한다’고만 설명하면 부족한 이유입니다. 온도는 정보의 양을 자동으로 늘리는 스위치가 아니라, 학생이 따라 배울 분포의 모양을 바꾸는 조정값입니다.arxiv.orgproceedings.mlr.press
실제 학습은 대개 두 목적을 함께 둡니다. 하나는 학생이 실제 정답을 맞히도록 하는 손실이고, 다른 하나는 교사의 소프트 출력에 가까워지도록 하는 증류 손실입니다. 이를 간단히 쓰면 다음과 같습니다.
[ L=\alpha L_{\text{정답}}+(1-\alpha)L_{\text{증류}} ]
(\alpha)와 온도 (T), 증류 손실의 종류는 모두 조정해야 할 값입니다. 온도가 높거나 교사 신호의 비중이 크다고 해서 항상 좋아지는 것은 아닙니다. 교사가 레이블 스무딩(label smoothing)으로 학습된 경우처럼 교사의 분포 특성에 따라 온도 선택의 효과가 달라질 수 있다는 연구 결과도 있습니다.proceedings.mlr.pressproceedings.mlr.press
출력만 따라 하면 충분한가요?
가장 기본적인 증류는 최종 출력만 맞춥니다. 이를 응답 기반 증류(response-based distillation) 라고 부를 수 있습니다. 분류 모델에서는 확률이나 로짓, 언어 모델에서는 다음 토큰에 대한 분포가 주요 대상이 됩니다. 구현이 비교적 단순하고, 교사의 내부 구조를 알 수 없는 상황에서도 교사 출력에 접근할 수 있다면 적용을 검토할 수 있습니다.arxiv.orgproceedings.mlr.press
하지만 최종 답만으로는 교사의 계산 과정을 충분히 전달하기 어렵다고 보는 접근도 있습니다. 특히 Transformer처럼 여러 층의 표현과 어텐션이 중요한 구조에서는 학생이 교사의 임베딩, 은닉 상태, 어텐션 행렬 같은 중간 신호를 함께 모방하도록 만들 수 있습니다. 이를 특징 기반 증류(feature-based distillation) 또는 중간층 증류라고 합니다.arxiv.org
TinyBERT는 임베딩 층, Transformer 층, 예측 층의 신호를 활용하고, 일반 사전학습 단계와 업무별 미세조정 단계에서 증류를 수행하는 방식을 제안했습니다. 해당 논문의 절제 실험에서는 Transformer 층 증류를 제거했을 때 성능 하락이 크게 나타났습니다. 이는 ‘중간층 증류가 언제나 필수’라는 일반 법칙이라기보다, 구조와 과제에 따라 최종 출력 외의 신호가 유용할 수 있음을 보여 주는 사례입니다.arxiv.org
또 하나의 분류는 오프라인 증류와 온라인 증류입니다. 오프라인 증류는 이미 훈련된 교사를 고정해 두고 학생을 학습합니다. 온라인 증류는 여러 모델이 학습 과정에서 서로 가르치거나, 동시에 형성되는 교사 신호를 씁니다. 교사를 따로 보관할 수 있는지, 학습 비용을 얼마나 감당할 수 있는지, 모델들을 함께 훈련할 필요가 있는지가 선택 기준이 됩니다.arxiv.org
증류는 가지치기와 양자화와 어떻게 다른가요?
모두 모델 경량화라는 같은 목적 아래 언급되지만, 줄이는 대상이 다릅니다. 증류는 학습 신호와 학생 모델의 행동을 다룹니다. 반면 가지치기(pruning)는 중요도가 낮은 연결, 채널, 헤드, 층 등을 없애 구조를 줄이는 방식입니다. 양자화(quantization)는 가중치와 활성값을 표현하는 비트 수나 수치 형식을 낮춰 저장 공간과 연산 비용을 줄이는 방식입니다.arxiv.orgarxiv.orgarxiv.org
| 방식 | 주로 바꾸는 대상 | 대표적인 강점 | 확인해야 할 조건 |
|---|---|---|---|
| 지식 증류 | 학생의 학습 목표와 구조 | 작은 모델이 교사의 행동을 학습 | 교사 품질, 데이터, 용량 격차 |
| 가지치기 | 연결·채널·헤드·층 | 기존 구조에서 중복을 제거 | 희소 구조를 실제 장비가 빠르게 처리하는지 |
| 양자화 | 수치 정밀도 | 메모리와 정수 연산 비용 절감 | 정확도 저하, 하드웨어·런타임 지원 |
| 결합 적용 | 학습과 표현 방식 모두 | 더 큰 경량화 가능성 | 단계별 품질 저하와 운영 복잡성 |
가령 32비트 부동소수점 가중치를 8비트 정수로 바꾸는 것은 양자화입니다. 큰 교사의 출력 분포를 목표로 6층짜리 학생 Transformer를 학습하는 것은 증류입니다. 둘을 연속해서 적용할 수도 있습니다. 다만 논문에서 압축률이 높았다는 사실만으로 실제 서비스 지연시간까지 같은 비율로 줄어든다고 볼 수는 없습니다. 양자화는 특히 목표 CPU, GPU, NPU가 해당 정수 연산을 얼마나 잘 지원하는지에 따라 효과가 달라집니다.arxiv.orgarxiv.org
BERT 계열 사례는 무엇을 보여 주나요?
언어 모델 증류는 개념을 이해하기 좋은 사례입니다. BERT-base는 문장 이해 업무에 널리 활용된 사전학습 Transformer이지만, 자원이 제한된 환경에 배포하기에는 부담이 될 수 있습니다. DistilBERT 연구는 BERT의 일부 층을 이용해 더 작은 모델을 초기화하고, 언어 모델링 손실, 증류 손실, 코사인 거리 손실을 결합하는 사전학습 증류 방식을 제시했습니다.arxiv.org
그 연구는 GLUE 개발 세트에서 BERT 성능의 약 97%를 유지하면서 파라미터 수를 약 40% 줄였다고 보고했습니다. 또한 논문에서 설정한 CPU 측정 조건에서는 더 짧은 추론 시간을 보였습니다. 그러나 이 수치는 영어 벤치마크, 특정 BERT 구성, 특정 하드웨어, 정해진 입력 조건에서 얻은 결과입니다. 한국어, 긴 문서, 검색 증강 시스템, 생성형 대화, 다른 가속기에서 같은 결과를 보장하는 일반 수치로 인용해서는 안 됩니다.arxiv.org
TinyBERT는 더 작은 4층 모델이 논문 조건에서 BERT-base 대비 높은 성능을 유지하면서 크기와 추론 시간을 크게 줄였다고 보고했습니다. 동시에 일반 증류, 업무별 증류, 데이터 증강, 중간층 신호가 모두 결과에 영향을 준다는 절제 실험도 제시했습니다. 이 사례가 주는 실무적 교훈은 단순합니다. ‘교사 하나와 학생 하나를 연결하면 끝’이 아니라, 증류 시점·데이터·학생 구조·손실 설계가 결과를 함께 결정한다는 것입니다.arxiv.org
어떤 상황에서 증류 효과가 큰가요?
증류는 큰 모델의 품질을 완전히 동일하게 보존해야 하는 상황보다, 명확한 성능 하한과 강한 운영 제약이 함께 있는 상황에서 특히 검토할 만합니다. 예를 들면 다음과 같습니다.
- 기기 내 추론: 네트워크 연결이 불안정하거나 개인정보 때문에 입력을 외부 서버로 보내기 어려운 환경입니다.
- 대량의 반복 추론: 짧은 입력을 매우 많이 처리해 누적 비용과 지연시간이 중요한 분류·랭킹·탐지 업무입니다.
- 특정 도메인 업무: 범용 모델의 폭넓은 능력 전부보다, 정해진 문서 유형이나 레이블 체계에서의 성능이 더 중요한 경우입니다.
- 모델 앙상블 대체: 여러 모델의 예측을 평균 내는 방식이 품질에는 유리하지만 운영에는 무거울 때, 단일 학생으로 행동을 근사하려는 경우입니다.arxiv.org
반대로 학생이 절대 놓쳐서는 안 되는 희귀 사례를 다루거나, 교사의 긴 추론 과정·도구 사용·복합 안전 정책을 충실히 복제해야 하는 문제라면 평가 기준을 더 넓혀야 합니다. 평균 정확도만 높아도 특정 집단, 희귀 클래스, 위험 입력에서의 성능이 나빠질 수 있습니다. 실제로 최악 클래스 성능과 평균 정확도 사이의 관계는 증류 목적함수 설계에 따라 달라질 수 있다는 연구도 보고되어 있습니다.proceedings.mlr.press
증류의 한계는 무엇인가요?
첫째, 학생은 교사가 아닌 교사의 관찰 가능한 행동을 배웁니다. 교사가 잘못된 예측을 하거나 데이터 편향을 반영했다면, 학생도 그 신호를 학습할 수 있습니다. 하드 레이블 손실을 함께 사용한다고 해도 편향, 사실성, 보안, 안전성 문제를 자동으로 해결하지는 않습니다. 증류 후에도 원본 교사와 독립적인 평가 세트를 사용해 품질을 점검해야 합니다.arxiv.orgproceedings.mlr.press
둘째, 학생이 너무 작으면 교사를 충분히 모사할 수 없습니다. 이를 교사-학생 용량 격차(capacity gap) 라고 부릅니다. 관련 연구에서는 지나치게 큰 교사의 신호를 작은 학생이 따라가려 할 때 성능이 떨어질 수 있으며, 더 정확한 교사가 항상 더 좋은 증류 교사는 아닐 수 있다고 보고했습니다. 교사 선택은 단순한 순위 경쟁이 아니라 학생 구조와의 궁합 문제이기도 합니다.arxiv.orgarxiv.org
셋째, 증류는 운영 비용을 줄이는 대신 학습 비용을 앞당길 수 있습니다. 교사를 먼저 훈련하거나 확보해야 하고, 증류 데이터에 대해 교사의 출력을 계산·저장해야 하며, 온도와 손실 가중치, 층 매핑 등을 탐색해야 합니다. 따라서 한 번만 실행되는 분석이라면 교사를 그대로 쓰는 편이 더 단순할 수 있고, 장기간 반복 서비스라면 학생 개발 비용을 회수할 여지가 커집니다.arxiv.orgarxiv.org
넷째, 증류가 ‘설명 가능한 압축’을 보장하지는 않습니다. 학생이 교사와 비슷한 예측을 내더라도 같은 내부 메커니즘으로 판단하는지, 교사가 가진 모든 정보를 보존했는지는 별개의 질문입니다. 최근 연구도 작은 학생이 교사의 모든 정보를 그대로 증류받는지 불분명하다는 점을 지적합니다.proceedings.mlr.pressproceedings.mlr.press
흔한 오해는 무엇인가요?
“증류하면 성능 저하가 없다”는 오해
증류 연구는 작은 모델이 높은 성능을 유지할 수 있음을 보여 주지만, 이는 정해진 평가 조건에서의 관찰입니다. 입력 분포가 바뀌거나, 긴 입력이 늘어나거나, 희귀 사례가 중요해지면 교사와 학생의 차이가 더 커질 수 있습니다. 따라서 ‘교사의 몇 퍼센트 성능’이라는 단일 숫자보다, 서비스에 필요한 정확도·재현율·지연시간·메모리·안전 지표를 함께 봐야 합니다.arxiv.orgarxiv.org
“교사 모델의 지식을 전부 복사한다”는 오해
학생은 제한된 파라미터와 구조 안에서 교사의 출력 또는 일부 표현을 근사합니다. 교사의 모든 내부 정보가 그대로 이전된다고 보기는 어렵습니다. 증류 결과는 데이터, 목표 함수, 학생의 용량, 최적화 방식에 의존합니다.proceedings.mlr.pressproceedings.mlr.press
“파라미터가 적으면 반드시 빨라진다”는 오해
파라미터 감소는 대개 메모리 요구를 낮추는 데 도움이 되지만, 실제 지연시간은 연산 그래프, 시퀀스 길이, 배치, 장비의 병목에 따라 달라집니다. 특히 Transformer는 입력 길이에 따라 어텐션 계산 부담이 크게 달라질 수 있으므로, 목표 장비에서 엔드투엔드 측정을 해야 합니다.arxiv.orgarxiv.org
“교사 출력만 있으면 원본 데이터는 필요 없다”는 오해
원본 학습 데이터 없이 교사만으로 증류하려는 데이터 프리 또는 제로샷 증류 연구가 존재합니다. 그러나 이는 별도의 합성 데이터 생성 또는 입력 분포를 근사하는 방법을 필요로 하는 특별한 설정입니다. 일반적인 증류는 대표성 있는 입력 데이터와 교사 신호를 함께 사용하며, 실제 정답을 병행하는 방식도 널리 쓰입니다.proceedings.mlr.pressproceedings.mlr.press
실제 도입 전에는 무엇을 점검해야 하나요?
증류는 모델 이름으로 결정하기보다 배포 목표에서 역산하는 편이 안전합니다. 먼저 ‘얼마나 작은 모델이 필요한가’가 아니라 ‘어떤 품질과 운영 조건을 충족해야 하는가’를 수치로 정해야 합니다. 다음 항목은 최소한의 점검 목록입니다.
- 업무 기준을 분리합니다. 평균 정확도 외에 재현율, 거짓 양성·음성 비용, 최악 그룹 성능, 응답시간, 메모리 상한을 정합니다.
- 교사를 검증합니다. 교사의 벤치마크 점수뿐 아니라 실제 도메인 데이터, 오류 유형, 편향 및 안전 요구를 확인합니다. 검증되지 않은 교사는 좋은 학습 신호라는 보장이 없습니다.
- 학생의 예산을 먼저 정합니다. 파라미터 수, 최대 메모리, 허용 지연시간, 입력 길이, 배포 장비를 명확히 합니다. 학생이 너무 작으면 용량 격차가 커질 수 있습니다.arxiv.org
- 증류 목표를 선택합니다. 단순 분류라면 출력 증류부터 시작할 수 있고, Transformer 압축처럼 표현 품질이 중요하면 중간층·어텐션 증류를 실험할 수 있습니다.arxiv.org
- 교사·학생을 같은 시험으로 비교합니다. 일반 정확도뿐 아니라 실제 트래픽과 유사한 입력 길이, 희귀 사례, 오류가 큰 집단을 포함합니다.
- 목표 장비에서 측정합니다. 모델 파일 크기, 메모리, 초기 로딩, 토큰화나 전처리까지 포함한 지연시간, 처리량, 전력 소비를 구분해 봅니다.arxiv.orgarxiv.org
- 후속 압축은 별도 검증합니다. 증류 뒤 양자화나 가지치기를 적용한다면, 각 단계 뒤의 품질 저하와 속도 이득을 따로 기록합니다.
결론: 증류는 ‘작은 모델’보다 ‘맞는 운영 균형’을 만드는 방법입니다
AI 모델 증류는 큰 교사가 학습한 예측 분포와 표현을 학생에게 전달해, 제한된 자원에서 쓸 수 있는 모델을 만드는 방법입니다. 하드 레이블만으로 배우는 학생에게 교사의 소프트 타깃을 추가하고, 필요하면 중간층 신호까지 활용한다는 점이 핵심입니다.arxiv.orgarxiv.org
그러나 증류는 성능을 공짜로 보존하는 파일 압축 기술이 아닙니다. 교사의 오류와 편향, 학생의 용량, 증류 데이터의 대표성, 온도와 손실 설계, 실제 장비의 특성이 결과를 좌우합니다. 따라서 가장 합리적인 다음 단계는 특정 논문의 압축률을 목표로 삼는 것이 아니라, 자신의 업무에서 필요한 품질 하한과 지연시간·비용 상한을 먼저 정의한 뒤 교사와 후보 학생을 같은 조건에서 비교하는 것입니다.