지식 증류가 어떻게 AI 모델을 압축하여 더 빠른 추론, 향상된 정확도 및 에지 디바이스 배포 효율성을 제공하는지 알아보세요.
지식 증류는 머신러닝(ML) 의 한 기법으로, 작고 컴팩트한 모델('학생')이 더 크고 복잡한 모델('교사')의 동작을 모방하도록 훈련하는 것입니다. 주요 목표는 교사 모델이 학습한 '지식'을 학생 모델에 전달하여 학생이 비슷한 성능을 달성하면서도 훨씬 낮은 계산 요구 사항(예: 크기 축소 및 추론 지연 시간 단축)을 달성할 수 있도록 하는 것입니다. 따라서 복잡한 딥러닝(DL) 모델을 모바일 기기나 엣지 컴퓨팅 플랫폼과 같이 리소스가 제한된 환경에 배포하는 데 실용적입니다. 이 개념은 제프리 힌튼과 동료들이"신경망에서 지식의 증류"라는 논문에서 대중화했습니다.
이 과정에는 일반적으로 사전 학습된 교사 모델이 포함되며, 이 모델은 강력한 단일 모델 또는 정확도가 높은 것으로 알려진 여러 모델의 앙상블이 될 수 있습니다. 그런 다음 일반적으로 더 적은 수의 매개변수 또는 더 얕은 아키텍처(예: 더 작은 컨볼루션 신경망(CNN))를 사용하는 학생 모델이 교사 모델의 출력을 지침으로 사용하여 학습됩니다. 학생은 학습 데이터의 하드 레이블(실측값)만 사용하는 대신 교사의 '소프트 타겟'(교사가 모든 수업에 대해 예측한 전체 확률 분포)을 통해 학습하는 경우가 많습니다. 이러한 소프트 타깃에는 교사 모델이 수업 간의 유사성을 일반화하고 나타내는 방법에 대한 더 풍부한 정보가 포함되어 있습니다. 증류 손실이라고도 하는 특수 손실 함수는 학생의 예측과 교사의 소프트 목표 간의 차이를 최소화하는 데 사용되며, 때로는 실제 레이블을 사용하여 계산된 표준 손실과 결합되기도 합니다.
지식 증류는 몇 가지 주요 이점을 제공합니다:
지식 증류는 다양한 영역에서 널리 사용되고 있습니다:
지식 증류는 다른 모델 최적화 기법과 관련이 있지만 별개의 기법입니다:
지식 증류는 최첨단 AI 모델의 접근성과 효율성을 높여 대규모 연구 모델과 실제 모델 배포 사이의 간극을 메워주는 강력한 도구입니다. Ultralytics HUB와 같은 플랫폼은 다음과 같은 잠재적 증류 모델의 훈련 및 배포를 용이하게 합니다. YOLOv8 또는 YOLO11.