피드로 돌아가기
Building a 3-Class Lung Cancer Image Classifier with TensorFlow and Flask
Dev.toDev.to
AI/ML

Custom CNN 기반 3종 폐암 이미지 분류 및 Flask API 서빙 구현

Building a 3-Class Lung Cancer Image Classifier with TensorFlow and Flask

HydraBytes2026년 4월 14일7beginner

Context

의료 영상 분석 시 병리 전문의의 피로도와 업무 부하로 인한 오판 가능성 존재. 일반적인 ImageNet 기반 Pre-trained 모델은 의료 영상 특유의 도메인 데이터 통계값과 차이가 커 적용에 한계가 있음.

Technical Solution

  • ImageNet 특성과의 불일치 해결을 위한 Custom CNN 아키텍처 설계
  • 데이터 부족 문제 해결을 위해 Random Flip, Rotation, Zoom 기반의 Data Augmentation 적용
  • 모델 과적합(Overfitting) 방지 및 일반화 성능 확보를 위한 Dropout 0.5 레이어 배치
  • 클래스별 데이터 불균형 및 편향 방지를 위한 Split 전 데이터 Shuffling 프로세스 강제
  • 실시간 추론 서비스 제공을 위한 Flask 기반 REST API 및 H5 가중치 로드 구조 설계
  • 224x224 입력 해상도 및 Softmax 활성화 함수를 통한 3개 클래스 다중 분류 체계 구축

- 의료 영상 등 특수 도메인 데이터 처리 시 Pre-trained 모델의 Feature Map 적합성 검토 - 데이터 분할(Split) 전 무작위 셔플링을 통한 학습/검증 셋의 분포 일치 여부 확인 - 작은 데이터셋 기반 CNN 설계 시 Dropout 등 정규화 기법의 조기 적용 검토 - 추론 속도 최적화를 위해 학습 단계와 서빙 단계의 모델 로드 로직 분리

원문 읽기