AI_리팩토링_MobileNetV3‐Small_선정_이유와_테스트 - boostcampwm-2024/and04-Nature-Album GitHub Wiki
1. 개요
기존 Nature Album 프로젝트에서는 EfficientDet-Lite0 객체 탐지 모델을 사용해 이미지 기반 생물 자동 분류 기능을 구현하고자 했다. 그러나 실제 사용성과 정확도 측면에서 여러 한계가 발견되었고, 이에 따라 모델 교체가 불가피하다는 판단을 내렸다. 이 문서는 새롭게 선정된 MobileNetV3-Small 모델이 기존 대비 어떤 점에서 적합한지 정리한 개선 방향 문서이다.
2. 기존 모델: EfficientDet-Lite0
EfficientDet-Lite0은 Google에서 제공하는 TFLite 기반 객체 탐지(Object Detection) 모델이다. 입력 크기는 320x320이며, 약 4MB 용량의 양자화 모델로 제공된다. 모바일 환경에서도 실행 가능한 장점이 있었지만, 다음과 같은 문제점이 발견되었다.
주요 한계점
- 객체 탐지 모델 구조: 우리 프로젝트는 이미지 분류만 요구하므로 객체 탐지는 불필요한 연산
- COCO 데이터셋 기반: 생물 관련 라벨이 10개 수준으로 매우 제한적 (곤충, 해양 생물 등 부재)
- 기존 설정해둔 높은 신뢰도 임계값 (0.9): 탐지 자체가 누락되는 경우 다수 발생. 임계값을 줄이면 정확도가 낮아짐.
3. 새롭게 도입한 모델: MobileNetV3-Small
MobileNetV3-Small은 Google이 모바일 기기를 위해 개발한 경량 이미지 분류(Classification) 모델이다. 입력 크기는 224x224이며, 실제 사용된 TFLite 모델 기준 용량은 약 9.8MB이다. TensorFlow 및 PyTorch에서 제공하는 사전 학습 모델은 ImageNet 데이터셋(1,000개 클래스) 기반으로 학습되었다.
이 중 생물에 해당하는 라벨 398개만 추출하여 한국어로 번역된 JSON 파일로 별도 구성했다. 예측된 라벨이 이 JSON에 포함되지 않을 경우 "알 수 없음"으로 분류되도록 설계했다.
적용 후 주요 개선 사항
- 구조 단순화: 이미지 분류만 수행
- 라벨 품질 향상: 곤충, 포유류, 어류, 조류 등 다양한 생물 라벨 보유 (약 398개)
- 추론 속도 개선: 구조 단순화 및 경량화로 모바일에서 빠른 실행
- 도메인 적합성 향상: 생물 중심 라벨 구성으로 도감 컨셉과 일치
4. 비교: EfficientDet-Lite0 vs. MobileNetV3-Small
항목 | EfficientDet-Lite0 | MobileNetV3-Small |
---|---|---|
모델 유형 | 객체 탐지 | 이미지 분류 |
입력 크기 | 320x320 | 224x224 |
모델 크기 | 약 4MB | 약 9.8MB |
학습 데이터 | COCO (80개 클래스) | ImageNet (1,000개 클래스 중 생물 398개 사용) |
생물 라벨 수 | 제한적 (10개 수준) | 풍부 (398개, 한글 번역 JSON 기반) |
출력 방식 | 바운딩 박스 + 라벨 | 단일 라벨 |
모바일 최적화 | 양자화 적용 | 고속 추론, 경량화 구조 |
프로젝트 적합성 | ❌ 부적합 | ✅ 매우 적합 |
5. 결론
EfficientDet-Lite0은 객체 탐지 기반의 범용 모델이었으나, Nature Album처럼 생물 분류에 특화된 도감 앱에서는 여러 제약이 있었다. 반면, MobileNetV3-Small은 라벨 다양성, 분류 구조 적합성 측면에서 모두 우수하며, 실제 테스트 결과도 기대 이상으로 나타났다.