본문 바로가기

사생활 들여다보기/뇌 속 풍경

경영학 전공자의 빅데이터 활용기 - Kaggle로 EPL 승부 예측

"데이터 처리 공부 좀 해보려면 어떻게 해야 돼?"

"캐글 함 들어가봐"

 

이런 간단한 이유로 캐글에 접속하게 되었다.

무슨 콘테스트가 계속 열린다고만 알고 있었던 캐글이었는데,

생각보다 더 다양한 콘텐츠들이 있었다.


1. 타이타닉 생존자 계산 입문

캐글에 접속한 사람이라면 꼭 해봐야 하는 튜토리얼이다.

1912년 4월 15일 침몰한 타이타닉은

100년이 더 지났음에도 불구하고

승객정보를 꽤나 자세하게 보유하고 있었고

또 지금까지 보관 중이었다.

 

덕분에 당시의 비극은 현재의 공부수단이 되어

사람들이 탑승자 정보를 바탕으로 생존확률을 계산하게 되었다.

생각해보면 끔찍하기도 한 이야기이다.

당시의 생존자는 벌써 자연사했겠지만,

희생자의 직계비속 정도는 살아있을테고 꽤나 가슴아픈 추억일텐데...

 

그래도 당시 탑승객의 정보로 희생자 비율을 계산하다 보면 시간가는 줄을 모른다.

800명 정도의 훈련용 데이터와 200명 정도의 테스트용 데이터가 있는데

훈련용 데이터로 어떤 사람들이 생존하는지 학습한 뒤에

테스트용 데이터에서 몇 명이나 생존했는지 맞추면 된다.

희생자(남, 3등석, 20대)와 생존자(여, 1등석, 20대)

"너무 어렵잖아" 싶지만

꽤 간단한 분류만으로도 충분히 높은 적중률을 보인다.

대표적인 예시는 성별이다.

훈련용 데이터에서 여성의 74%가 생존했고

남성은 18%밖에 생존하지 못했다.

테스트용 데이터에서 "여자는 다 살았고 남자는 다 죽었다"라는 식으로 분류해도

76%라는 굉장히 높은 적중률은 갖게 된다.

 

적중률은 Leaderboard라고 해서 순위가 매겨지는데

문제는 100% 맞춘 사람들이 대거 포진해있다는 것이다.

데이터셋이 나온지 한참된 데다가, 

생각보다 다양한 정보(예를 들면 이름)를 가지고 있다보니

테스트용 데이터의 생존 여부를 다른 데이터를 통해 알게되었고

적절한 분류기법이 아니라 단순 컨닝수준으로 적중률을 높인 까닭이다.

 

적중률 상위 15% 정도에 들면 메달 같은 것들을 지급 받을 수 있는데

컨닝하지 않더라도 그 정도는 받을 수 있다고 하기 도전해보면 좋을 듯 하다.


2. 숫자 필기 인식하기 입문

튜토리얼 삼기 좋은 두 번째 데이터셋은

딥러닝 CNN 튜토리얼로 유명한 MNIST 이다.

 

옛날에 손으로 적은 우편번호를 자동으로 인식하기 위해 만들어진

데이터셋인데, 원체 간단하게 인식을 할 수 있음에도 불구하고

처음 접하게 되어 실제로 분류기를 만들고 나면 신기하기 그지 없다.

사실 사설 주차장만 가더라도 번호판 인식을 해주는 기기들이

굉장히 오래 전부터 있었는데도 신기해하지 않았는데도...

 

구글 텐서플로 튜토리얼만 잘 따라해도

한 16블럭 정도로 적중률 98.5%를 달성할 수 있다.

무려 20000장의 테스트용 데이터에 대해 그 정도 적중률이면

사람보다 낫다.

 

하지만 분류가 워낙 쉽다보니 

컨닝을 하지 않고 순전히 코딩으로만

100%의 적중률을 달성한 사람이 너무 많아서

98.5%로는 상위 50%도 간당간당하다.


이외에도 LSTM(이제는 지나가버린 기법이지만)을 익힐 수 있는 데이터셋도 있고,

여튼 생각하는 데이터 처리 기법은 거의 다 있다.

요즘 가장 흥미있게 관찰하고 있는 분야는 역시

데이터를 활용한 주가 예측

데이터를 활용한 EPL 승부 예측분야이다. 

 

물론 데이터가 많다고 다 되는 것은 아니지만,

마구잡이로 본인 직관을 따르는 것보다는 확률을 높일 수 있다.

하지만 마구잡이로 데이터를 따르는 것도 충분히 좋지 않다는 것을 명심하자.