지식 증류(Knowledge Distillation)

•
2026년 10월 09일 발행•2026년 10월 09일 수정
요약

크고 성능이 좋은 교사 모델의 출력 분포나 내부 표현을 작은 학생 모델이 모방하도록 학습시켜 성능을 유지하면서 모델을 경량화하는 기법

중급
신경망의 학습 과정과 손실 함수, 소프트맥스와 교차 엔트로피에 대한 이해가 필요하며, 트랜스포머 구조와 모델 압축의 맥락을 알면 LLM 증류와 비교 내용을 이해하는 데 도움이 된다.

#개념

지식 증류(Knowledge Distillation)는 크고 성능이 좋은 교사 모델(Teacher Model)이 학습한 지식을 작고 가벼운 학생 모델(Student Model)에 옮겨, 학생 모델이 자신의 크기만으로 도달하기 어려운 성능을 얻도록 하는 모델 압축 기법이다. 학생은 정답 레이블만이 아니라 교사의 출력 분포나 중간 표현을 모방하도록 학습되며, 이렇게 얻은 작은 모델은 추론 속도·메모리·비용 면에서 유리해 서비스 배포에 널리 쓰인다.
이 개념은 Hinton, Vinyals, Dean(2015)의 논문에서 체계화되었다. 분류 모델의 소프트맥스 출력은 정답 클래스 외의 클래스에도 작은 확률을 배분하는데, 예를 들어 트럭 이미지에 대해 승용차에는 비교적 높은 확률을, 사과에는 거의 0에 가까운 확률을 주는 식이다. 이 확률 분포에는 "어떤 클래스가 서로 닮았는가"라는 교사의 일반화 방식이 담겨 있으며, 이를 암흑 지식(Dark Knowledge)이라 부른다.
그러나 잘 학습된 교사의 정답 외 확률은 너무 작아 그대로는 신호가 약하므로, 로짓 $z_i$를 온도(Temperature) $T$로 나눈 $p_i = \frac{\exp(z_i / T)}{\sum_j \exp(z_j / T)}$를 사용해 분포를 부드럽게 만든 소프트 타깃(Soft Target)을 학생에게 제공한다. $T=1$이면 일반 소프트맥스이고 $T$가 커질수록 클래스 간 확률 차이가 완만해져 작은 확률에 담긴 정보가 드러난다.
학생의 손실 함수는 교사와 학생의 소프트 타깃 사이의 KL 발산(Kullback-Leibler Divergence)과 정답 레이블에 대한 교차 엔트로피를 가중 합한 $\mathcal{L} = \alpha \, T^2 \, \mathrm{KL}\!\left(p^{\text{teacher}}_T \,\|\, p^{\text{student}}_T\right) + (1 - \alpha) \, \mathrm{CE}\!\left(y, p^{\text{student}}_{1}\right)$ 형태가 일반적이다.
여기서 $T^2$은 온도를 높일수록 소프트 타깃 손실의 기울기 크기가 $1/T^2$로 줄어드는 것을 보정하는 항이며, 추론 시에는 학생도 $T=1$로 되돌려 사용한다. 소프트 타깃은 하드 레이블보다 샘플당 훨씬 많은 정보를 제공하고 기울기의 분산을 줄여, 적은 데이터로도 학생이 안정적으로 학습하는 정칙화(Regularization) 효과를 낸다.
교사로부터 무엇을 옮기느냐에 따라 증류는 다음과 같이 구분된다.
전달하는 지식의 유형
  • 응답 기반 증류(Response-based Distillation): 교사의 최종 출력층, 즉 로짓이나 소프트 타깃만을 모방하는 가장 단순한 방식으로, 교사와 학생의 내부 구조가 달라도 적용할 수 있다.
  • 특징 기반 증류(Feature-based Distillation): FitNets처럼 교사의 중간 층(Layer)이 만드는 특징 맵이나 은닉 표현을 학생이 따라 하게 하며, 차원이 다르면 선형 변환으로 맞춘 뒤 거리를 최소화한다. 출력만으로는 전달되지 않는 표현 수준의 지식을 옮기지만 층 대응 관계를 설계해야 한다.
  • 관계 기반 증류(Relation-based Distillation): 개별 샘플의 출력이 아니라 샘플 간 거리·각도나 층 사이의 상관 같은 관계 구조를 전달하며, 교사와 학생의 표현 공간 크기가 달라도 관계만 유지하면 되므로 유연하다.
