[Paper Review] Distilling the Knowledge in a Neural Network (Neurips 2014 DL Workshop)

2025. 6. 9. 13:07·Paper Review

Distilling the Knowledge in a Neural Network (Neurips 2014 DL Workshop)

Geoffrey Hinton, Oriol Vinyals, Jeff Dean

 

Abstract

  • 선택하신 내용은 기계 학습 모델의 성능 향상 방법인 앙상블(Ensemble) 기법과, 이를 실제 환경에 배포할 때 발생하는 문제점을 해결하기 위한 지식 증류(Knowledge Distillation) 기법에 대한 아이디어를 소개하고 있습니다.
    핵심 내용은 다음과 같습니다.

  • 앙상블(Ensemble)
    • 기계학습 알고리즘의 성능향상을 위한 대표적이면서 간단한 기법
    • 앙상블 모델을 사용하여 예측하는 것은 번거롭습니다.
    • 모델 개별 모델이 크다면 계산 비용이 매우 커서 많은 사용자에게 배포하기 어려울 수 있습니다.
  • 제안하는 Knowledge Distillation 아이디어
    • 앙상블기법의 문제점을 해결하기 위해, 앙상블 모델이 학습한 '지식'을 단 하나의 모델로 압축하는 것이 가능합니다. 이는 배포를 훨씬 쉽게 만듭니다. Model compression 등 [1]에서 이미 이러한 접근 방식이 제시되었습니다.
    • 본 논문의 기여: 이 논문은 다른 압축 기술을 사용하여 이 접근 방식을 더욱 발전시켰습니다. MNIST 데이터셋과 실제 상용 시스템의 음향 모델에서 앙상블의 지식을 단일 모델로 증류하여 상당한 성능 향상을 달성했습니다.
    • 새로운 유형의 앙상블: 또한, 하나 이상의 전체 모델과 여러 개의 전문가 모델(specialist models)로 구성된 새로운 유형의 앙상블을 소개합니다. 전문가 모델은 전체 모델이 혼동하는 미세하게 구분되는 클래스들을 학습합니다. 이는 Mixture of Experts (MoE) 방식과는 달리 빠르고 병렬적으로 학습될 수 있다는 장점이 있습니다.
  • Main Contribution: 이 논문은 Model compression 등 [1]에서 제시된 아이디어를 바탕으로, 앙상블 모델의 뛰어난 성능을 유지하면서도 배포 용이성을 극대화하는 'Distillation'라는 구체적인 기술을 제시하고 그 효과를 실험적으로 입증했다는 점에서 중요합니다. 특히, 앙상블 학습 자체가 어려운 매우 큰 데이터셋에서도 전문가 모델을 활용하여 성능 향상을 이끌어낼 수 있는 가능성을 보여줍니다.

