Glossary
지식 증류란 무엇인가
지식 증류는 복잡한 모델(일반적으로 딥 러닝 모델)의 지식을 추출하여 더 간단한 모델로 전이하는 모델 압축 및 지식 전이 기술입니다. 기본 원리는 작은 모델(학생 모델)을 훈련시켜 큰 모델(교사 모델)의 출력을 모방하는 것입니다. 이를 통해 높은 성능을 유지하면서도 계산 자원 소비를 줄일 수 있습니다.
이 기술의 배경은 딥 러닝 모델의 복잡성이 증가함에 따라 추론 시 더 많은 계산 자원이 필요해지는 것입니다. 지식 증류를 통해 모델의 크기를 효과적으로 줄이고 추론 속도를 높일 수 있으며, 정확도를 최소한으로 손실하면서도 가능합니다. 지식 증류의 작동 방식은 교사 모델이 훈련 데이터에서 소프트 레이블을 생성하고 이 소프트 레이블을 사용하여 학생 모델을 훈련하는 것입니다.
전형적인 시나리오에서 지식 증류는 이미지 인식, 자연어 처리 및 음성 인식과 같은 분야에서 널리 사용됩니다. 예를 들어, 이미지 분류 작업에서 대형 합성곱 신경망(CNN)이 교사 모델로 사용되고 경량 네트워크가 학생 모델로 훈련됩니다. 미래의 추세는 AI 모델이 더욱 복잡해짐에 따라 지식 증류의 적용이 증가할 것임을 보여줍니다. 특히 모바일 장치 및 엣지 컴퓨팅 장치에서 더욱 두드러질 것입니다.
지식 증류의 장점은 모델의 추론 속도와 효율성을 크게 향상시키고 메모리 사용량을 줄일 수 있다는 점입니다. 그러나 단점도 존재하는데, 학생 모델이 교사 모델의 지식을 완전히 포착하지 못해 성능 손실이 발생할 수 있습니다. 또한 성공적인 증류를 위해 교사 모델과 학생 모델의 적절한 아키텍처 선택이 중요합니다.