본문 바로가기

Kaggle

캐글(Kaggle) 문제 해결 흐름

캐글 컨피티션을 해결 하는 순서를 한번 정리해 보았다. (타이타닉 기준) 

- 문제파악

어떠한 데이터를 가지고 어떤 결과(평가)를 내야 하는지 확인 해야 하며 이는 Overview 에 자세히 설명 되어 있다. 

 

The Challenge
The sinking of the Titanic is one of the most infamous shipwrecks in history.
On April 15, 1912, during her maiden voyage, the widely considered “unsinkable” RMS Titanic sank after colliding with an iceberg. Unfortunately, there weren’t enough lifeboats for everyone onboard, resulting in the death of 1502 out of 2224 passengers and crew.
While there was some element of luck involved in surviving, it seems some groups of people were more likely to survive than others.
In this challenge, we ask you to build a predictive model that answers the question: “what sorts of people were more likely to survive?” using passenger data (ie name, age, gender, socio-economic class, etc).

타이타닉의 경우는 2224명중 1502명이 사망하였다 살아남는 데는 약간의 운이 작용하였지만 일부 그룹의 사람들이 생존

가능성이 더 높았다고 보고 어떤 그룹의 사람들이 생존할 가능성이 더 높았을까 라는 예측 모델을 구하는 문제이다. 

 

 

- 데이터 확인 

캐글에서 주어지는 데이터를 확인한다. 

캐글이 아닌 다른 문제라면 데이터를 어떠한 방식으로 수집 할지를  고민해야 하며 수집 방법에는 웹 크롤링, 공공데이터활용,  배치, 데이터베이스에서 가져오기 등등 문제에 따라 다양한 방법이 있을 수 있다. 

 

타이타닉 문제의 경우 데이터 탭에서 데이터에 대하여 확인 할 수 있다. 

  • train.csv : 훈련을 위해 주어진 데이터로 이 파일을 읽어 학습 시킬 수 있으며 생존 여부가 데이터에 포함 되어 있다. 
  • test.csv : train.csv로 훈련한 모델에 test.cvs를 집어 넣어 생존 여부를 예측하여야 한다.(생존여부 값은 없다.) 

 

- 데이터 처리 

읽어 들인 데이터를 학습에 알맞은 형태로 가공하고 잘못된 데이터나 없는 데이터에 대해 학습 전에 미리 처리를 하여 준다.  (Nan 처리, 성별 같은 문자 상태 값을 0,1 로 바꾸어 주기, 이상값 처리 등의 작업이 있다. ) 

 

- 학습, 예측

타이타닉의 Data 탭에서 받은 train 데이터로 모델을 학습시키고 test 데이터로 예측 한다. (학습에 다양한 방법을 사용 하여 예측율을 끌어 올릴 수 있다. )

 

- 제출(submit)

위에서 나온 예측 값을 제출(submit) 한다. 

Leaderboard에서 내 순위와 정확도를 확인 할 수 있다.