1 Introduction

  • 기계 학습에서 학습단계와 배포단계
    • 학습 단계: 크고 중복이 많은 데이터셋에서 구조를 추출해야 하며, 실시간으로 작동할 필요가 없고 많은 연산 자원을 사용할 수 있습니다.
    • 배포 단계: 많은 사용자에게 제공해야 하므로 지연 시간(latency)과 연산 자원에 훨씬 더 엄격한 요구사항이 있습니다. 앙상블된 모델 같은 경우, 이러한 배포 단계에서 어려움이 있습니다.
  • 지식 증류(Distillation) 방법론 제안
    • 많은 지식을 가지고 있는 규모있고 복잡한 모델은 여러 모델의 앙상블(Ensemble methods in machine learning)이거나 Dropout 과 같은 강력한 정규화 기법으로 학습된 단일의 매우 큰 모델일 수 있습니다. 복잡한 모델이 학습된 후, 우리는 "증류(distillation)"라고 부르는 다른 종류의 학습을 사용하여 복잡한 모델의 지식을 배포에 더 적합한 작은 모델로 전달할 수 있습니다.
    • 선행 연구: 이러한 전략의 한 버전은 Rich Caruana와 동료들(Model compression)에 의해 이미 개척되었습니다. 그들의 논문에서 그들은 대규모 앙상블 모델이 습득한 지식을 단일의 작은 모델로 전달하는 것이 가능함을 설득력 있게 보여주었습니다.
  • 지식에 대한 관점
    • 학습된 모델의 '지식'을 단순하게 모델의 파라미터 값 그 자체로 보는 경향이 있었습니다. 이는 모델의 형태를 바꾸면서도 동일한 지식을 유지하기 어렵게 만드는 개념적인 제약이었습니다.
    • 지식에 대한 새로운 추상적 관점: 이 논문에서 제시하는 새로운 관점은 '지식'을 특정 형태에 얽매이지 않는, 입력 벡터를 출력 벡터로 매핑하는 학습된 함수 자체로 보는 것입니다. 특히, 모델이 각 클래스에 부여하는 확률 분포 전체(정답뿐만 아니라 오답에 대한 확률까지 포함)에 집중합니다.
  • 소프트 타겟(Soft Targets)의 중요성
    • 크고 복잡한 모델(cumbersome model)이 여러 클래스를 구분하도록 학습될 때, 일반적으로는 정답 클래스의 확률을 최대화하는 것을 목표로 합니다. 하지만 학습의 부가적인 효과로, 모델은 모든 오답 클래스에 대해서도 확률을 할당하게 됩니다. 비록 이 확률들이 매우 작더라도, 어떤 오답은 다른 오답보다 훨씬 높은 확률을 가질 수 있습니다. 
    • 예를 들어, BMW 이미지를 쓰레기 트럭으로 오인할 확률은 매우 작겠지만, 당근으로 오인할 확률보다는 훨씬 높을 수 있습니다. 오답들에 대한 이러한 상대적인 확률 분포는 복잡한 모델이 어떻게 데이터를 '일반화'하는지에 대한 풍부한 정보를 담고 있습니다.
    • 일반화 능력 전달: 모델 학습의 진정한 목표는 학습 데이터가 아닌 새로운 데이터에 대해 잘 일반화(generalize well)하는 것입니다. 복잡한 모델이 앙상블(ensemble)처럼 일반화 능력이 뛰어나다면, 이 모델이 출력하는 클래스 확률 분포(소프트 타겟)를 사용하여 작은 모델을 학습시킴으로써 작은 모델도 복잡한 모델과 동일한 방식으로 일반화하도록 만들 수 있습니다.
  • 소프트 타겟 사용의 장점
    • 더 많은 정보: 소프트 타겟은 정답 레이블만을 사용하는 하드 타겟(hard targets)보다 각 학습 데이터에 대해 훨씬 많은 정보를 제공합니다 (높은 엔트로피). 소프트 타겟은 정답과 오답을 모두 포함하는 확률분포를 나타내고, 하드 타겟이란 정답레이블에 대한 정보 하나만 포함하기 때문에 소프트 타겟이 가지는 정보량이 훨씬 많습니다.
    • 낮은 기울기 분산: 학습 데이터 간의 기울기(gradient) 분산이 훨씬 작습니다.
      학습 효율성 향상: 결과적으로 작은 모델은 원래 복잡한 모델을 학습시키는 데 사용된 데이터보다 훨씬 적은 데이터로도 학습될 수 있으며, 더 높은 학습률을 사용할 수 있습니다.
  • 선행 연구와의 관계: 이러한 아이디어는 선행 연구 [1] 에서 이미 개척되었습니다. 그들의 중요한 논문은 큰 앙상블 모델이 습득한 지식을 단일의 작은 모델로 전달하는 것이 가능함을 입증했습니다. 이 논문은 그 연구를 다른 압축 기법(즉, 지식 증류)을 사용하여 더욱 발전시키고 있습니다.
  • Cumbersome model: 많은 지식을 갖고있는 규모가 큰 모델
    • Cumbersome model 이 가지고 있는 지식을 어떻게 학습해야 작은 모델로 지식을 전달시킬 수 있을까?
    • 본 논문에서는 이를 위해  'logits 사용' 방법과 본 논문에서 제안하는 'temperature 조절' 방법을 소개합니다.
  • Soft Targets의 숨겨진 정보: 예를들어, 이미지 분류 태스크에서 원본 모델이 이미지를 보고 정답 클래스(예: '2')를 매우 높은 확률로 예측하더라도, 다른 틀린 클래스(예: '3'이나 '7')에 대해서도 아주 작은 확률 값을 할당합니다.
  • Cross-Entropy Cost Function의 한계: 하지만 학습 과정에서 흔히 사용되는 크로스 엔트로피 손실 함수(cross-entropy cost function)는 정답 클래스에 대한 예측 확률을 높이는 데 집중하기 때문에, 이러한 아주 작은 확률 값들의 차이는 손실 값에 거의 영향을 미치지 못합니다. 따라서 작은 모델을 학습시킬 때 이러한 유용한 유사성 정보를 효과적으로 전달하기 어렵습니다.
  • 기존의 해결책: Logits 사용
    • [1]은 이 문제를 해결하기 위해 softmax를 통과한 최종 확률 대신, softmax의 입력 값인 logits을 학습 대상으로 사용했습니다. 원본 모델이 출력한 logits과 작은 모델이 출력한 logits 사이의 제곱 차이(squared difference) 를 최소화하는 방식으로 학습을 진행했습니다. logits은 확률처럼 0과 1 사이로 압축되지 않은 원본 점수이기 때문에 낮은 확률에 대한 정보 손실 없이 모델의 판단 경향을 더 직접적으로 전달할 수 있습니다.
    • 본 논문의 해결책: Distillation (온도 조절): 본 논문에서는 더 일반적인 해결책으로 증류(distillation) 방법을 제안합니다. 이는 softmax 함수에 온도(Temperature, T)라는 매개변수를 도입하여 조절하는 방식입니다.
  • 학습 데이터 (Transfer Set): 작은 모델을 학습시키는 데 사용되는 데이터셋(transfer set)은 원본 학습 데이터셋을 그대로 사용할 수도 있고, 레이블이 없는(unlabeled) 데이터를 사용할 수도 있습니다. [1] 저자들은 원본 학습 데이터셋을 사용하는 것이 효과적임을 발견했습니다.
  • Hard Target과의 결합: 학습 데이터에 정답 레이블(hard targets)이 있는 경우, 단순히 soft target만 맞추는 것보다 정답 레이블도 동시에 맞추도록 목적 함수에 작은 항을 추가하여 학습 성능을 개선할 수 있습니다. 작은 모델이 soft target을 완벽하게 맞추기 어렵기 때문에, 정답 방향으로 오류를 보정하는 것이 도움이 됩니다.