교사와 학생이 학습되는 시점과 역할에 따라서도 방식이 나뉜다.
학습 방식에 따른 구분
  • 오프라인 증류(Offline Distillation): 먼저 교사를 완전히 학습해 고정한 뒤 학생을 학습하는 전통적 방식으로, 공개된 사전 학습 모델을 교사로 쓰기 쉽고 구현이 단순하다.
  • 온라인 증류(Online Distillation): 교사와 학생을 동시에 학습하며 서로의 출력을 참조하는 방식으로, Deep Mutual Learning처럼 여러 모델이 상호 교사가 되거나 대형 교사가 없는 상황에서 쓰인다.
  • 자기 증류(Self-Distillation): 같은 구조의 모델이 스스로 교사가 되는 방식으로, 깊은 층의 출력을 얕은 층이 모방하게 하거나, 학습이 끝난 모델을 교사로 삼아 같은 구조의 새 모델을 다시 학습시키는 Born-Again Networks처럼 이전 세대 모델의 소프트 타깃만으로 성능이 향상되기도 한다.
대규모 언어 모델(Large Language Models)의 등장으로 지식 증류는 트랜스포머(Transformer) 경량화의 핵심 수단이 되었다. Sanh 등(2019)의 DistilBERT는 BERT의 층 수를 절반으로 줄인 학생을 사전 학습 단계에서 증류하여, 마스크드 언어 모델 손실·교사 소프트 타깃에 대한 증류 손실·은닉 상태의 코사인 거리 손실을 함께 최적화한 결과 파라미터는 40% 줄이고 속도는 60% 높이면서 언어 이해 성능의 약 97%를 유지했다.
TinyBERT는 임베딩 출력, 각 층의 은닉 상태, 어텐션 메커니즘(Attention Mechanism)의 어텐션 행렬까지 층 단위로 대응시켜 증류하는 특징 기반 접근을 취하며, 범용 말뭉치에서 한 번, 과제별 데이터에서 다시 한 번 증류하는 2단계 학습으로 BERT보다 7.5배 작고 9.4배 빠른 모델을 얻었다. 이러한 압축 모델은 검색·분류·질의응답 서비스에서 지연 시간(Latency) 제약을 맞추는 데 널리 사용된다.
생성 모델에서는 토큰 단위 분포를 맞추는 것보다 교사가 생성한 문장 전체를 학생의 학습 데이터로 쓰는 시퀀스 수준 증류(Sequence-level Distillation)가 효과적이다. Kim과 Rush(2016)는 기계 번역에서 교사의 빔 서치 출력으로 학생을 학습시키면 토큰 단위 증류보다 성능이 좋고 학생이 단순한 탐욕 디코딩으로도 잘 동작함을 보였으며, 이 방식은 비자기회귀 번역 모델 학습의 표준 전처리가 되었다.
최근의 LLM 증류는 교사의 로짓에 접근할 수 없는 API 모델을 교사로 삼아, 교사가 생성한 지시-응답 쌍이나 단계별 추론 과정을 합성 데이터(Synthetic Data)로 수집해 작은 공개 모델을 미세 조정(Fine-tuning)하는 블랙박스 증류가 주류이며, 추론 과정까지 함께 증류하면 작은 모델의 추론 능력이 크게 향상된다. 다만 교사 모델의 이용 약관이 경쟁 모델 학습을 제한하는 경우가 있고, 교사의 편향과 오류가 학생에게 그대로 전이되며, 표면적 문체만 모방하고 지식은 따라오지 않는 현상도 보고되어 데이터 품질 검증이 중요하다.
지식 증류는 다른 모델 압축 기법과 목적은 같지만 접근이 다르며, 흔히 함께 사용된다.
모델 압축 기법 비교
  • 양자화(Quantization): 가중치와 활성값의 수치 정밀도를 32비트 부동소수점에서 8비트·4비트 정수 등으로 낮춰 메모리와 연산량을 줄이며, 구조는 그대로 두므로 적용이 간단하다.
  • 가지치기(Pruning): 기여도가 낮은 가중치나 뉴런·어텐션 헤드·층을 제거해 희소하거나 작은 모델을 만들며, 실제 속도 향상은 하드웨어의 희소 연산 지원에 좌우된다.
  • 지식 증류: 구조 자체를 더 작게 새로 설계하고 교사의 행동을 학습시키므로 자유도가 가장 크지만 별도의 학습 비용이 들며, 양자화·가지치기로 손실된 정확도를 증류로 회복하는 조합이 흔히 쓰인다.
