신입 데이터 분석가를 꿈꾸는 분들에게

고민의 흔적을 보여주세요

이 글을 쓰게 된 계기

저는 2016년 12월부터 현재까지 7년 정도 데이터 분석가로 일을 하고 있습니다. 최근에 채용을 위해 이력서를 많이 보고 있고, 인터뷰를 진행하면서 안타까운 마음이 들어서 몇 글자 적어봅니다.

앞으로 할 이야기들은 저는 제대로 못했던 것임을 우선 고백하고 시작하겠습니다.

이력서와 포트폴리오

이제 막 대학교를 졸업하거나, 부트캠프를 마친 경우에는 이력서에 딱히 적을 게 없을 것입니다. 저도 마찬가지였고요. 그렇기 때문에 개인적으로 진행했던 프로젝트들을 정리해서 노션, GitHub, 개인 블로그 등 다양한 방법으로 공유해주셨습니다. (아, 그리고 결과물을 공유해주실 때는 꼭! 권한 설정을 여러 번 직접 확인해보고, 다른 사람들에게도 확인해보시길 권장 드립니다. 특히, 구글 드라이브나 노션을 공유해주시는 경우에요)

그런 결과물들을 보면서 느꼈던 안타까웠던 부분 중 하나는 여러분들의 고민의 흔적이 잘 안 보이는 경우가 많았다는 것입니다.

EDA 를 했는데요

Exploratory Data Analysis, 즉 탐색적 데이터 분석은 ‘분석’ 과정이어야 합니다. 단순히 각 컬럼들의 분포가 어떤 모습인지 그림을 그리고나서 ‘아 EDA 다했다’ 고 넘어가서는 안 됩니다. 여기서 고민을 해야할 부분은, 결측치가 얼마나 있는지, 결측치가 있는 데이터는 버릴지, 아니면 다른 값으로 채워 넣어야 하는지, 채워 넣는다면 평균으로 채울지, 별도의 예측 모델을 또 만들어서 채울지 등을 고민해 봐야합니다.

뿐만 아니라 각 컬럼들의 분포를 살펴보고 이후 모델링 과정에서 변환이 필요할지, 변환을 한다면 어떤 변환을 하는 게 좋을지, 하지 않는다면 어떤 모델을 사용하는게 좋을지 등을 고민할 필요가 있다고 생각합니다.

모델링을 했는데요

앞에서 EDA 를 진행하면서 했던 고민들을 가지고 모델링을 하려고 합니다. 독립변수와 종속변수의 특성을 파악했고, 각 특성에 맞게끔 변환도 했거나, 하게 될 것입니다. 모델의 특성을 고려하여 적절한 변환이 무엇인지 고민을 할 차례입니다. Python 의 scikit-learn 에서는 꽤나 다양한 전처리 함수를 제공해주는데, MinMaxScaler 와 StandardScaler 는 어떻게 다른지, 내가 가진 데이터셋에는 어떤 변환 방법을 취하는 게 가장 적절한지 고민을 하시면 좋을 것 같습니다.

전처리에 대한 고민 이후 적절한 방법을 선택하여 전처리까지 마쳤습니다. 이제 이진 분류를 하는 예측 모델을 로지스틱 회귀 모형을 이용해서 만들었다고 합시다. 이것은 개인적인 취향일 수도 있지만, 제가 같이 일하고 싶은 동료는 단순히 성능 좋은 모델을 만드는 사람보다는 본인의 결과물에 대해서 설명을 할 수 있는 사람입니다. AutoML 을 사용했더니 그게 제일 성능이 좋아서 썼다거나, 캐글에 보니까 다들 XGBoost 를 쓰길래 썼다거나, 참고한 논문에서 RandomForest 를 사용해서 그대로 썼다는 이야기가 적혀있으면 ‘깊게 고민을 하지 않았구나, 모델이 어떤 특징을 가지고 있는지는 알고 있을까?’ 라는 생각부터 하게 됩니다. 즉, 본인이 사용한 모델이 어떤 특징을 가졌는지 꼭 공부하세요.

마치며

이력이 없는 신입분들의 경우 면접관(?)은 기본적인 지식에 대해서 질문을 할 수 밖에 없습니다. 그러니 최고의 성능을 가진 모델, State-of-the-Art 에 집착하실 필요 없이 기본에 집중하시는 걸 저는 권장 드립니다. 다양한 모델들이 있는데, 각 모델의 특징은 뭐가 있고, 비슷한 모델과는 어떤 점에서 차이가 나고, 이 모델을 쓰기에 적절한 경우가 무엇인지 등을 공부하는 게 Accuracy 0.2 높이는 것보다 중요하다고 생각합니다.

제 개인적인 경험이기 때문에 다른 분들은 어떤 생각을 가지고 계실지도 많이 궁금합니다. 아래 댓글에 공유해주시면 감사하겠습니다.

그럼 멀지 않은 미래에 같이 일할 동료가 될 수도 있는 모든 분들께 잘 부탁드린다는 말씀을 드리며 마치겠습니다.

2023

영어랑 친해지는 방법

7 minute read

가장 좋은 방법은 당연히 영어 밖에 사용하지 못하는 환경에 강제로 처해지는 것이겠지만 그것이 어려우니…

Back to top ↑

2022

Back to top ↑

2020

사내 스터디에 대한 회고

2 minute read

회사 서비스의 추천 시스템을 개선하기 위해 팀 내에서 (아직까진 두 명이긴 하지만) 지난 두 달 동안 스터디를 진행했습니다. 얼마 전 두 번째 스터디가 끝났고 이에 대한 회고를 해보려고 합니다.

Back to top ↑

2019

GitHub Pages Jekyll Blog 에 MathJax 추가하기

3 minute read

이 글은 MathJax 를 GitHub Pages Jekyll blog 에 추가하는 방법을 다룬다. 이탤릭체로 된 부분은 본문에는 없고 제가 따라하면서 고치거나 추가한 부분이니 참고하세요.

GitHub 블로그에 Jupyter notebook 올리는 방법

4 minute read

여러분의 GitHub 블로그에 Jupyter notebook 을 바꿔서 올릴 수 있도록 도와줄 글입니다. 직접 바꾸는 방법은 1회성 글들을 위해서 추가했고, 변환 과정과 파일 이동, 그리고 여러분의 블로그에 올리는 것까지 한 번에 할 수 있는 자동화 bash 를 만드는 자세한 방법...

Back to top ↑