2 Distillation

  • Softmax function
    • Softmax 함수는 신경망의 마지막 레이어에서 계산된 각 클래스에 대한 점수(logit, z)를 확률 q 로 변환하며, 수식은 아래 식 (1) 와 같습니다.
    • 일반적으로 Temperature (T)는 1로 설정됩니다.
    • Temperature의 역할: T 값이 높아지면 확률 분포는 더 부드러워지고(softmax 출력 값이 덜 극단적으로 치우침),  T 값이 낮아지면 확률 분포는 더 날카로워집니다 (softmax 출력 값이 특정 클래스에 더 집중됨).

  • Knowledge Distillation 에서의 Temperature 활용
    • Distillation(지식 증류)은 크고 복잡한 모델(cumbersome model)의 지식을 작고 효율적인 모델(distilled model)로 전달하는 기법입니다. 이 과정에서 큰 모델의 출력 확률 분포를 작은 모델의 학습 목표(soft target)로 사용합니다.
    • Soft target을 생성할 때, 큰 모델의 softmax 레이어에 높은 Temperature를 사용합니다. 이렇게 하면 단순히 정답 클래스에 높은 확률을 부여하는 것을 넘어, 오답 클래스들 간의 상대적인 확률 정보(어떤 오답이 다른 오답보다 더 그럴듯한지 등)까지 포함하는 부드러운 확률 분포를 얻을 수 있습니다. 이 정보는 큰 모델이 데이터를 어떻게 일반화하는지에 대한 유용한 통찰을 제공합니다.
    • 작은 모델을 학습시킬 때도 동일하게 높은 Temperature를 사용하여 이 soft target 분포를 모방하도록 훈련합니다. 작은 모델의 학습이 완료된 후에는 추론 시 Temperature를 다시 1로 설정하여 사용합니다.
  • Soft Target과 Hard Target 결합
    • 전이 학습 데이터셋에 정답 레이블(hard target)이 있는 경우, soft target만을 사용하는 것보다 둘다 같이 사용할 때 성능을 향상시킬 수 있습니다.
    • 본 논문에서는 소프트 타겟과 하드  타겟레이블에 대해 각자 다른 방식의 두 가지 목적 함수(objective function)의 가중 평균을 사용하는 방법을 제안
      • 첫 번째 목적 함수: soft target에 대한 cross entropy. 이는 작은 모델의 softmax에서 높은 Temperature를 사용하여 계산합니다.
      • 두 번째 목적 함수: hard target에 대한 cross entropy. 이는 작은 모델의 softmax에서 Temperature를 1로 사용하여 계산합니다.
      • 일반적으로 hard target에 대한 목적 함수의 가중치를 상대적으로 낮게 설정했을 때 가장 좋은 결과를 얻었습니다.
  • Gradient 스케일링
    • Soft target에서 발생하는 loss의 gradient 크기는 1/(T^2) 에 비례합니다.
    • 따라서 soft target과 hard target을 함께 사용할 때는 soft target에서 오는 gradient에 T^2 를 곱해주는 것이 중요합니다. 이유는 다양한 Temperature 값을 시도하며 하이퍼파라미터를 조정할 때, hard target과 soft target의 상대적인 기여도가 일정하게 유지되도록 하기 위해서입니다.

2.1 Matching logits is a special case of distillation

  • 손실 함수의 기울기 (Eq. 2): 증류 과정에서 작은 모델은 큰 모델의 소프트 타겟을 따라 학습합니다. 이 때 사용되는 손실 함수는 일반적으로 cross-entropy 입니다.
  • p_i: 큰 모델이 온도 T로 계산한 클래스 i의 소프트 타겟 확률
  • q_i: 작은 모델이 온도 T로 계산한 클래스 i의 확률
  • 기울기는 작은 모델의 예측 q_i 와 큰 모델의 타겟 p_i 의 차이에 비례하며, 온도 T에 반비례합니다. 온도가 높으면 기울기 크기가 작아집니다.

