모델 압축하기 - 적응적 추론

작성자 김아름 수정일 2022-11-03 09:43

#TwinDoc2.0, #트윈독2.0, #모델, #압축, #경량화

아티클 관련 제품: TwinDoc2.0

들어가며

  • TwinDoc 의 Model 압축 기능은 Model 의 용량과 파라미터 수를 줄이거나 추론 속도를 향상 시키기 위한 기능으로 기존에 Fine-Tuning 된 Model 을 활용하여 압축을 수행합니다.


  • 현재 TwinDoc 은 5가지 Task (분류, Multi-Lael 분류, 추출 요약, 추상 요약, 개체명 인식) 중 분류 Model 에 대한 Model 압축 기능만 제공합니다.

  • 적응적 추론에 대한 설명은 TwinDoc의 Model 경량화 를 참고해주세요.



사전 준비

  • 압축할 분류 Model 에 맞는 Dataset 을 준비합니다.

  • 분류 Model 압축에 사용할 Fine-Tuned Model 을 준비합니다.

  • 분류 Model에 대한 개발은 분류 모델 개발하기 를 참고해주세요.



Model 압축하기


적응적 추론은
문제의 난이도에 따라 통과되는 레이어의 수를 다르게 해 빠른 추론이 가능하도록 하는 압축 방법입니다.
지능적 추론 압축을 통해 평가 데이터 소요 시간을 감소 시킬 수 있습니다.


모델을 압축합니다.


  1. 분류 모델 상세 화면으로 이동합니다.

  2. 상단의 COMPRESS 탭에서 Create를 클릭합니다.


  1. Model : 압축할 모델을 선택합니다.
  2. Title : compress-v2 를 입력합니다.
  3. Compress Type : Adaptive Inference 를 선택합니다.
  4. Resource : 사용할 GPU를 선택합니다.
  5. Dataset : 모델 개발 시 사용한 Dataset을 선택합니다.


  • 모델의 사이즈가 얼마나 줄어들 지 예측한 정보를 확인할 수 있습니다.


  • 하단의 Advanced 를 클릭하면, 지식 증류 파라미터를 수정할 수 있습니다.



모델 압축 결과를 확인합니다.


  • 모델 상세 화면의 COMPRESS 탭에서 Compress Name 을 클릭합니다.


  • General 탭에서는 세 가지를 확인할 수 있습니다.
  1. Metrics by Threshold : Model 의 Threshold 에 따른 성능 변화를 확인합니다. 
  2. Compress Model Performance : Model 의 Threshold 에 따른 성능 변화를 확인합니다..
  3. Compression status : Compress Method 별 특징적인 그래프를 확인합니다.


  • 평가 데이터에 대한 점수(accuracy or f1_macro)와 평가 소요 시간을 확인합니다.


  • Detail 에서 Metrics Graph를 선택하여 확인합니다.


  • Metrics Graph 탭에서는 Model 용량, 연산량의 변화, 성능의 변화 정보를 그래프로 확인합니다.

Metrics Graph 설명
이름
설명

macs

모델 연산량 (Multiply–accumulate operation)

flops

모델 연산량 (floating point operations)

size

모델 용량 (단위: Mb)

params

모델 파라미터 수

runtime

평가 소요 시간

accuracy

평가 데이터에 대한 accuracy

f1_macro

평가 데이터에 대한 macro f1 score

samples_per_second

평가 데이터 수/평가 소요 시간


마무리

  • fine-tuned 모델을 적응적 추론 방법으로 모델 경량화를 해보았습니다.

아티클이 유용했나요?

훌륭합니다!

피드백을 제공해 주셔서 감사합니다.

도움이 되지 못해 죄송합니다!

피드백을 제공해 주셔서 감사합니다.

아티클을 개선할 수 있는 방법을 알려주세요!

최소 하나의 이유를 선택하세요
CAPTCHA 확인이 필요합니다.

피드백 전송

소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.

02-558-8300