실무적으로는 몇 가지 유의점이 있다. 교사와 학생의 용량 차이가 지나치게 크면 학생이 교사를 따라가지 못하는 용량 격차(Capacity Gap) 문제가 생기므로 중간 크기의 조교 모델을 거쳐 단계적으로 증류하기도 하며, 온도 $T$와 가중치 $\alpha$는 하이퍼파라미터(Hyperparameter)로서 검증 데이터로 조정해야 한다. 또한 학생의 성능 상한은 교사의 품질에 묶이므로 교사의 오류를 함께 배우는 위험을 염두에 두어야 한다.
추천 시스템(Recommender System)과 검색 랭킹에서는 증류가 정확도와 응답 속도의 절충을 푸는 표준 도구다. 질의와 문서를 함께 입력받는 크로스 인코더는 정확하지만 후보마다 연산해야 해 느리므로, 이를 교사로 삼아 질의와 문서를 따로 인코딩하는 이중 인코더 학생을 학습시키며, 교사가 매긴 점수 차이를 학생이 재현하도록 하는 MarginMSE 같은 손실이 밀집 검색 모델 학습에 널리 쓰인다.
추천에서도 Tang과 Wang(2018)의 랭킹 증류처럼 큰 모델이 산출한 상위 추천 목록을 작은 모델이 순위까지 따라 하게 하거나, 수백 개 특징을 쓰는 대형 클릭률 예측 모델의 소프트 타깃으로 온라인 서빙용 경량 모델을 학습해 수 밀리초 안에 수천 개 후보를 평가하는 방식이 쓰인다. 이처럼 지식 증류는 큰 모델의 성능과 작은 모델의 효율을 잇는 다리로서, 모델 경량화와 LLM 응용 전반에서 그 중요성이 계속 커지고 있다.

#관련 용어

손실 함수
교사 소프트 타깃에 대한 KL 발산과 정답 레이블에 대한 교차 엔트로피를 가중 합하여 학생 모델을 학습시키는 목적 함수
양자화
가중치와 활성값의 수치 정밀도를 낮춰 모델을 압축하는 기법으로, 증류와 함께 쓰이는 대표적 경량화 방법
미세 조정
사전 학습된 모델을 특정 과제 데이터로 추가 학습하는 과정으로, LLM 블랙박스 증류에서 학생을 학습시키는 수단
트랜스포머
DistilBERT·TinyBERT 등 증류 대상이 되는 대규모 언어 모델의 기반 구조
대규모 언어 모델(LLM)
합성 데이터·시퀀스 수준 증류로 작은 모델에 능력을 전이하는 교사 모델로 활용되는 거대 언어 모델
추천 시스템
정확한 대형 랭킹 모델을 교사로 삼아 서빙용 경량 모델을 증류하는 대표적 적용 영역

#직무 연관도

DA
Data Analyst
낮음
경량화된 모델의 정확도 손실과 비용 절감 효과를 비교하여 모델 교체의 비즈니스 영향을 평가할 수 있다
DS
Data Scientist
밀접
교사-학생 구조 설계, 증류 손실과 온도 설정, LLM 합성 데이터 증류 등 모델 경량화 연구와 실험의 핵심 기법
DE
Data Engineer
높음
지연 시간과 비용 제약을 만족하는 서빙 모델을 만들기 위해 증류·양자화·가지치기를 조합하고 배포 파이프라인에 적용하는 데 활용된다

#사용 사례

전자상거래인터넷 서비스금융통신자율주행의료
개요
지식 증류는 모바일·엣지 기기용 이미지 분류와 객체 탐지 모델 경량화, 검색·추천의 실시간 랭킹 모델, 콜센터·챗봇용 소형 언어 모델 구축, 자율주행 인지 모델의 차량 탑재, 금융·의료의 온프레미스 추론 비용 절감 등 대형 모델의 성능을 작은 모델로 옮겨야 하는 모든 상황에 활용된다.
사례
패션 전자상거래의 상품 검색에서 질의와 상품 설명을 함께 입력받는 크로스 인코더 교사 모델로 수만 개의 질의-상품 쌍에 점수를 매긴 뒤, 그 점수 차이를 재현하도록 이중 인코더 학생 모델을 증류하여 검색 품질을 거의 유지하면서 상품 임베딩을 미리 계산해 두는 실시간 벡터 검색으로 전환한다. 동일하게 대형 클릭률 예측 모델의 소프트 타깃으로 경량 모델을 학습해 추천 피드의 응답 시간을 단축한다.

#참고 자료

#추천 포스트

© 2024 diki All rights reserved.