T 가 logit의 절댓값에 비해 매우 높은 경우 아래 식 (3) 과 같이 근사됩니다.

 

만약 각 학습 데이터 케이스에 대해 모든 클래스의 logit 합이 0이 되도록 조정한 경우 식 (4) 와 같이 더 단순화 됩니다.

 

  • Logit 매칭과의 연결: Eq. 4 의 기울기 형태는 고온 및 logit이 평균 0일 경우, 교차 엔트로피를 사용하는 증류가 logit 간의 제곱 오차를 최소화하는 것과 수학적으로 유사해진다는 것을 의미합니다.
  • temperature (T)의 영향
    • 높은 T 에서는 모든 logit 값에 대해 비슷하게 매칭하려는 경향이 강해집니다. 이는 큰 모델의 일반화 특성에 대한 풍부한 정보를 전달할 수 있습니다.
    • 낮은 T 에서는 logit 값이 낮은(음수값이 큰) 클래스에는 덜 집중하게 됩니다. 이러한 낮은 logit 값은 큰 모델 학습 시 손실 함수에 거의 영향을 미치지 않아 노이즈가 많을 수 있기 때문에, 이를 무시하는 것이 작은 모델의 학습에 유리할 수도 있습니다.
  • 실험적 결과: 논문 저자들은 작은 모델의 용량이 충분하지 않을 때는 중간정도의 T 가 가장 좋은 성능을 보였음을 보여주며, 이는 매우 낮은 logit을 무시하는 것이 도움이 될 수 있음을 시사합니다.

3 Preliminary experiments on MNIST

  • 모델 설정
    • 대형 모델: 1200개의 rectified linear 히든 유닛을 가진 두 개의 히든 레이어로 구성된 대규모 신경망을 60,000개의 전체 MNIST 훈련 데이터로 학습시켰습니다. 이 모델은 드롭아웃(Improving neural networks by preventing co-adaptation of feature detectors, Dropout: a simple way to prevent neural networks from overfitting) 및 가중치 제약(weight-constraints)으로 강력하게 정규화되었습니다. 입력 이미지는 최대 2픽셀까지 무작위로 이동(jittered)시켜 학습 데이터 증강 효과를 얻었습니다.
    • 소형 모델 (정규화 없음): 800개의 rectified linear 히든 유닛을 가진 두 개의 히든 레이어로 구성된 더 작은 신경망을 동일한 데이터로 학습시켰지만 정규화 기법은 사용하지 않았습니다.
      소형 모델 (증류): 동일한 소형 모델 아키텍처를 사용했지만, 대형 모델이 생성한 "soft targets"를 온도(temperature) 20을 사용하여 일치시키는 추가적인 학습 작업을 통해 정규화했습니다. Soft targets는 일반적인 정답(hard targets) 대신, 각 클래스에 대한 대형 모델의 예측 확률 분포를 의미합니다.
  • 성능 비교
    • 대형 모델은 67개의 테스트 오류를 기록하여 가장 좋은 성능을 보였습니다. 정규화 없이 학습된 소형 모델은 146개의 오류를 기록하여 성능이 크게 저하되었습니다.
    • 증류를 통해 학습된 소형 모델은 74개의 오류를 기록했습니다. 이는 정규화 없이 학습된 소형 모델(146개 오류)보다 훨씬 뛰어난 성능이며, 대형 모델의 지식이 소형 모델로 성공적으로 이전되었음을 보여줍니다.
  • Soft Targets의 효과
    • Soft targets는 단순히 정답을 맞추는 것 이상의 풍부한 정보를 담고 있습니다. 대형 모델의 일반화 능력(예: 이미지 이동을 통해 학습된 지식)이 soft targets를 통해 소형 모델로 효과적으로 전달되었습니다.
    • 심지어 soft targets를 생성하는 데 사용된 데이터(transfer set)에 이미지 이동이 포함되지 않았음에도 불구하고 이러한 일반화 지식이 전달될 수 있음을 시사합니다.
  • T 값 의 영향
    • 소형 모델의 히든 레이어 유닛 수가 300개 이상일 때는 온도 8 이상의 값에서 비슷한 결과를 보였습니다.
    • 하지만 유닛 수를 30개로 크게 줄인 경우, 온도 2.5 ~ 4 범위가 더 높거나 낮은 온도보다 훨씬 좋은 성능을 보였습니다. 이는 증류 시 온도가 모델의 크기에 따라 최적 값이 달라질 수 있으며, 특히 작은 모델에서는 너무 낮은 확률값을 무시하는 중간 온도가 유리할 수 있음을 나타냅니다.
  • 데이터 부족 환경에서의 증류
    • 숫자 '3' 제외 실험: 훈련 데이터에서 숫자 '3'의 모든 예제를 완전히 제외하고 소형 모델을 증류 학습시켰습니다. 즉, 소형 모델은 훈련 중 '3'을 전혀 본 적이 없습니다. 그럼에도 불구하고 이 모델은 테스트 세트의 '3'에 대해 133개의 오류를 포함하여 총 206개의 오류만 기록했습니다. '3' 클래스에 대한 편향(bias)을 조절했을 때는 '3'에 대한 오류가 14개로 줄어들고 전체 오류도 109개로 감소했습니다. 이는 증류를 통해 모델이 학습 데이터에 없는 클래스에 대해서도 상당한 지식을 습득할 수 있음을 보여줍니다.
    • 숫자 '7'과 '8'만 사용 실험: 훈련 데이터에서 숫자 '7'과 '8'의 예제만 사용하여 소형 모델을 증류 학습시켰습니다. 이 경우 초기 테스트 오류율은 47.3%로 높았지만, '7'과 '8' 클래스에 대한 편향을 조절하자 테스트 오류율이 13.2%로 크게 감소했습니다. 이는 매우 제한된 데이터셋에서도 증류가 효과적일 수 있으며, 특정 클래스에 대한 편향 조절이 성능 개선에 중요함을 시사합니다.
  • Findings: 이 실험들은 증류가 대형 모델이나 앙상블 모델(Ensemble methods in machine learning)의 지식을 소형 모델로 효과적으로 이전할 수 있으며, 특히 데이터가 부족하거나 특정 클래스 예제가 없는 환경에서도 유용함을 보여줍니다. 또한, soft targets에 담긴 풍부한 정보가 모델의 일반화 능력을 향상시키는 데 기여함을 강조합니다.

 

