brunch

You can make anything
by writing

C.S.Lewis

by 박경아 Nov 27. 2020

캐글 참여기 - (3) 결론 도출

답안을 제출한 후에 알게 되었지만 캐글에는 다른 사람들이 자신의 답안을 설명하는 노트북들이 많이 올라와 있었다. 특히 타이타닉 같은 경우에는 약 3년이 지난 오래된 프로젝트이기 때문에 자신의 분석이나 팁을 적은 노트북이 많이 올라와 있었다. 


그 가운데서 데이터 사이언스 접근방법(Approach)에서부터 분석 내용이 모두 공개된 노트북 내용을 하나 더 소개하고자 한다. 아는 것이라고는 아직 안드레이의 프레임워크와 분석 내용 밖에 모르는 나에게는 좋은 비교가 되었다. 

https://www.kaggle.com/ldfreeman3/a-data-science-framework-to-achieve-99-accuracy


먼저 큰 줄기에서 데이터 탐구 및 피처드 엔지니어링 그리고 머신러닝으로 이어지는 과정은 같지만 안드레이 같은 경우는 각각의 항목을 살펴보면서 데이터 클린징, 분석, 시각화를 차례로 해 나갔다면 두 번째 노트북의 경우  모든 데이터 클린징을 한 꺼번에 끝내고 시각화를 통해 데이터들의 상관관계를 분석하면서 머신러닝을 적용할 피처 항목을 선택했다. 어디로 가든 본인이 목표를 위해 데이터를 요리저리 탐구하고 분석하면 되는 것이다. 


또한, 여러가지 알고리즘을 적용해 최적의 파라미터들로 보팅하는 것이 아니라 개별 알고리즘의 최적의 파라미터들로 제출도 해보고, 인공지능이 아닌 수동으로 만든 로직으로 단순히 계산해서 비교한 부분이 흥미로웠다. 저자에 따르면 방대하지 않은 단순한 데이터 셋트의 경우 알고리즘의 결과는 항상 사람이 만든(Manmade) 로직의 결과보다 나을 것을 기준으로 삼아야 한다는 것이다. 


사람이 만든 알고리즘이란 간단한 의사결정 나무와 사칙연산으로 만들었는데 기본적인 질문들을 통해 최종적으로 속하는 노드(서브그룹)로 분류하고, 데이터 분석에서 생존확률이 50%보다 높은 서브그룹은 모두 생존(1)으로, 50%보다 낮은 그룹은 모두 사망(0)으로 처리하는 것이다. 이렇게 처리(판단)했을 때 실제 생존 데이터와 비교해 맞는 경우만 정확한 예측으로 정확도를 계산하면 약 82%가 나온다.


몇 가지 질문으로 탑승자의 생존여부를 예측할 수 있다. (예측 정확도 82%)


결론적으로 실제 제출했을 때 가장 예측도가 높은 것은 수동으로 만든 알고리즘과 의사결정 나무 알고리즘을 최적의 파라미터로 튜닝해 개별 예측했을 때였다.(정확도 0.77990) 순위 대시보드에는 정확도 100%를 찍은 사람들도 있던데 어떻게 100%에 도달할 수 있었을까? 어차피 이미 만들어진 알고리즘을 적용하는 부분이 같다면 피처 항목이 다르거나 알고리즘을 튜닝하는 부분이 다를 것이다. 아니면 마지막 마무리는 수동으로 하나하나 뜯어본 것인가??


데이터 사이언티스트는 말 그대로 ‘데이터 과학자’라는 생각이 들었다. 더 정확한 결론을 내기 위해 계속해서 실험하고 가설을 수정하고 결과를 개선해 나가야 하니 말이다. 캐글을 한 번 참여해 본 지금은 알고리즘? 하면 들었던 어려운 느낌이나 거부감이 없어졌다. 결국 중요한 것은 문제의 본질을 이해하고 제대로 문제해결을 하는 것이다. 말은 쉽지만 항상 그게 어려운 것 같다. 마케팅 데이터 사이언티스트라면 마케팅과 해당 비즈니스에 대한 이해, 그리고 데이터 사이언스 방법론을 모두 잘 아는 것이 필요할 것이다. 


파이썬 기초와 라이브러리 좀 알고 있는 내가 캐글에 도전하기는 어려웠다. 알고리즘까지 공부하지 못했지만 그래도 데이터 사이언스의 프로세스를 익히고 일반적으로 이용하는 머신러닝 알고리즘을 활용해 전체 분석 사이클을 한 번 경험해 볼 수 있어서 좋았다. 무엇보다 데이터 사이언스를 나와 동떨어진 어려운 것으로 생각하지 않고 데이터 사이언스에 대해 보다 자신감을 가지게 된 것이 가장 좋은 점이라 생각한다. 파이썬 시각화 라이브러리인 씨본과 머신러닝 알고리즘 기초에 대한 공부를 좀 더해서 마케팅 프로젝트를 분석해 보는 것을 다음 목표로 삼았다. 

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari