지식 증류 기법
1. 개요
1. 개요
지식 증류는 딥러닝 모델의 지식을 더 작고 효율적인 모델로 전달하는 모델 압축 및 최적화 기법이다. 이 기법은 일반적으로 규모가 크고 복잡한 교사 모델의 성능을 유지하면서, 파라미터 수가 적고 계산 비용이 낮은 학생 모델을 훈련시키는 데 사용된다. 지식 증류의 핵심 아이디어는 모델의 최종 출력(예: 소프트맥스 확률)뿐만 아니라, 모델이 학습한 내부 표현이나 계층 간 관계와 같은 '부드러운 지식'을 전달하여 학생 모델의 일반화 능력을 향상시키는 것이다.
이 기법은 2015년 힌튼 등에 의해 체계적으로 소개되었으며[1], 이후 모델 배포, 앙상블 학습 단순화, 전이 학습 등 다양한 분야에서 활발히 연구되고 적용되었다. 초기 연구는 분류 작업에서 소프트 타겟을 사용한 응답 기반 증류에 집중했으나, 이후 연구는 중간층의 특징 맵이나 계층 간 관계를 전달하는 더 풍부한 지식 전달 방법으로 확장되었다.
지식 증류는 모바일 기기나 엣지 컴퓨팅 환경과 같이 제한된 컴퓨팅 자원에서도 고성능 인공지능 모델을 실행해야 하는 실용적인 요구에서 비롯되었다. 이를 통해 대규모 모델의 지식을 보다 가벼운 모델에 '증류'하여, 추론 속도와 메모리 효율성을 크게 높이면서도 원본 모델에 버금가는 정확도를 달성할 수 있다.
2. 지식 증류의 기본 개념
2. 지식 증류의 기본 개념
지식 증류는 일반적으로 규모가 크고 복잡한 교사 모델의 지식을, 보다 작고 효율적인 학생 모델로 전달하는 기계 학습 기법이다. 이 과정의 핵심 목표는 학생 모델이 교사 모델의 예측 성능에 근접하거나 때로는 이를 능가하는 수준을 달성하면서도, 추론 시 훨씬 적은 계산 자원과 메모리를 사용하도록 만드는 것이다. 이는 모델을 실제 장치에 배포하거나 실시간 응용 프로그램에 적용할 때 매우 중요한 요소가 된다.
지식 증류의 핵심 메커니즘은 소프트 타겟을 활용한 지식 전달에 있다. 일반적인 지도 학습에서는 모델이 '하드 타겟'인 원-핫 인코딩된 정답 레이블을 학습한다. 반면, 지식 증류에서는 교사 모델이 입력 데이터에 대해 생성한 예측 확률 분포, 즉 소프트 타겟을 학생 모델의 학습 목표로 삼는다. 예를 들어, 강아지와 고양이를 분류하는 문제에서 교사 모델이 '강아지일 확률 0.9, 고양이일 확률 0.1'이라는 세밀한 확신도를 출력한다면, 학생 모델은 단순히 '강아지'라는 정답보다는 이 확률 분포 자체를 배우려고 시도한다. 이 소프트 타겟에는 클래스 간의 유사성 관계와 같은 교사 모델이 학습한 '암묵적 지식'이 담겨 있어, 학생 모델이 더 일반화된 표현을 학습하는 데 도움을 준다.
학생 모델의 학습은 일반적으로 두 가지 손실의 조합을 통해 이루어진다. 첫 번째는 학생 모델의 예측과 교사 모델의 소프트 타겟 사이의 차이를 측정하는 증류 손실이다. 이는 쿨백-라이블러 발산 같은 척도로 계산된다. 두 번째는 학생 모델의 예측과 실제 정답 레이블(하드 타겟) 사이의 차이를 측정하는 학생 손실이다. 최종 손실 함수는 이 두 손실에 가중치를 부여하여 합친 형태로, 하이퍼파라미터인 온도 계수를 조정하여 소프트 타겟의 '부드러움' 정도를 조절할 수 있다[2].
2.1. 교사 모델과 학생 모델
2.1. 교사 모델과 학생 모델
교사 모델과 학생 모델은 지식 증류 과정의 핵심 구성 요소이다. 교사 모델은 일반적으로 더 크고 복잡하며, 높은 성능을 가진 사전 훈련된 모델이다. 이 모델은 학생 모델이 학습해야 할 '지식'의 원천 역할을 한다. 반면, 학생 모델은 더 작고 효율적인 구조를 가지는 모델로, 교사 모델의 지식을 전수받아 유사한 성능을 더 적은 계산 비용으로 달성하는 것이 목표이다.
두 모델 간의 관계는 전통적인 지습 개념과 유사하다. 교사 모델은 복잡한 데이터 패턴을 포착한 '숙련된 전문가'로 볼 수 있으며, 학생 모델은 이 전문가의 판단과 내부 표현을 배우는 '제자'에 해당한다. 학생 모델은 교사 모델의 출력(소프트 타겟)이나 중간층의 특징 맵, 혹은 데이터 샘플 간의 관계와 같은 다양한 형태의 지식을 학습 대상으로 삼는다.
교사 모델의 선택은 증류 성공에 중요한 요소이다. 교사 모델은 단일 대형 모델일 수도 있고, 여러 모델의 앙상블일 수도 있다. 학생 모델의 설계는 배포 환경의 제약(예: 메모리, 연산 속도)을 고려하여 결정된다. 최종 목표는 학생 모델이 교사 모델에 버금가는 정확도를 유지하면서, 추론 속도를 높이거나 모델 크기를 획기적으로 줄이는 것이다.
2.2. 소프트 타겟과 지식 전달
2.2. 소프트 타겟과 지식 전달
교사 모델의 출력은 일반적으로 소프트맥스 함수를 거쳐 각 클래스에 대한 확률 분포를 생성한다. 이 확률 분포를 소프트 타겟이라고 부른다. 소프트 타겟은 단순히 정답 클래스만 1로 표시하는 하드 타겟과 달리, 클래스 간의 상대적 유사성과 모델의 불확실성을 포함한 '부드러운' 정보를 담고 있다. 예를 들어, '고양이'와 '호랑이'를 구분하는 문제에서 교사 모델은 두 클래스에 모두 상대적으로 높은 확률을 부여할 수 있으며, 이는 두 클래스가 시각적으로 유사하다는 지식을 학생 모델에게 전달하는 역할을 한다.
지식 전달의 핵심 목표는 학생 모델이 교사 모델의 예측 분포를 모방하도록 하는 것이다. 이를 위해 주로 쿨백-라이블러 발산과 같은 손실 함수가 사용된다. 학생 모델의 손실은 기존의 교차 엔트로피 손실과 교사 모델의 소프트 타�트를 따르도록 하는 증류 손실의 조합으로 구성된다. 수식으로 표현하면 다음과 같다.
손실 구성 요소 | 설명 |
|---|---|
$L_{hard}$ | 학생 모델의 출력과 실제 정답 레이블(하드 타겟) 사이의 교차 엔트로피 손실 |
$L_{soft}$ | 학생 모델의 출력과 교사 모델의 출력(소프트 타겟) 사이의 쿨백-라이블러 발산 |
최종 손실 | $L = \alpha \cdot L_{soft} + (1 - \alpha) \cdot L_{hard}$ |
여기서 $\alpha$는 두 손실 간의 가중치를 조절하는 하이퍼파라미터이며, $T$(온도)라는 매개변수를 사용해 소프트맥스 출력의 '부드러움'을 조절한다. 온도 $T$가 높을수록 출력 분포는 더 평평해져 클래스 간의 관계 정보가 강조된다.
이 과정을 통해 학생 모델은 단순히 정답을 맞추는 것뿐만 아니라, 교사 모델이 데이터를 어떻게 이해하고 구분하는지에 대한 내재된 지식, 즉 '어둠의 지식'을 학습하게 된다. 결과적으로 학생 모델은 동일한 크기나 더 적은 파라미터로도 교사 모델에 근접하거나 때로는 뛰어넘는 일반화 성능을 달성할 수 있다.
3. 주요 지식 증류 기법
3. 주요 지식 증류 기법
지식 증류는 대규모의 복잡한 교사 모델로부터 소규모의 학생 모델로 지식을 전달하는 과정이다. 이 과정을 구현하는 핵심 방법론은 크게 응답 기반, 특징 기반, 관계 기반 증류로 분류된다. 각 기법은 지식을 추출하고 전달하는 방식에 차이가 있다.
응답 기반 증류는 가장 기본적인 형태로, 교사 모델의 최종 출력값(소프트 타겟)을 학생 모델이 학습하도록 한다. 교사 모델은 입력 데이터에 대해 각 클래스에 속할 확률을 출력하는데, 이 '소프트 레이블'은 원-핫 인코딩된 '하드 레이블'보다 더 풍부한 정보(예: 클래스 간 유사성)를 담고 있다. 학생 모델은 자신의 출력과 교사 모델의 소프트 레이블 간의 차이를 줄이는 방향으로 학습하여, 교사 모델의 판단 논리를 간접적으로 습득한다. 이 기법은 구현이 간단하고 계산 비용이 상대적으로 낮다는 장점이 있다.
특징 기반 증류는 모델의 중간층에서 추출된 특징맵을 활용한다. 학생 모델은 단순히 최종 출력뿐만 아니라, 교사 모델의 중간층에서 생성된 특징 표현도 모방하도록 학습한다. 이를 위해 학생 모델의 중간층 출력을 교사 모델의 해당 층 출력에 매핑하는 변환기를 추가하여 두 특징맵 간의 차이를 손실 함수로 계산한다[3]. 이 방법은 모델의 내부 표현을 전달함으로써, 특히 컴퓨터 비전 분야에서 학생 모델의 특징 추출 능력을 크게 향상시킬 수 있다.
관계 기반 증류는 데이터 샘플 간 또는 층 간의 관계에 주목한다. 개별 샘플의 출력이나 특징 자체가 아니라, 샘플들 사이의 상관관계나 거리, 혹은 모델 내 여러 층의 특징들 간의 관계와 같은 고차원적 정보를 전달 대상으로 삼는다. 예를 들어, 한 배치 내 샘플들의 출력 분포 간 KL 발산을 비교하거나, 특징맵들 간의 그래프 관계를 모방하도록 학습한다. 이 기법은 지식을 더 추상적인 수준에서 전달하여 학생 모델의 일반화 성능을 높이는 데 기여한다.
기법 | 전달 대상 | 주요 특징 |
|---|---|---|
응답 기반 | 모델의 최종 출력 (소프트 타겟) | 구현이 단순, 계산 효율적 |
특징 기반 | 중간층의 특징말 (Feature Maps) | 내부 표현 학습, 특징 추출 능력 향상에 효과적 |
관계 기반 | 샘플 간 또는 층 간의 관계 (Relations) | 고차원적 정보 전달, 일반화 성능 향상 목적 |
이 세 가지 기법은 상호 배타적이지 않으며, 실제 연구나 응용에서는 여러 기법을 결합한 혼합 방식을 사용하여 더 효과적인 지식 전달을 달성하기도 한다.
3.1. 응답 기반 증류
3.1. 응답 기반 증류
응답 기반 증류는 지식 증류에서 가장 기본적이고 널리 사용되는 접근법이다. 이 기법은 교사 모델의 최종 출력 계층에서 생성되는 '소프트 타겟'을 학생 모델이 학습하도록 하는 것을 핵심으로 한다. 교사 모델은 일반적으로 큰 용량과 복잡한 구조를 가지며, 입력 데이터에 대해 예측 클래스별 확률 분포를 출력한다. 이 확률 분포는 정답 레이블(하드 타겟)보다 풍부한 정보를 담고 있으며, 클래스 간 상대적 유사성과 같은 '암묵적 지식'을 포함한다[4]. 학생 모델은 자신의 출력이 이 소프트 타겟에 가까워지도록 학습한다.
학습 과정에서는 일반적으로 두 가지 손실 함수가 결합되어 사용된다. 첫 번째는 학생 모델의 출력과 교사 모델의 소프트 타겟 사이의 차이를 측정하는 쿨백-라이블러 발산 손실이다. 두 번째는 학생 모델의 출력과 실제 정답 레이블(하드 타겟) 사이의 차이를 측정하는 교차 엔트로피 손실이다. 최종 손실 함수는 이 두 손실의 가중 합으로 구성된다.
손실 구성 요소 | 설명 | 목적 |
|---|---|---|
Distillation Loss | 학생 출력과 교사 소프트 타겟 간 KLD | 교사 모델의 암묵적 지식을 전달 |
Student Loss | 학생 출력과 실제 하드 레이블 간 교차 엔트로피 | 작업의 기본 목표(정답 분류) 유지 |
이 기법의 주요 장점은 구현이 간단하고 계산 비용이 상대적으로 낮다는 점이다. 모델의 최종 출력만을 활용하므로 중간층의 특징 맵을 저장하거나 처리할 필요가 없다. 그러나 교사 모델이 학습 데이터에 과적합되었거나, 출력 확률 분포가 매우 날카로운(즉, 하나의 클래스에만 높은 확률을 부여하는) 경우, 전달할 수 있는 암묵적 지식의 양이 제한될 수 있다는 단점도 있다.
3.2. 특징 기반 증류
3.2. 특징 기반 증류
특징 기반 증류는 교사 모델의 중간층 출력, 즉 은닉층의 활성화 값이나 변환된 특징을 학생 모델이 학습하도록 하는 방법이다. 이는 최종 출력(소프트 타겟)만을 학습 대상으로 하는 응답 기반 증류보다 더 풍부하고 구조화된 지식을 전달할 수 있다는 장점을 가진다. 교사 모델이 데이터를 처리하는 과정에서 형성하는 중간 표현은 입력 데이터의 추상적이고 의미 있는 특징을 담고 있으며, 학생 모델은 이러한 표현을 모방함으로써 더 효율적인 특징 추출 방식을 습득하게 된다.
주요 접근법으로는 교사 모델과 학생 모델의 특정 층에서 추출된 특징 맵을 정렬하는 것이 있다. 두 모델의 구조나 크기가 다를 경우, 특징 맵의 차원을 맞추기 위해 추가적인 변환기(예: 1x1 합성곱 층 또는 선형 투영층)가 사용된다. 그 후, 두 특징 맵 간의 차이를 계산하는 손실 함수(예: 평균 제곱 오차 또는 코사인 유사도 기반 손실)를 최소화하도록 학생 모델을 훈련시킨다. 이 과정에서 학생 모델은 교사 모델이 데이터의 어떤 특징에 주목하는지를 간접적으로 학습하게 된다.
이 기법의 효과는 사용되는 특징의 위치와 형태에 크게 의존한다. 일반적으로 네트워크의 후반부에 위치한 고수준 특징은 의미론적 정보를 잘 포착하여 전달하는 데 유리한 반면, 전반부의 저수준 특징은 형태나 질감과 같은 세부 정보를 전달하는 데 도움을 줄 수 있다. 일부 연구에서는 여러 층에서 추출된 특징을 동시에 활용하는 다중 계층 특징 증류를 제안하여 더 포괄적인 지식 전달을 시도하기도 한다.
비교 요소 | 응답 기반 증류 | 특징 기반 증류 |
|---|---|---|
전달 지식 | 최종 출력 분포(소프트 라벨) | 중간층의 특징 표현 |
학습 대상 | '무엇'에 대한 지식 | '어떻게'에 대한 지식(표현 방식) |
주요 손실 함수 | 평균 제곱 오차, L1 거리, 각도 손실 등 | |
장점 | 구현이 간단함 | 더 풍부하고 구조적인 지식 전달 가능 |
단점 | 전달 정보가 제한적임 | 층 매칭 및 차원 변환 설계가 필요함 |
특징 기반 증류는 특히 컴퓨터 비전과 자연어 처리 분야에서 널리 적용된다. 시각적 특징을 전달하는 지식 증류는 학생 모델의 표현력을 크게 향상시키며, 자연어 처리에서는 어텐션 맵이나 은닉 상태를 전달함으로써 언어 이해 능력을 개선하는 데 효과적이다.
3.3. 관계 기반 증류
3.3. 관계 기반 증류
관계 기반 증류는 교사 모델과 학생 모델의 내부 표현들 사이의 상호 관계나 구조를 전달하는 데 초점을 맞춘다. 이 기법은 단일 데이터 샘플에 대한 출력(응답)이나 중간층의 특징값 자체를 복사하는 것을 넘어, 여러 데이터 샘플 간의 관계나 모델 내 여러 층 간의 상관관계와 같은 고차원적인 지식을 전달한다. 핵심 아이디어는 교사 모델이 포착한 데이터 포인트들 사이의 구조적 유사성이나 내부 표현들의 상호 의존성을 학생 모델이 학습하도록 유도하는 것이다.
주요 방법론으로는 샘플 간 관계를 전달하는 방법과 층 간 관계를 전달하는 방법이 있다. 샘플 간 관계 증류는 미니배치 내 여러 입력 데이터에 대한 교사 모델의 출력 분포나 중간 특징 표현들 사이의 유사도 행렬(예: Gram 행렬, 상관관계 행렬)을 계산하여, 학생 모델이 동일한 입력에 대해 비슷한 관계 패턴을 생성하도록 손실 함수를 설계한다. 예를 들어, 교사 모델의 특정 층에서 두 이미지의 특징 맵 간 코사인 유사도가 높다면, 학생 모델의 해당 층에서도 두 이미지의 특징 맵이 비슷한 유사도를 갖도록 학습한다.
관계 유형 | 설명 | 전달 대상 예시 |
|---|---|---|
샘플 간 관계 | 동일한 층에서 서로 다른 입력 데이터의 표현 간 관계 | 유사도 행렬, 거리 행렬, 각도 분포 |
층 간 관계 | 동일한 입력에 대해 서로 다른 층의 표현 간 관계 | 층 간 특징 맵의 상관관계, Attention 가중치의 흐름 |
특징 채널 간 관계 | 단일 층 내부의 서로 다른 특징 채널 간 상호작용 | Gram 행렬, 채널 간 공분산 행렬 |
이 접근법의 장점은 교사 모델이 학습한 데이터의 풍부한 구조적 지식과 추상적 패턴을 전달할 수 있어, 학생 모델의 일반화 성능을 향상시키는 데 효과적이다. 특히, 이미지 분류나 객체 검출 작업에서 클래스 내 변동성을 이해하거나, 자연어 처리에서 단어나 문장 간 의미적 관계를 포착하는 데 유용하다. 그러나 관계 행렬을 계산하고 비교하는 과정은 계산 비용이 추가될 수 있으며, 어떤 관계를 전달할지 선택하는 설계의 복잡성이 존재한다.
4. 지식 증류의 응용 분야
4. 지식 증류의 응용 분야
지식 증류는 모델 압축 및 효율적인 배포를 위한 핵심 기술로 자리 잡았다. 대규모의 복잡한 교사 모델의 지식을 소규모의 학생 모델로 전이함으로써, 제한된 계산 자원이나 메모리 환경(예: 모바일 기기, 임베디드 시스템)에서도 고성능 모델을 실행할 수 있게 한다. 이는 추론 속도 향상과 에너지 소비 감소를 동시에 달성하는 실용적인 솔루션을 제공한다.
앙상블 지식 전달은 지식 증류의 또 다른 주요 응용 분야이다. 여러 개의 대규모 모델(앙상블)이 생성한 지식을 하나의 단일 소형 모델로 응축한다. 앙상블 모델은 일반적으로 높은 정확도를 보이지만, 추론 시 많은 계산 비용이 든다. 증류 과정을 통해 학생 모델은 앙상블의 집단적 지식과 일반화 능력을 학습하여, 단일 모델로는 달성하기 어려운 강건한 성능을 유지하면서도 효율성을 크게 높일 수 있다.
응용 분야 | 주요 목적 | 일반적인 사용 사례 |
|---|---|---|
모델 압축 및 배포 | 모델 크기 감소, 추론 속도 향상 | 모바일 애플리케이션, IoT 기기, 엣지 컴퓨팅 |
앙상블 지식 전달 | 다수 모델의 지식을 단일 모델로 통합 | 대규모 앙상블 모델의 효율적 배포 |
증류를 통한 증강 학습 | 보조 신호로써 지식 활용 | 데이터 증강, 준지도 학습, 자기 학습 |
또한, 지식 증류는 데이터 증강이나 준지도 학습과 결합되어 모델 성능을 증강하는 도구로도 활용된다. 레이블이 부족한 데이터셋에서, 대규모 사전 학습 모델(교사)이 생성한 소프트 타겟은 데이터에 내재된 추가적인 신호와 클래스 간 관계 정보를 제공한다. 학생 모델은 이러한 부드러운 지도 신호를 통해 일반화 성능을 향상시키고, 과적합을 완화하는 효과를 얻을 수 있다. 이는 자기 학습 패러다임과도 깊은 연관이 있다.
4.1. 모델 압축 및 배포
4.1. 모델 압축 및 배포
지식 증류는 대규모 교사 모델의 지식을 소규모 학생 모델로 전달하여, 모델의 크기를 줄이면서도 성능을 유지하는 모델 압축의 핵심 기법으로 활용된다. 이는 제한된 컴퓨팅 자원(예: 모바일 장치, 임베디드 시스템)에서도 고성능 딥러닝 모델을 배포하는 데 필수적이다. 모델 압축은 단순한 파라미터 가지치기나 양자화와 달리, 교사 모델이 학습한 데이터의 분포와 추론 패턴을 학생 모델이 학습하도록 유도하여, 작은 모델이 단독으로 학습했을 때보다 우수한 일반화 성능을 달성할 수 있게 한다.
지식 증류를 통한 모델 배포의 일반적인 워크플로우는 다음과 같은 단계로 구성된다.
1. 대규모 데이터셋으로 고성능의 복잡한 교사 모델을 학습시킨다.
2. 학습된 교사 모델을 사용하여 동일한 또는 추가적인 데이터에 대한 '소프트 타겟'(교사 모델의 출력 로짓 또는 확률 분포)을 생성한다.
3. 소규모 학생 모델을 기존의 정답 레이블('하드 타겟')과 교사 모델이 생성한 소프트 타겟을 함께 사용하여 학습시킨다. 이때 두 타겟 간의 차이를 줄이는 지식 증류 손실 함수가 사용된다.
4. 최종적으로 압축된 학생 모델을 목표 플랫폼에 배포한다.
압축 기법 | 설명 | 지식 증류와의 관계 |
|---|---|---|
모델에서 중요도가 낮은 연결(가중치)을 제거한다. | 증류 후 가지치기를 적용하거나, 증류 과정에서 희소성을 유도하는 방식으로 결합된다. | |
모델의 가중치와 활성화 값을 낮은 비트 정밀도(예: 32비트 → 8비트)로 변환한다. | 양자화로 인한 성능 저하를 보상하기 위해 증류가 미세 조정 단계에서 사용된다. | |
자동으로 효율적인 소형 모델 구조를 탐색한다. | 탐색 과정에서 교사 모델의 지식을 손실 함수로 활용하여 학생 모델(후보 구조)의 학습을 가속화한다. |
이 접근법의 성공은 학생 모델이 단순히 정답 레이블만 맞추는 것이 아니라, 교사 모델이 데이터 간에 부여한 세밀한 유사성 관계(예: '고양이'와 '호랑이'가 '트럭'보다 서로 더 비슷하다는 정보)를 학습하기 때문이다[5]. 결과적으로, 증류를 통해 압축된 모델은 원본 대형 모델에 비해 추론 속도가 크게 향상되고 메모리 사용량이 줄어들며, 배터리 소모도 감소하여 실시간 애플리케이션에 적합해진다.
4.2. 앙상블 지식 전달
4.2. 앙상블 지식 전달
앙상블 지식 전달은 여러 개의 교사 모델이 생성한 지식을 하나의 학생 모델로 통합하여 전달하는 지식 증류의 응용 방식이다. 단일 대형 모델 대신, 서로 다른 구조를 가졌거나 다른 데이터 하위 집합으로 학습된 여러 모델의 집합적 지식을 활용한다. 이 접근법은 앙상블 학습의 장점인 강건성과 일반화 성능을 모델 압축의 효율성과 결합한다.
앙상블 지식 전달의 일반적인 절차는 다음과 같다. 먼저, 여러 개의 교사 모델을 구성한다. 이들은 다양성을 확보하기 위해 서로 다른 초매개변수 설정, 네트워크 구조, 또는 학습 데이터 샘플을 사용하여 학습될 수 있다. 이후, 이 앙상블 교사 모델들의 출력(예: 소프트 타�트의 평균 또는 가중 합)을 하나의 통합된 "지식"으로 생성한다. 최종적으로, 단일 학생 모델은 이 통합된 지식과 실제 정답 레이블을 함께 사용하여 학습된다. 학생 모델은 앙상블의 집단 지식을 모방하면서도 추론 시에는 단일 모델의 효율성을 유지한다.
이 기법의 주요 이점은 학생 모델이 단일 거대 교사 모델보다 더 풍부하고 일반화된 지식을 흡수할 수 있다는 점이다. 앙상블의 다양한 모델들은 서로 상호보완적인 정보를 가지고 있어, 학생 모델이 데이터의 다양한 측면과 패턴을 학습하도록 돕는다. 결과적으로, 학생 모델은 종종 앙상블 전체의 성능에 근접하거나, 경우에 따라 단일 최고의 교사 모델을 능가하는 성능을 보이기도 한다[6]. 구현 방식에 따라 다음 표와 같이 분류할 수 있다.
전달 방식 | 설명 | 주요 특징 |
|---|---|---|
출력 평균화 | 여러 교사 모델의 소프트맥스 출력 로짓을 평균하여 통합 지식 생성 | 구현이 간단하며 계산 효율적 |
가중 평균화 | 교사 모델의 성능이나 신뢰도에 따라 가중치를 부여하여 지식 통합 | 성능이 우수한 모델의 영향력을 높일 수 있음 |
다중 교사 손실 | 각 교사 모델과의 개별 손실 함수를 계산 후 합산 또는 평균 | 각 교사 모델의 독특한 지식을 세밀하게 반영 가능 |
앙상블 지식 전달은 특히 의사 결정 트리 앙상블 모델인 랜덤 포레스트나 그래디언트 부스팅 머신 같은 모델의 지식을 작은 신경망으로 전달하는 데 효과적으로 적용된다. 또한, 다중 태스크 학습 환경에서 서로 다른 작업을 전문으로 하는 여러 교사 모델의 지식을 하나의 다목적 학생 모델로 압축하는 데에도 유용하다.
4.3. 증류를 통한 증강 학습
4.3. 증류를 통한 증강 학습
증류를 통한 증강 학습은 지식 증류의 원리를 활용하여 강화 학습 에이전트의 학습 효율을 높이거나, 학습된 정책의 성능을 개선하는 접근법이다. 기존의 강화 학습은 환경과의 상호작용을 통한 시행착오 학습에 크게 의존하기 때문에 샘플 효율성이 낮고 학습이 불안정할 수 있다. 지식 증류는 이러한 문제를 완화하기 위해, 이미 훈련된 고성능의 '교사' 에이전트로부터 '학생' 에이전트로 지식을 전달하는 방식을 사용한다.
교사 에이전트는 일반적으로 더 큰 네트워크를 가지고 오랜 시간 학습된 모델이거나, 여러 에이전트의 앙상블일 수 있다. 학생 에이전트는 교사 에이전트가 특정 상태에서 선택한 행동의 확률 분포(정책)나, 상태-행동 가치 함수(Q-러닝)의 출력값을 학습 대상으로 삼는다. 이를 통해 학생 에이전트는 교사의 경험을 간접적으로 흡수하여, 처음부터 환경을 탐색하는 데 드는 비용을 크게 줄일 수 있다. 이 과정은 모방 학습과 유사하지만, 단순한 행동 복제를 넘어 교사의 내부 표현이나 의사결정 논리를 전달하는 데 중점을 둔다.
주요 적용 방식은 다음과 같다.
적용 방식 | 설명 |
|---|---|
정책 증류 | 교사 정책의 출력 분포를 소프트 타겟으로 사용하여 학생 정책을 훈련한다. |
가치 함수 증류 | 교사 모델이 예측한 Q-값이나 상태 가치를 학생 모델이 회귀하도록 학습한다. |
경험 재생 버퍼 공유 | 교사 에이전트가 수집한 고품질의 경험 데이터(상태, 행동, 보상 등)를 학생의 재현 버퍼에 저장하여 활용한다. |
이 기법은 복잡하고 계산 비용이 높은 환경, 예를 들어 실시간 전략 게임이나 로봇 제어에서 특히 유용하다. 학생 에이전트는 교사의 지식을 바탕으로 더 빠르게 수렴하거나, 최종적으로 교사와 유사하거나 더 나은 성능을 달성할 수 있다. 또한, 여러 전문가 에이전트의 지식을 하나의 경량화된 에이전트로 통합하여 배포하는 데에도 활용된다.
5. 지식 증류의 장단점
5. 지식 증류의 장단점
지식 증류는 교사 모델의 지식을 학생 모델로 전달하는 과정에서 발생하는 고유한 장점과 한계를 가진다. 주요 장점은 효율성 향상이다. 대규모의 복잡한 교사 모델이 보유한 고성능을, 매개변수가 훨씬 적고 구조가 단순한 학생 모델이 유사한 수준으로 달성할 수 있게 한다. 이는 모델 배포 시 계산 자원과 메모리 사용량, 추론 속도를 크게 개선하여 모바일 장치나 엣지 컴퓨팅 환경에서의 실용성을 높인다. 또한, 교사 모델의 일반화 능력과 앙상블 학습 효과를 학생 모델에게 전이시켜, 학생 모델이 단독으로 학습했을 때보다 우수한 성능을 보이는 경우가 많다.
반면, 지식 증류의 가장 큰 단점은 정보 손실 가능성이다. 교사 모델이 내재적으로 학습한 풍부한 지식 중 일부는 더 작은 용량의 학생 모델로 완전히 전달되지 못할 수 있다. 이는 특히 모델 크기나 표현력 차이가 극단적일 때 성능 저하로 이어질 수 있다. 또한, 증류 과정 자체가 추가적인 계산 비용과 설계 복잡성을 유발한다. 교사 모델을 미리 학습시켜야 하며, 적절한 손실 함수를 설계하고 소프트 타겟의 온도 하이퍼파라미터 등을 튜닝해야 한다. 이는 단순한 지도 학습보다 더 많은 실험과 전문 지식을 요구한다.
다음 표는 지식 증류의 주요 장단점을 요약하여 보여준다.
구분 | 내용 |
|---|---|
장점 | - 효율적인 모델 배포: 작은 모델 크기로 높은 성능 달성[7]. - 향상된 일반화 성능: 교사 모델의 정규화 효과 전이. - 레이블 없는 데이터 활용 가능: 소프트 타겟을 통해 추가 데이터 학습에 활용. |
단점 | - 불완전한 지식 전달: 학생 모델의 용량 한계로 인한 정보 손실. - 증류 오버헤드: 교사 모델 학습 및 증류 과정에 필요한 추가 자원. - 설계 복잡성: 손실 함수 결합 가중치, 온도 파라미터 등 튜닝 필요. |
결론적으로, 지식 증류는 제한된 자원 환경에서 딥러닝 모델의 실용성을 극대화하는 강력한 패러다임이지만, 그 효과는 문제의 복잡도, 모델 쌍의 적합성, 그리고 증류 파이프라인을 세심하게 설계하는 데 달려 있다.
5.1. 장점: 효율성과 성능
5.1. 장점: 효율성과 성능
지식 증류의 가장 큰 장점은 효율적인 모델 배포를 가능하게 하면서도 성능을 유지하거나 향상시킬 수 있다는 점이다. 이 기법은 대규모의 복잡한 교사 모델이 보유한 지식을 더 작고 빠른 학생 모델로 전달하여, 제한된 컴퓨팅 자원 환경에서도 고성능 추론을 실행할 수 있게 한다. 결과적으로 모바일 기기나 엣지 컴퓨팅 장치와 같이 메모리와 처리 능력이 부족한 플랫폼에 고급 인공지능 모델을 배포하는 핵심 기술로 자리 잡았다.
성능 측면에서, 학생 모델은 종종 동일한 크기의 모델을 처음부터 훈련시키는 것보다 우수한 성능을 보인다. 교사 모델의 소프트 타겟은 단순한 정답 레이블보다 더 풍부한 정보(예: 클래스 간 유사성)를 제공하여, 학생 모델이 일반화 능력을 더 잘 학습하도록 돕는다. 또한, 앙상블된 여러 교사 모델의 지식을 하나의 학생 모델로 응축하면, 단일 대형 모델보다 뛰어난 성능과 강건성을 확보할 수 있다.
효율성은 모델의 크기와 속도 측면에서 두드러진다. 지식 증류를 통해 파라미터 수와 연산량이 크게 줄어든 학생 모델은 더 빠른 추론 속도와 적은 메모리 사용량을 보인다. 이는 실시간 응용 프로그램의 지연 시간을 줄이고, 배터리 수명이 중요한 장치에서 에너지 소비를 절감하는 효과로 이어진다. 아래 표는 지식 증류의 주요 장점을 요약하여 보여준다.
장점 범주 | 구체적 효과 | 결과 |
|---|---|---|
성능 | 일반화 능력 향상 | 과적합 감소, 테스트 정확도 상승 |
성능 | 앙상블 지식 전달 | 단일 모델 대비 강건성 및 정확도 향상 |
효율성 | 모델 경량화 | 추론 속도 향상, 메모리 사용량 감소 |
효율성 | 배포 용이성 | 엣지 디바이스 및 모바일 배포 가능 |
효율성 | 에너지 효율 | 연산량 감소로 인한 전력 소비 절감 |
이러한 장점들 덕분에 지식 증류는 모델 압축과 효율적인 머신러닝 시스템 구축을 위한 표준 기법 중 하나로 널리 채택되고 있다.
5.2. 단점: 정보 손실과 복잡성
5.2. 단점: 정보 손실과 복잡성
지식 증류 과정에서, 대규모 교사 모델의 지식을 소규모 학생 모델로 전이할 때 필연적으로 일부 정보가 손실된다. 이는 모델의 용량 차이에서 비롯되는 근본적인 한계이다. 복잡한 결정 경계나 세밀한 특징 표현과 같은 교사 모델의 정교한 지식 일부는 학생 모델의 제한된 파라미터 공간에 완벽하게 담아내기 어렵다. 결과적으로, 학생 모델은 교사 모델의 성능에 완전히 도달하지 못하거나, 특정 서브태스크에서 성능 저하를 보일 수 있다.
또한, 지식 증류의 구현과 최적화는 단순한 모델 훈련보다 복잡한 과정을 수반한다. 효과적인 증류를 위해서는 적절한 손실 함수를 설계하고, 교사 모델의 출력(소프트 타겟)과 학생 모델의 출력 간의 균형을 조절하는 온도 파라미터를 튜닝해야 한다. 특징 기반이나 관계 기반 증류의 경우, 어떤 중간층의 출력을 사용할지, 혹은 어떤 관계를 전달할지에 대한 추가적인 설계 선택이 필요하여 실험과 검증 부담이 증가한다.
다음 표는 주요 단점들을 요약한다.
단점 유형 | 설명 | 영향 |
|---|---|---|
정보 손실 | 학생 모델의 용량 한계로 인해 교사 모델의 모든 지식을 전달할 수 없음 | 최대 성능에 한계가 있거나, 특정 데이터에서 일반화 성능 저하 |
구현 복잡성 | 손실 함수 설계, 하이퍼파라미터(온도, 가중치) 튜닝, 전달할 지식 선택 필요 | 개발 시간 증가, 재현 난이도 상승 |
계산 비용 | 대규모 교사 모델의 정방향 계산(forward pass)이 증류 과정에 포함되어 추가 리소스 소모 | 훈련 시간과 에너지 소비 증가[8] |
성능 불확실성 | 증류 성공이 하이퍼파라미터와 모델 구조에 크게 의존함 | 동일한 설정이 다른 태스크나 데이터셋에서 동일한 효과를 보장하지 않음 |
마지막으로, 증류 과정 자체에 추가적인 계산 비용이 든다. 학생 모델을 훈련시키는 동안, 각 배치마다 교사 모델의 예측을 생성하거나 중간 특징을 추출해야 하므로, 단독으로 학생 모델을 훈련하는 것보다 더 많은 계산 자원이 소모된다. 이러한 복잡성과 비용은 지식 증류 기법을 실제 시스템에 적용할 때 중요한 고려 사항이 된다.
6. 최신 연구 동향
6. 최신 연구 동향
지식 증류 분야는 빠르게 발전하며, 기존의 교사-학생 모델 간 지식 전달 패러다임을 넘어 다양한 새로운 접근법이 등장하고 있다. 최근 연구 동향은 더 효율적이고 유연하며, 특수한 환경에 적합한 증류 방법을 개발하는 데 집중하고 있다. 특히 자기 증류, 온라인 증류, 교차 모달리티 증류 등이 주목받는 주요 흐름이다.
자기 증류는 별도의 대규모 교사 모델 없이, 단일 모델이 스스로 교사와 학생 역할을 모두 수행하는 기법이다. 동일한 모델의 서로 다른 부분(예: 깊은 레이어와 얕은 레이어)을 활용하거나, 동일한 입력에 대한 서로 다른 증강 데이터를 통해 생성된 출력을 지식으로 사용한다[9]. 이는 추가적인 라벨이나 복잡한 모델 설계 없이 모델의 일반화 성능을 향상시키는 데 유용하다.
온라인 증류는 교사 모델과 학생 모델을 동시에 학습시키는 방식을 말한다. 기존의 오프라인 증류가 고정된 사전 학습된 교사 모델을 사용하는 것과 달리, 두 모델이 협력하며 실시간으로 진화한다. 이 방식은 더 유연한 지식 공유가 가능하며, 특히 모델이 서로 다른 아키텍처를 가질 때 효과적이다. 반면, 학습 과정이 불안정해질 수 있어 안정적인 학습을 위한 손실 함수 설계가 중요한 과제로 남아있다.
교차 모달리티 증류는 서로 다른 형태의 데이터(모달리티) 간에 지식을 전달하는 기법이다. 예를 들어, 대규모 이미지-텍스트 쌍 데이터로 학습된 멀티모달 모델의 지식을 순수 이미지 분류 모델이나 순수 언어 모델에 전달하는 방식이 연구된다. 이는 한 모달리티에서 풍부하게 학습된 표현을 다른 모달리티의 모델 성능 향상에 활용할 수 있게 한다. 다음 표는 주요 최신 연구 동향을 비교하여 보여준다.
기법 | 핵심 아이디어 | 주요 장점 | 주요 응용 분야 |
|---|---|---|---|
자기 증류 | 단일 모델 내에서 자가 지식 생성 | 별도 교사 모델 불필요, 효율적 | 모델 일반화 성능 향상 |
온라인 증류 | 교사-학델 동시 협력 학습 | 유연한 지식 공유, 실시간 적응 | 이기종 모델 간 증류 |
교차 모달리티 증류 | 다른 데이터 형태 간 지식 전달 | 지식의 모달리티 확장 | 멀티모달 → 유니모달 전환 |
6.1. 자기 증류
6.1. 자기 증류
자기 증류는 별도의 대규모 교사 모델 없이, 동일한 모델이 스스로의 지식을 증류하는 기법이다. 전통적인 지식 증류가 크고 복잡한 교사 모델에서 작고 효율적인 학생 모델로 지식을 전달하는 과정이라면, 자기 증류는 단일 모델 내에서 또는 동일한 구조의 모델들 사이에서 지식 전달이 이루어진다. 이 접근법은 별도의 사전 학습된 강력한 모델에 대한 의존성을 줄여준다.
주요 방법으로는 동일한 모델의 깊은 레이어 출력을 얕은 레이어의 학습 목표로 사용하는 방식이 있다. 예를 들어, 신경망의 상위 계층에서 추출된 소프트 타겟이나 중간 특징 맵을 하위 계층의 학습을 가이드하는 데 활용한다. 이를 통해 모델이 자신의 '풍부한' 표현을 '단순한' 표현에 전달하도록 유도하여, 단일 모델 구조 내에서 일반화 성능을 향상시킨다. 또 다른 방법은 동일한 구조를 가진 두 모델을 동시에 학습시키면서, 한 모델의 출력을 다른 모델의 정규화 신호로 사용하는 것이다.
자기 증류의 장점은 리소스 효율성에 있다. 대형 교사 모델을 학습하거나 유지할 필요가 없어 계산 비용과 저장 공간이 절감된다. 또한, 과적합을 완화하고 모델의 표현력을 향상시키는 효과적인 정규화 기법으로 작용한다는 연구 결과도 있다. 이 기법은 특히 라벨이 부족한 준지도 학습 환경이나, 매우 큰 모델을 구축하기 어려운 제한된 환경에서 유용하게 적용된다.
구분 | 전통적 지식 증류 | 자기 증류 |
|---|---|---|
지식 출처 | 별도의 대형 교사 모델 | 동일 모델 또는 동일 구조 모델 |
주요 목적 | 모델 압축, 배포 | 모델 정규화, 표현력 향상 |
리소스 요구 | 교사 모델 학습/저장 비용 필요 | 상대적으로 낮음 |
적용 시나리오 | 명확한 교사-학생 구조 | 준지도 학습, 리소스 제한 환경 |
최근 연구에서는 트랜스포머 기반 모델이나 컨볼루션 신경망에서 자기 증류를 적용하여 Baseline 성능을 능가하는 결과를 보여주고 있다. 이는 모델이 외부 지식 없이도 내재된 지식을 재구성하고 강화할 수 있음을 시사한다.
6.2. 온라인 증류
6.2. 온라인 증류
온라인 증류는 기존의 오프라인 증류 방식과 달리, 사전에 훈련된 고정된 교사 모델을 사용하는 대신, 교사 모델과 학생 모델이 동시에 훈련되며 서로의 지식을 주고받는 방식을 말한다. 이는 두 모델이 공동으로 학습하는 협력적 학습 프레임워크로 볼 수 있다. 오프라인 증류이 일반적으로 두 단계(교사 모델 훈련 → 학생 모델 증류)로 진행되는 반면, 온라인 증류는 단일 단계에서 동시 최적화를 수행한다.
이 방식의 핵심 메커니즘은 교사와 학생 모델이 각자의 예측(소프트 타겟)을 생성하고, 이를 서로에게 지식으로 제공하는 데 있다. 일반적으로 두 모델의 예측 분포 간 KL 발산을 손실 함수에 포함하여 서로를 가르치도록 유도한다. 이 과정에서 모델은 자신의 데이터에 대한 예측뿐만 아니라, 상대 모델의 "관점"도 학습하게 되어 더 일반화된 표현을 획득할 수 있다.
온라인 증류의 주요 장점은 별도의 대규모 교사 모델 훈련 단계가 필요 없다는 점이다. 이는 전체 학습 파이프라인을 단순화하고 계산 비용을 절감한다. 또한, 교사 모델이 고정되지 않고 계속 진화하기 때문에, 학생 모델이 더 풍부하고 다양한 지식을 흡수할 수 있는 잠재력이 있다. 그러나 두 모델을 동시에 최적화해야 하므로 학습 과정이 불안정해질 수 있으며, 하이퍼파라미터 설정이 더 민감할 수 있다는 단점도 존재한다.
이 기법은 특히 모델이 서로 다른 네트워크 구조를 가진 경우나, 증강 학습에서 여러 에이전트가 경험을 공유하는 상황에 효과적으로 적용된다. 온라인 증류의 변형으로는 여러 학생 모델이 함께 학습하는 상호 학습이나, 하나의 모델 안에서 여러 서브네트워크가 서로를 가르치는 방식 등이 연구되고 있다.
6.3. 교차 모달리티 증류
6.3. 교차 모달리티 증류
교차 모달리티 증류는 서로 다른 형태의 데이터(예: 이미지와 텍스트, 음성과 텍스트)를 처리하는 모델 간에 지식을 전달하는 지식 증류의 한 분야이다. 이 기법은 한 모달리티(양식)에서 학습한 풍부한 표현이나 지식을 다른 모달리티의 모델 학습에 활용하여, 데이터가 부족하거나 학습이 어려운 모달리티의 성능을 향상시키는 것을 목표로 한다. 예를 들어, 대량의 텍스트-이미지 쌍 데이터로 사전 학습된 거대 멀티모달 모델의 지식을 단일 모달리티 모델(예: 이미지 분류 모델)에 전달하는 데 적용된다.
주요 접근 방식은 모달리티 간 공통된 표현 공간을 학습하거나, 한 모달리티의 모델(교사 모델)의 출력을 다른 모달리티의 모델(학생 모델)이 모방하도록 유도하는 것이다. 구체적으로, 비전-언어 모델을 교사로 사용할 때는 이미지에 대한 텍스트 설명(레이블)이나 이미지-텍스트 쌍의 내재적 관계에 대한 지식을 증류하여, 레이블이 없는 이미지 데이터만으로 학습하는 학생 이미지 모델의 성능을 높일 수 있다[10]. 이 과정에서는 대조 학습 손실이나 특징 정규화 손실이 자주 사용된다.
교차 모달리티 증류의 응용 분야와 이점은 다음과 같이 정리할 수 있다.
응용 분야 | 설명 | 주요 이점 |
|---|---|---|
시각 질의응답 | 텍스트 기반 지식 모델의 추론 능력을 비전 모델에 전달 | 텍스트 설명 없이도 이미지 내용 이해 능력 향상 |
음성 인식 | 텍스트 언어 모델의 언어적 지식을 음성 모델에 전달 | 제한된 음성 데이터로도 향상된 언어 모델링 가능 |
의료 이미징 | 방대한 텍스트 보고서와 결합된 의료 이미지의 지식 전달 | 전문가 주석(어노테이션) 부족 문제 완화 |
이 기법의 주요 과제는 모달리티 간의 의미적 격차를 효과적으로 줄이는 것이다. 이미지의 픽셀 정보와 텍스트의 단어 임베딩은 근본적으로 다른 특성을 가지므로, 지식을 전달할 수 있는 공통의 표현이나 적절한 손실 함수를 설계하는 것이 핵심이다. 또한, 계산 비용이 큰 멀티모달 교사 모델을 필요로 하기 때문에 전체 학습 파이프라인의 효율성 관리도 중요한 실무적 고려사항이다.
7. 구현 및 실무 고려사항
7. 구현 및 실무 고려사항
지식 증류를 실제 시스템에 적용할 때는 손실 함수 설계와 하이퍼파라미터 튜닝이 핵심적인 실무 과제이다. 효과적인 증류를 위해서는 교사 모델의 지식을 학생 모델에 전달하는 손실 함수를 신중하게 구성해야 한다. 일반적인 접근법은 소프트 타겟에 대한 KL 발산 손실과 실제 정답 레이블에 대한 교차 엔트로피 손실을 결합하는 것이다. 이때 두 손실 항의 중요도를 조절하는 가중치 계수(알파)가 중요한 하이퍼파라미터가 된다. 또한, 소프트 타겟의 '부드러운 정도'를 결정하는 온도 파라미터(T)는 증류 성능에 지대한 영향을 미친다. 온도가 높을수록 확률 분포가 부드러워져 더 많은 은닉 지식이 전달되지만, 지나치게 높으면 과도한 정보가 학생 모델의 학습을 방해할 수 있다.
하이퍼파라미터 튜닝은 실험적 접근이 필수적이며, 작업의 특성과 모델 구조에 크게 의존한다. 일반적인 튜닝 프로세스는 다음과 같은 단계를 포함한다.
하이퍼파라미터 | 일반적인 범위/값 | 고려사항 |
|---|---|---|
온도 (T) | 1 ~ 20 | 값이 클수록 더 '부드러운' 확률 분포 생성. 너무 높으면 잡음에 민감해질 수 있음. |
알파 (α) | 0.1 ~ 0.9 | 소프트 타겟 손실의 가중치. 학생 모델의 크기와 작업 난이도에 따라 조정 필요. |
학습률 | 교사 모델 학습률보다 낮게 | 학생 모델은 일반적으로 더 작으므로 더 낮은 학습률에서 안정적으로 학습됨. |
이러한 파라미터들은 검증 세트의 성능을 기준으로 그리드 탐색이나 랜덤 탐색을 통해 최적화된다. 또한, 특징 기반 증류나 관계 기반 증류를 사용하는 경우, 중간 레이어의 특징 맵을 정렬하거나 관계 행렬을 정의하는 방식에 대한 설계 선택이 추가로 필요하다. 예를 들어, 어떤 레이어의 출력을 사용할지, 특징 맵의 크기가 다를 경우 어떻게 정규화할지 등을 결정해야 한다. 실무에서는 계산 비용과 성능 향상 간의 트레이드오프를 고려하여 가장 효율적인 증류 전략을 선택하는 것이 중요하다.
7.1. 손실 함수 설계
7.1. 손실 함수 설계
지식 증류의 성공은 적절한 손실 함수 설계에 크게 의존합니다. 일반적인 지식 증류의 총 손실 함수는 교사 모델의 지식을 전달하는 지식 증류 손실(KD Loss)과 원래 작업의 지도 학습 손실(Supervised Loss)을 결합한 형태를 취합니다. 가장 기본적인 형태는 다음과 같습니다.
L_total = α * L_KD + (1 - α) * L_CE
여기서 L_CE는 학생 모델의 예측과 실제 정답 레이블(하드 타겟) 사이의 교차 엔트로피 손실입니다. L_KD는 교사 모델과 학생 모델의 출력 분포 사이의 차이를 측정하는 손실이며, α는 두 손실 항의 균형을 조절하는 가중치 하이퍼파라미터입니다.
L_KD를 설계하는 방식은 증류하려는 지식의 유형에 따라 달라집니다. 응답 기반 증류에서는 일반적으로 쿨백-라이블러 발산(Kullback-Leibler Divergence, KL Divergence)이 사용되어, 교사 모델이 생성한 소프트 타�트(소프트맥스 출력에 온도 매개변수 T를 적용)와 학생 모델의 소프트맥스 출력(T 동일 적용) 사이의 분포 차이를 최소화합니다. 특징 기반 증류에서는 중간 은닉층의 출력(특징 맵) 간 차이를 측정하기 위해 평균 제곱 오차(MSE)나 코사인 유사도 기반 손실이 자주 사용됩니다. 관계 기반 증류에서는 샘플 간 또는 층 간 관계를 포착하기 위해 상관 관계 행렬의 차이를 계산하는 등의 더 복잡한 손실 함수가 도입됩니다.
실제 구현에서는 단일 손실 함수가 아닌, 여러 유형의 지식을 동시에 전달하기 위해 위의 손실 항들을 조합하여 사용하는 경우가 많습니다. 예를 들어, 최종 출력의 KL 발산 손실과 중간 특징 맵의 L2 거리 손실을 함께 사용하는 하이브리드 접근법이 효과적일 수 있습니다. 또한, 온도(T)와 가중치(α)는 매우 중요한 하이퍼파라미터로, T가 높을수록 소프트 타겟의 분포가 부드러워져 더 풍부한 암시적 지식 전달이 가능해지지만, 너무 높으면 정보가 희석될 수 있습니다.
7.2. 하이퍼파라미터 튜닝
7.2. 하이퍼파라미터 튜닝
지식 증류의 성공적인 구현을 위해서는 몇 가지 핵심 하이퍼파라미터를 신중하게 조정해야 한다. 이 튜닝 과정은 교사 모델의 지식을 학생 모델에 효과적으로 전달하고, 최종 모델의 성능을 극대화하는 데 결정적인 역할을 한다.
가장 중요한 하이퍼파라미터는 온도(T)와 손실 함수의 가중치 조합(α)이다. 온도 매개변수는 소프트맥스 함수를 조절하여 교사 모델이 생성하는 소프트 타겟의 '부드러움'을 결정한다. 높은 온도(예: T=20)는 확률 분포를 더 평평하게 만들어, 클래스 간의 상대적 관계와 같은 암묵적 지식을 강조한다. 반면, 낮은 온도(예: T=1)는 원-핫 인코딩에 가까운 예측을 만들어 학생 모델이 하드 타겟에 더 집중하도록 한다. 일반적으로 증류 과정 초기에는 높은 온도를 사용한 후, 미세 조정 단계에서 온도를 낮추는 전략이 효과적이다. 손실 함수는 일반적으로 교사 모델의 소프트 타�트에 대한 KL 발산 손실(L_soft)과 실제 하드 레이블에 대한 교차 엔트로피 손실(L_hard)의 선형 결합으로 구성된다. 여기서 α는 두 손실 항의 상대적 중요도를 조절하는 가중치이다. α가 0에 가까우면 학생 모델은 하드 레이블만 학습하는 전통적 학습에 가까워지고, α가 1에 가까우면 교사 모델의 소프트 예측에만 의존하게 된다. 최적의 α 값은 데이터셋과 모델 구조에 따라 다르며, 대개 0.1에서 0.5 사이에서 실험적으로 결정된다.
하이퍼파라미터 | 역할 | 일반적인 조정 범위/전략 | 영향 |
|---|---|---|---|
온도 (T) | 소프트 타겟의 평활화 정도 조절 | 1 ~ 20 (초기 학습 시 높게, 후기에는 낮게) | 높을수록 암묵적 지식 전달 강조, 낮을수록 정답 레이블 학습 강조 |
손실 가중치 (α) | 소프트 타겟 손실과 하드 레이블 손실의 균형 조절 | 0.1 ~ 0.5 | 클수록 교사 모델의 지식에 더 의존, 작을수록 원본 데이터의 정답에 더 의존 |
학습률 | 모델 가중치 업데이트의 보폭 조절 | 전통적 학습보다 낮은 값에서 시작 | 너무 높으면 학습 불안정, 너무 낮으면 수렴 속도 저하 |
배치 크기 | 한 번에 처리하는 데이터 샘플 수 | 사용 가능한 메모리 내에서 가능한 크게 | 크기가 클수록 경사 추정의 분산이 줄어들어 안정적인 학습 가능 |
이외에도 학습률 스케줄링과 배치 크기도 중요한 고려 사항이다. 지식 증류에서는 학생 모델이 이미 부드러운 목표를 가지고 학습을 시작하므로, 전통적인 학습보다 더 낮은 초기 학습률에서 시작하는 것이 안정적이다. 배치 크기는 가능한 한 크게 설정하는 것이 교사 모델의 출력 분포를 더 정확하게 추정하는 데 도움이 된다. 최적의 하이퍼파라미터 조합은 작업, 데이터, 모델 구조에 크게 의존하므로, 체계적인 그리드 탐색이나 베이지안 최적화와 같은 자동화된 튜닝 방법을 적용하는 것이 바람직하다.