4 Experiments on speech recognition

  • Automatic Speech Recognition (ASR) 시스템 개요
    • 최신 ASR 시스템은 DNN을 사용하여 음성 특징(acoustic features)을 Hidden Markov Model (HMM)의 이산 상태(discrete states) 확률 분포로 매핑합니다.
    • 특히, DNN은 각 시점(time)마다 tri-phone 상태 클러스터에 대한 확률 분포를 출력하며, 디코더(decoder)는 HMM 상태들을 탐색하며 가장 확률 높은 경로를 찾아내어 최종 텍스트 전사(transcription)를 생성합니다.
    • DNN 훈련 목표: DNN은 일반적으로 각 프레임(frame)별 분류(frame-by-frame classification)를 수행하도록 훈련됩니다. 이는 네트워크의 예측값과 실제 상태 시퀀스(ground truth sequence of states)의 강제 정렬(forced alignment) 결과 간의 교차 엔트로피(cross entropy)를 최소화하는 방식으로 이루어집니다.

  • 훈련 목표 설명: 논문에서는 이 훈련 목표를 아래 식과 같이 표현합니다. 이는 강제 정렬된 실제 HMM 상태에 해당하는 확률을 최대화하도록 모델 파라미터 theta 를 학습시키는 과정을 수학적으로 표현한 것입니다. 이는 곧 실제 상태와 모델 예측 간의 교차 엔트로피를 최소화하는 것과 동일합니다.
  • 모델 구조 및 데이터: 실험에 사용된 DNN 음향 모델은 8개의 은닉층(hidden layers)을 가지며, 각 은닉층은 2560개의 정류 선형 유닛(rectified linear units)으로 구성됩니다. 최종 출력층은 14,000개의 HMM 타겟 상태에 해당하는 확률을 출력하는 소프트맥스(softmax) 층입니다. 전체 파라미터 수는 약 85M(8천 5백만)입니다. 입력은 26프레임의 Mel-scaled filter-bank 계수이며, 21번째 프레임의 HMM 상태를 예측합니다. 이 모델은 약 2000시간 분량의 영어 음성 데이터(약 7억 개의 훈련 예제)로 훈련되었습니다.
  • 성능: 이 시스템은 개발 세트(development set)에서 58.9%의 프레임 정확도(frame accuracy)와 10.9%의 단어 오류율(Word Error Rate, WER)을 달성했습니다. 이는 당시 Android 음성 검색에 사용되던 음향 모델의 약간 오래된 버전이지만, 강력한 기준선(baseline)으로 간주됩니다.

 

