2019 기상청 빅데이터 콘테스트 후기

업데이트:

지금까지 진행해온 프로젝트를 정리하면 좋을 것 같아 처음 진행했던 프로젝트부터 정리해보고자 한다.

처음으로 진행했던 프로젝트는 기상청 빅데이터 콘테스트이다.

멀티캠퍼스 ‘빅데이터 활용 AI 설계 과정’을 수강하는 친구들과 4인 팀을 만들어 참가하였다.

첫 데이터 분석 프로젝트였고 교육을 듣고 있던 중이라 수상은 못했지만 실전 경험을 쌓을 수 있는 좋은 기회였다.

대회 내용

image

분석 주제

우리팀은 유통분야에 참가하였고 날씨와 GS25, 랄라블라의 판매량 데이터를 제공받았다.

날씨와 GS25, 랄라블라의 데이터는 필수 사용이었고 ‘날씨에 따른 판매량 예측’을 주제로 잡고 분석을 시작하였다.

전처리

처음 데이터를 받고 가장 놀란 것은 결측값과 outlier가 너무 많다는 것이었다.

처음 제공받은 날씨 데이터의 경우 특정 도시의 날씨 데이터가 아예 없었다. 해결 방안으로 생각한 것은 가장 근접한 2곳의 평균을 내서 계산하는 것이었다. 문제는 근접한 곳의 데이터도 없는 경우가 있어 해당 방법은 포기하고, 서울시 평균 날씨 데이터를 찾아내어 해당 데이터를 이용하였다.

유통 데이터의 경우 판매량이 없는 경우가 많았다. 예를 들어 우산의 경우 비오는 날 아니면 대부분 판매량이 0이었다. 또한 판매량이 존재한다 하더라도 outlier가 제법 섞여있었다. 해결 방안으로 outlier는 최대값으로 치환하여 전처리하였다.

데이터 분석

데이터 전처리를 하고 상관관계를 살펴보았다. 날씨와 유통 데이터간 상관관계가 있는 아이템은 상식선에서 맥주, 아이스크림, 선크림, 우산 등 생각하는 것과 일치했다.

일단 분석을 해보자 싶어 해당 데이터를 그대로 Linear Regression 해보니 R2 스코어가 마이너스 값이 나오며 충격을 주었다. 날씨 데이터는 시계열 데이터라 단순한 Linear Model에서 분석이 힘들다는 것을 배웠다.

그때까지 배운 지식으로는 분석이 불가능하다는 것을 깨닫고 RISS에서 날씨 데이터 분석과 관련한 논문을 찾아 전부 읽었다. 대부분 ARIMA를 사용해 분석한다는 것을 배웠고 적용해보기로 하였다. ARIMA를 통한 시계열 분석을 처음하는 터라 코드를 보며 열심히 따라해봤지만 결과는 만족스럽지 못했다.

그러던 중 Facebook에서 만든 Prophet 모델을 발견하여 적용해보았다. 모델을 불러와서 데이터만 넣어주면 되는 간단한 모델이었는데 정확도가 굉장히 높았다. 공모전 마감일도 다가오고 더 좋은 방법을 찾지 못한 채 해당 모델을 적용하여 공모전을 마무리했다.

후기

처음 진행했던 프로젝트로 당시 딥러닝을 배웠다면 RNN, LSTM 등의 모델을 적용해 볼 수 있었을텐데 하는 아쉬움이 남는다. 기상청 빅데이터 콘테스트에 참가하며 배운점은 실제 데이터는 전처리부터 굉장히 어렵다는 것이다. 실제로 데이터 분석보다 전처리에 시간이 훨씬 많이 들었다. 결과는 아쉬웠지만 실전 경험을 쌓을 수 있는 좋은 기회였다고 생각한다.

카테고리:

업데이트:

댓글남기기