서버에선 잘 됐는데 엣지에선 왜 정확도가 떨어지나
모델을 서버에서 검증할 때는 잘 나오던 정확도가, 엣지 보드에 올리는 순간 떨어지는 경우가 흔하다. 원인은 대개 모델이 아니라 양자화(quantization)다.
왜 양자화가 필요한가
| 형식 | 특징 |
|---|---|
| FP32(서버 학습 기본) | 정밀도 높음, 연산·메모리 부담 큼 |
| INT8(엣지 배포용) | 연산 4배 빠름, 메모리 1/4, 정밀도 손실 있음 |
엣지 보드는 서버급 GPU 메모리·전력이 없어 FP32 모델을 그대로 올리면 프레임레이트가 실용 수준 이하로 떨어진다. INT8로 양자화하면 속도는 확보되지만, 원본 대비 정확도가 일부 낮아지는 대가를 치른다.
정확도 손실을 줄이는 방법
- 양자화 인식 학습(QAT)으로 처음부터 양자화 오차를 반영해 학습
- 클래스별 정확도를 따로 확인 — 전체 평균은 괜찮아도 특정 결함 유형만 크게 떨어지는 경우가 있음
- 속도·정확도 트레이드오프를 애초에 검사 기준(2번 글의 임계값 설정)과 함께 정할 것
요약
엣지 배포에서 정확도가 떨어졌다면 모델 자체보다 양자화 단계부터 의심하는 게 순서다. 속도를 얻는 대신 어디서 정밀도를 내주고 있는지 클래스 단위로 확인해야 한다.