4.1 Results

 

  • 실험 목표
    • 앙상블 모델의 성능 향상 효과를 작은 단일 모델로 이전(distill)하는 것이 목표였습니다.
    • 기준 모델(Baseline): 단일 신경망 모델을 사용하여 앙상블 모델의 지식증류 없이 음성 인식 모델을 학습. 이 모델은 8개의 히든 레이어와 약 8,500만 개의 파라미터를 가지고 있으며, 약 2,000시간의 음성 데이터를 사용했습니다.
    • 앙상블 모델: 기준 모델과 동일한 구조와 학습 절차를 사용하되, 초기 파라미터 값을 다르게 설정하여 10개의 개별 모델을 학습했습니다. 이렇게 학습된 모델들의 예측 평균(averaged predictions)이 개별 모델보다 성능이 우수함을 확인했습니다. (데이터셋을 다르게 구성하여 다양성을 추가하는 방법도 시도했지만, 결과에 큰 차이가 없어 랜덤 초기화 방식을 채택했습니다.)
    • 지식 증류(Distillation)
      • 10개 앙상블 모델의 평균 예측값을 '소프트 타겟(soft targets)'으로 사용하여 단일 증류(distilled) 모델을 학습했습니다.
        소프트 타겟을 생성할 때 사용한 온도(Temperature, T) 값은 1, 2, 5, 10을 시도했으며, 표 1에서 사용된 최적값은 볼드체로 표시되었습니다.
      • 증류 모델 학습 시에는 앙상블 모델의 소프트 타겟에 대한 크로스 엔트로피와 실제 정답(hard labels)에 대한 크로스 엔트로피를 함께 사용했습니다. 이때 하드 타겟에 대한 가중치는 0.5를 사용했습니다.
  • 실험 결과
    • 표 1에서 볼 수 있듯이, 지식 증류 방식은 단일 모델을 하드 라벨만으로 학습하는 것보다 훨씬 유용한 정보를 학습 데이터셋으로부터 추출할 수 있음을 보여주었습니다.
    • 10개 앙상블 모델 사용 시 얻은 프레임 분류 정확도 향상의 80% 이상이 단일 증류 모델로 이전되었습니다. 이는 MNIST 실험 결과와 유사합니다. 최종 목표인 WER(Word Error Rate) 측면에서는 목적 함수 불일치(mismatch) 때문에 앙상블 자체의 개선 폭은 작았지만, 이 WER 개선 역시 증류 모델로 성공적으로 이전되었습니다.
    • 관련 연구 [2]: 본 논문의 연구와 유사하게 큰 모델의 클래스 확률을 활용하여 작은 음향 모델을 학습하는 연구 [2]가 있었습니다. 그러나 해당 연구에서는 온도 T=1로 비라벨링된 대규모 데이터셋을 사용했으며, 큰 모델과 작은 모델 간의 오류율 차이(gap)를 증류 모델이 줄이는 비율이 28%에 불과하여 본 논문의 결과보다 낮았습니다.

 

5 Training ensembles of specialists on very big datasets

  • 앙상블 시스템의 성능 향상
    • Table 3는 일반 모델 단독 시스템과 61개의 전문가 모델을 결합한 앙상블 시스템의 성능을 비교합니다.
    • 앙상블 시스템은 일반 모델 단독 시스템에 비해 전체 테스트 정확도에서 4.4%의 상대적 향상을 보였습니다 (25.0%에서 26.1%로 향상).
    • Conditional test accuracy는 전문가 모델이 담당하는 클래스에 속하는 예제들만 고려했을 때의 정확도를 보여주며, 이는 전문가 모델이 특정 범위 내에서 얼마나 효과적인지를 나타냅니다.
  • 전문가 모델 커버리지와 정확도 향상
    • Table 4는 테스트 예제의 정답 클래스가 몇 개의 전문가 모델에 의해 '커버'되는지에 따라 Top 1 정확도 향상 정도를 보여줍니다. 여기서 '커버'된다는 것은 해당 정답 클래스가 전문가 모델이 집중하는 300개의 클래스 집합에 포함된다는 의미입니다.
    • 일반적으로, 정답 클래스를 더 많은 수의 전문가 모델이 커버할수록 Top 1 정확도 향상이 더 큰 경향을 보였습니다. 이는 여러 전문가 모델이 특정 클래스에 대한 다양한 관점을 제공함으로써 앙상블의 성능을 더욱 높일 수 있음을 시사합니다.
    • 이러한 결과는 독립적인 전문가 모델 학습의 용이성 덕분에 필요한 경우 더 많은 전문가 모델을 추가하여 성능을 개선할 수 있음을 강조합니다.

6 Soft Targets as Regularizers

 

