인공지능을 공부하다가 우연히 접한 영상이 있었다. Amazon에서 출시한 무인점포인 ‘Amazon GO’였다. 다른 사람들은 어떻게 생각했을지 모르지만, 나한테는 그 영상이 굉장히 인상적이었다. 마치 미래에 온 것 같은 느낌이 들었고, 이 분야를 공부해야겠다는 굳은 의지를 야기시킨 영상이었다. 하지만 관련 프로젝트를 하려고 하면 ‘아직 기초지식이 부족하니까’라는 변명을 하면서 시작조차 하지 못 했다. 항상 ‘처음부터 기술을 갖다 쓰는 것 보다, 바닥부터 차근차근 올라간 후에 하자’라는 생각이 있어서 선불리 시작을 못 했었다. 하지만 그건 어리석은 생각이었고, 마치 수학의 정석 ‘집합’ 단원만 계속 본 고등학생처럼 되어버렸다.


근데 아마도 못 할 것 같다는 두려움 때문에 시작조차 안 한 것 같다. 그래서 이번에는 죽이 되든 치즈게살죽이 되든 간에 끝까지 해보려고 한다. 졸업도 했고, 백수고, 군복무 문제도 없고, 심지어 AIFFEL에서 클라우드 서비스도 지원해주니 무조건 직진이다!


프로젝트 주제 : 소비자 행동패턴 데이터 생성


무인점포를 운영할 때 필요한 기술과 딥러닝을 활용할 수 있는 방법에 대해 고민하다가, 우연히 이런 기술을 연구하는 국내 기업을 몇 개 찾아냈다. 그 중에서 인상적이었던 것이 소비자의 행동패턴 데이터를 생성하는 기술이었다. 그래서 나도 이 기술을 한 번 흉내내볼까 한다.


적용할 수 있는 기술

굉장히 다양한 정보들이 있지만, 모두 한 번에 적용할 생각을 하는 건 바보같은 짓이기에 내 생각에 간단히 구현할 수 있을 것 같은 것들부터 구현하고자 한다.

  • 상점을 출입한 고객 수
  • 각 고객별 체류시간
  • 각 고객별 성별, 나이 등
  • 상점 내 특정 위치에 머문 시간
  • 머물 때 고객이 바라본 방향
  • 이상징후 감지(절도, 파손 등)
  • 웹서비스(동영상 업로드 시 데이터 추출)

몇 가지 생각했지만, 이 중 하나라도 한다면 성공이라는 생각으로 하나하나 깊게 고민해볼 생각이다. 어렵다고 생각말기~


프로젝트 환경

현재 내가 사용할 수 있는 환경이다.

  • 프로그래밍 언어
    • Python
    • HTML, CSS, JS
  • 딥러닝 프레임워크
    • Pytorch
    • MMCV
    • OpenCV
  • 웹 프레임워크
    • Flask
  • Editor
    • Jupyer notebook
    • VSCode
  • 리소스
    • CPU : AMD Ryzen 7 3700X 8-Core Processor
    • GPU : RTX2070 Super
    • Cloud : V100


사전조사


데이터 탐색

  • 추가학습용 데이터
  • 예시 데이터(대표 데이터)


성능 검증

가장 어려운 부분이다. Tracking 모델을 사용할텐데, Tracking 자체의 성능을 평가하는 건 어렵지 않다. 이미 MMCV 라이브러리에서도 제공하고 있기 때문이다. 하지만 각 기능을 추가한 모델의 성능을 평가하는 건 어렵다. 특정 기능을 평가하기 위한 데이터셋이 존재하지 않기 때문이다. 따라서 각 기능이 추가되면 기능을 검증할 수 있는 Test 데이터셋을 수기로 만들 생각이다. 기본 데이터셋은 Object Tracking에서 사용하는 데이터셋을 이용하고, 그 안에서 100개의 TEST데이터셋을 만들어 성능평가를 진행한다.

  • 기능 추가 시 각 기능별로 100개의 test 데이터 생성
  • Tracking 모델의 성능 검증은 기존 데이터로 진행