1 minute read

1. 프로젝트 개요

  • 내가 수강했던 국비교육 과정중 솔트룩스에서 진행했던
    ‘최신인공지능 기반의 SW전문가 양성과정’
    이라는 과정이 있었는데, 이때 마무리를 겸한 팀 프로젝트로
    ‘챗봇을 활용한 랜드마크 위치 서비스’
    를 제작했었다.
  • 해당 프로젝트를 간략히 설명하자면 이런 느낌이다.
    1. 사용자가 랜드마크 이미지를 업로드한다
    2. 랜드마크 이미지를 학습한 모델이 해당 랜드마크가 어느 랜드마크인지 예측한다.
    3. 해당 랜드마크의 위치정보를 알려준다.
    4. 사용자의 추가 요청시, 인근의 관광지/식당 등의 정보를 추가적으로 제공한다.
  • 자세한 정보는 교육 당시 발표자료 를 통해 확인 가능하다.

2. 프로젝트 리메이크 사유

2.1 프로젝트의 재 시연이 불가능함

  • 프론트엔드 부분을 솔트룩스에서 제공했던 챗봇 api를 통해 구성했기 때문에, 해당 교육이 종료된 현재 시점에서는 시연이 불가능함.
  • 추가로, 백엔드 구성이 flask로 되어있어 내가 해당 프로젝트를 유지보수 할수 없다는것이 아니꼬운것도 한몫 했음.
    • 내 프로젝트인데 내가 뭔 코드인지 못알아본다?
      자존심 상하는 일이 아니겠는가.

2.2 프로젝트 자체 완성도 문제

  • AI-HUB에서 받아왔던 랜드마크 이미지에는 해당 이미지에서 랜드마크가 어느 부분을 차지하고 있는지 xy좌표가 기록된 json파일이 동봉되어 있었다.
  • 이 좌표를 활용하여 이미지를 crop한 후 학습하면 훨씬 더 좋은 결과물이 나왔겠지만, 모델 제작을 담당하던 팀원이 해당 사실을 인지하지 못한 채 프로젝트가 완성되었다.
  • 그 외에도, 이때 당시 EfficientNet을 활용하려 했으나 막히는 부분이 있어 결국 단순 CNN으로 이미지 인식 모델을 구성했었는데,
    내 능력이 닿는다면 한번 원래의 목표였던 EfficientNet을 전이학습시킨 모델을 도출하고, 결과를 비교해보고 싶은 마음이 있다.

2.3 역할 분담의 문제.

  • 이력서에 이미지 인식 프로젝트라고 적어놓고 실제 한 일이라고는 데이터 수집밖에 없는것처럼 역할을 적어놓자니, 굉장히 자존심에 스크래치가 나서 포트폴리오 작업을 진행할 수가 없었다.
  • 나도 데이터 모델 학습시키고 그런거 할줄 안다는걸 보여주고 싶었다.

3. 프로젝트 개선 방안.

3-1. 프론트엔드 및 백엔드 재구성

  • 프론트엔드의 경우, 기존의 챗봇api 부분을 들어내고, 웹 기반 서비스로 다시 만드는것을 목표로 한다.
  • 백엔드의 경우, flask 에서 Django로 바꾸기로 했다.
    • 내가 유지보수 할 수 있는 프로젝트로 다시 만드는게 목적.

3-2. 이미지 인식 모델 개선

  • 이미지 crop 하여 학습 진행.
  • 가능하다면 PaperWithCodes에서의 상위 랭크된 모델을 전이학습 시키는 방법을 시도.