RQ: 소프트 타겟이 하드타겟 레이블에 비해 왜 효과적인가?

 

  • 하드 타겟(Hard Targets)의 한계 
    • 일반적으로 신경망을 학습할 때 사용하는 하드 타겟은 정답 클래스에만 1의 확률을 부여하고 나머지 클래스에는 0을 부여하는 방식입니다 (예: 숫자 '2' 이미지의 하드 타겟은 [0, 0, 1, 0, 0, 0, 0, 0, 0, 0]). 이는 정답이 무엇인지만 알려줄 뿐, 모델이 정답 외의 다른 클래스에 대해 어떤 가능성을 보는지에 대한 정보를 전혀 담고 있지 않습니다. 
    • 예를 들어, 모델이 숫자 '2' 이미지를 '2'로 예측했지만, '3'으로 잘못 예측할 확률이 '7'로 잘못 예측할 확률보다 훨씬 높다면, 이러한 상대적인 확률 정보는 하드 타겟에 포함되지 않습니다.
  • 소프트 타겟(Soft Targets)의 장점
    • 소프트 타겟은 복잡한 모델(cumbersome model, 교사 모델)이 모든 클래스에 대해 출력하는 확률 분포를 사용합니다. 이 확률 분포는 온도(temperature) 매개변수를 사용하여 더 부드럽게 만들 수 있습니다 (이 논문에서는 softmax 함수의 온도를 높여 소프트 타겟을 생성합니다). 
    • 예를 들어, 어떤 '2' 이미지가 복잡한 모델에서 '2'로 99.9% 확률로 예측되지만, '3'으로 0.06%, '7'으로 0.001% 확률로 예측된다면, 이 소프트 타겟은 이 '2' 이미지가 '3'과 더 유사하게 보이는 특징을 가지고 있다는 정보를 전달합니다. 이러한 클래스 간의 상대적인 유사성 정보는 하드 타겟에는 없는 중요한 일반화(generalization) 정보를 포함합니다.
  • 오버피팅(Overfitting) 방지 효과: 논문에서는 이러한 소프트 타겟이 적은 양의 데이터로 학습할 때 발생하는 오버피팅을 방지하는 데 매우 효과적임을 실험으로 보여줍니다.
  • 실험 설정: 8500만 개의 매개변수를 가진 음성 인식 모델(baseline speech model)을 사용했습니다.
  • 실험 결과
    • 전체 학습 데이터(100%)로 학습한 모델은 테스트 정확도 58.9%를 달성했습니다.
    • 학습 데이터의 3%만 사용하여 하드 타겟으로 학습한 모델은 학습 정확도는 67.3%로 높았지만, 테스트 정확도는 44.5%로 크게 떨어졌습니다. 이는 심각한 오버피팅이 발생했음을 보여줍니다. 학습 데이터에만 과도하게 맞춰지고 실제 데이터에서는 성능이 저하된 것입니다.
    • 동일한 3%의 학습 데이터만 사용하여 소프트 타겟 (전체 데이터를 학습한 모델에서 생성된)으로 학습한 모델은 학습 정확도는 65.4%였지만, 테스트 정확도는 57.0%로, 전체 데이터를 사용한 모델의 성능에 거의 근접했습니다. 이 모델은 오버피팅이 훨씬 덜 발생했으며, 조기 종료(early stopping) 없이도 안정적으로 수렴했습니다.
  • 지식 전달 효과: 이 결과는 소프트 타겟이 복잡한 모델이 전체 데이터를 통해 학습한 일반화 능력을 더 작은 모델에게 효과적으로 전달하는 강력한 방법임을 보여줍니다. 소프트 타겟은 단순한 정답 레이블을 넘어, 데이터의 구조와 클래스 간의 관계에 대한 풍부한 정보를 담고 있어, 이를 통해 학습된 모델은 적은 데이터로도 더 나은 일반화 성능을 얻을 수 있습니다. 소프트 타겟은 일종의 강력한 정규화(regularization) 기법으로 작용합니다.

7 Relationship to Mixtures of Experts

Specialist models versus Mixtures of Experts (MoE)

 

  • 유사점: 두 접근 방식 모두 전체 데이터를 여러 부분으로 나누어 처리하거나 특정 데이터 하위 집합에 특화된 여러 모델을 사용하는 방식을 포함합니다. 이는 대규모 데이터셋이나 복잡한 문제를 다룰 때 유용할 수 있습니다.
  • 전문가 혼합 모델 (Mixtures of Experts, MoE)
    • 각 입력 예제를 어떤 전문가에게 할당할지 확률을 계산하는 '게이팅 네트워크(gating network)'를 사용합니다.
    • 게이팅 네트워크는 각 전문가의 상대적인 판별 성능(discriminative performance)을 기반으로 예제 할당을 학습합니다.
    • 훈련의 어려움 
      1. 훈련 과정에서 다음과 같은 이유로 병렬 처리가 어렵습니다.
      2. 각 전문가의 가중치가 적용된 훈련 데이터셋이 다른 전문가에 따라 계속 변합니다.
      3. 게이팅 네트워크는 동일한 예제에 대해 서로 다른 전문가의 성능을 비교하여 할당 확률을 수정해야 합니다.
      4. 이러한 어려움 때문에 데이터 하위 집합이 분명히 다른 방대한 데이터셋 작업에는 잘 사용되지 않습니다.
  • 전문의 모델 (Specialist Models)
    • 먼저 '제너럴리스트 모델(generalist model)'을 전체 데이터로 훈련시킵니다.
      제너럴리스트 모델의 혼동 행렬(confusion matrix)을 사용하여 전문가들이 훈련할 '혼동되기 쉬운(confusable)' 클래스들의 하위 집합을 정의합니다.
      이 하위 집합이 정의되면, 각 전문가는 다른 전문가와 완전히 독립적으로 훈련될 수 있습니다.
    • 훈련의 용이성
      1. 훈련 과정이 훨씬 병렬화하기 쉽습니다.
      2. 테스트 시에는 제너럴리스트 모델의 예측을 사용하여 어떤 전문가가 관련 있는지 결정하고 해당 전문가만 실행합니다.
      3. 대규모 클래스를 처리하기 위해 관련 없는 클래스들을 '쓰레기통 클래스(dustbin class)'로 묶어 softmax 크기를 줄일 수 있습니다.

