본문 바로가기

Artificial Intelligence/Tensorflow

[Tensorflow] 김치 이미지 분류기 전체 과정

728x90

keras를 사용하여 김치 10종의 이미지를 분류하는 Sequential 모델을 만들어보겠습니다. 

 

개발 과정은 다음과 같습니다.

  • 학습에 필요한 데이터를 수집하고 가공합니다.
  • 가공된 학습 데이터를 이용해 적절한 인공지능 모델을 학습합니다.
  • 웹/앱에서 사용할 수 있도록 학습된 모델을 배포합니다.

위의 과정을 4가지 단계로 표현하면 데이터 수집 → 데이터 가공 → 모델 학습 → 모델 배포가 됩니다. 모델 학습에 있어 

  • 데이터 수집: AI HUB의 한국 음식 이미지 AI 데이터를 사용하였습니다. 해당 이미지를 사용하기 위해서는 데이터 사용 신청을 해야 합니다.
  • 데이터 가공: 한국 음식 데이터에서 김치만 따로 가져오고 1개의 폴더에 정리되어 있는 이미지를 학습:검증=7:3의 비율로 나눠주었습니다.
  • 모델 학습: 가공된 학습, 검증 데이터를 가져와서 Sequential 모델을 만들었습니다.
  • 모델 배포: 학습된 모델을 저장하여 Flask를 통해 배포하였습니다.

다음은 저장된 이미지를 가져와 예측한 클래스의 이름과 이미지를 출력한 것입니다.

배추김치 예측 결과 이미지

김치의 특성상 빨간색이 많이 들어가서 배추김치를 무생채로 인식하기도 합니다. 어떻게 해야 더 정확하게 예측할 수 있는지에 대해서 고민을 해봐야겠다.

728x90