8 Discussion

  • 증류(Distillation) 기법의 효과: 앙상블 모델이나 강한 정규화가 적용된 대규모 모델의 지식을 더 작고 배포하기 쉬운 단일 모델로 성공적으로 이전할 수 있음을 보였습니다.
  • 실험 결과
    • MNIST 데이터셋에서는 증류 기법이 매우 효과적이었으며, 심지어 증류 모델 학습에 사용된 데이터셋에 특정 클래스의 예제가 전혀 포함되지 않았음에도 불구하고 뛰어난 성능을 보여주었습니다.
    • Android 음성 검색에 사용되는 것과 유사한 대규모 음향 모델의 경우, 10개의 심층 신경망 앙상블을 학습하여 얻은 성능 향상의 대부분을 동일 크기의 단일 신경망으로 증류할 수 있었습니다. 이는 모델 배포를 훨씬 용이하게 만듭니다.
  • 대규모 데이터셋을 위한 전문가(Specialist) 모델: 전체 앙상블을 학습시키는 것이 비실용적인 초대규모 신경망의 경우, 일반 모델이 자주 혼동하는 클래스들의 특정 서브셋을 판별하도록 학습된 다수의 전문가 모델을 활용하여 단일 대규모 신경망의 성능을 크게 향상시킬 수 있음을 보였습니다.
  • 미해결 과제: 전문가 모델에 포함된 지식을 단일 대규모 신경망으로 다시 증류하는 것은 아직 보여주지 못했습니다.
  • Contributions: 이 논문은 이전 연구인 Model compression의 아이디어를 발전시켜, 모델 앙상블 또는 대규모 모델의 지식을 더 작은 모델로 효율적으로 이전하는 새로운 방법인 '증류'를 제안하고 그 효과를 다양한 실험을 통해 입증했습니다. 특히 소프트 타겟의 중요성을 강조하며, 이를 통해 학습 데이터가 부족한 경우에도 모델의 일반화 성능을 크게 향상시킬 수 있음을 보여주었습니다.

Reference

[1] Model compression (KDD 2006)

[2] Learning small-size dnn with output-distribution-based criteria (Interspeech 2014)

'Paper Review' 카테고리의 다른 글

[Paper Review] Do Neural Topic Models Really Need Dropout? Analysis of the Effect of Dropout in Topic Modeling (EACL 2023)  (0) 2025.06.25
[Paper Review] LoRACode: LoRA Adapters for Code Embeddings (ICLR 2025 Workshop)  (0) 2025.06.24
[Paper Review] Gaussianization Flows (AISTATS 2020)  (0) 2025.06.07
[Paper Review] Improving Neural Topic Models with Wasserstein Knowledge Distillation (ECIR 2023)  (6) 2025.06.06
[Paper Review] LightGCL: Simple Yet Effective Graph Contrastive Learning for Recommendation (ICLR 2023)  (0) 2025.05.02
'Paper Review' 카테고리의 다른 글
  • [Paper Review] Do Neural Topic Models Really Need Dropout? Analysis of the Effect of Dropout in Topic Modeling (EACL 2023)
  • [Paper Review] LoRACode: LoRA Adapters for Code Embeddings (ICLR 2025 Workshop)
  • [Paper Review] Gaussianization Flows (AISTATS 2020)
  • [Paper Review] Improving Neural Topic Models with Wasserstein Knowledge Distillation (ECIR 2023)
Seung-won Seo
Seung-won Seo
ML , NLP , DL 에 관심이 많습니다. 반갑습니다 :P
  • Seung-won Seo
    Butterfly_Effect
    Seung-won Seo
    • 분류 전체보기 (78) N
      • 일기장 (2)
      • 메모장 (1)
      • Plan (0)
      • To do List (0)
      • Paper Review (33) N
      • Progress Meeting (0)
      • Research in NLP (14)
      • Progress for XTM (0)
      • Writing for XTM (0)
      • 논문작성 Tips (12)
      • Study (16)
        • Algorithm (0)
        • ML & DL (7)
        • NLP (2)
        • Statistics (1)
        • Topic Modeling (6)
  • 링크

  • hELLO· Designed By정상우.v4.10.3
Seung-won Seo
[Paper Review] Distilling the Knowledge in a Neural Network (Neurips 2014 DL Workshop)
상단으로

티스토리툴바