데이터 공부를 어떻게 시작해야 하나요?

2017년 1월 4일

by yangpa
데이터를 공부하고 싶어요, 그런데 어디서 시작해야 할지 모르겠어요


란 질문을 받아서 씁니다. 저도 이걸 몇 년 전에 고민한 적이 있는데, 문제는 인터넷을 뒤져보면 "이 코스를 들으세요!" "기계학습 이거 보면 된다!" 이런 조언이 많지만, 뭘 봐도 좀 아닌 거 같은 느낌이 들더라고요. 아니 난 그러니까 아주 짧은, 뭘 하는 거다 이런 감이 오는 가이드를 원하는 거지, 두꺼운 책 읽으려면 많은 건 나도 알거등. 음. 그니까 뭘 어떻게 쉽게 더 말하라고 하냐면 힘들지만, 하여튼 어디서 어떻게 시작해야 할지 모르겠다규규규규. 두꺼운 책 리스트 던지지 말라규규규.


그러므로 저와 비슷한 분들을 위해서 간단 안내.

대형 치킨 프랜차이즈 회사에서 일하는 것이 꿈이라고 할 때, 부엌에서 일 안해보고, 닭 안 튀겨 본 사람이 양계장의 역사부터 보는 건 전략적 실패라고 생각합니다. 데이터 안 다뤄 본 사람이 무슨 빅데이터 코스 시작해서 하둡부터 배우는 상황입니다. 데이터와 이미 익숙한 사람들 (이공계/금융/그 외 데이터 분석 전문)과 그렇지 않은 사람들의 간극은 엄청나게 큽니다. 빅데이터 기술 배우기에 적당한 분들은 엑셀 귀신, matlab 귀신인데 코딩 경험이 조금 부족한 분들이고, 안 그런 분들은 엑셀 귀신이 먼저 되는 것이 좋습니다.

한 반의 아이들의 가정환경과 성적이 연관이 있는가, 어떤 연관이 있는가, 비싼 과외를 하면 더 성적이 잘 나오는가에 대해 대답을 하려면 어떻게 설문지를 짜고 어떤 데이터를 모아야 할까요. 어렸을 때 키 큰 아이들이 커서도 크다는 가설을 증명하려면 어떤 데이터가 필요한가요. 연애할 때 잘 하던 남자가 결혼해서도 잘 한다는 가설은요? 이런 상황에서 내가 예측하려는 것과, 그것을 예측하는 데 쓸 자료를 선택하고, 그 데이터를 모을 줄 알고, 어느 정도 정리해서 엑셀에서 그래프 그릴 정도 되면 기본입니다. 엑셀에서 이거 할 줄 아는데 이 데이터가 몇십 기가라면, 그리고 데이터가 정갈하지 않다면 어떻게 해야 하나 한다면 그 때는 코딩 배울 때입니다. 어떤 데이터를 가지고 어떤 질문에 답을 해야 하려고 하는지, 어떤 식으로 분석해야 하는지가 먼저입니다. 어떤 도구를 쓰느냐가 문제가 아니고요. 그래서 도메인 전문가들이 유리합니다. 치킨집을 오래 운영한 분들은 무엇을 재야하는지 대강 감을 잡고 있습니다. 손님 숫자, 바쁜 시간, 닭 튀기는 시간 뭐 등등, 치킨집 한 번도 안 해본 저는 전혀 모르는 그런 수치가 있죠. 그것을 metric이라고 합니다. 그리고 장사가 잘 되는 지표 등등, 제일 중요한 수치를 key metric이라고 합니다. 매출, 전체 손님 수, 원가, 재고량 등등이겠죠. 목적 (==> 매출 인상, 혹은 효율적인 재고 관리) 성취를 위해서 어떤 key metric을 골라야 하는지, 그 metric은 어떻게 잴 것인지, 데이터를 모으기가 쉽지 않다면 대체할 다른 데이터는 있는지 (얼마나 아이스크림을 먹고 싶은가를 날씨로 대체 등등)를 알면 그 다음은 그냥 기술적인 문제입니다. 예를 들어 그 데이터가 엄청 사이즈가 크다면? 복잡하다면? 최대한 스몰 데이터로 만들어서 엑셀로 분석 가능하면 그게 제일 좋은 옵션입니다. 그게 도저히 불가능하고, 지속적으로 모니터링 가능한 시스템이 필요하다면 그 때 가서 빅데이터 시스템 둘러봐도 늦지 않습니다.


- 데이터를 안 다뤄 본 분들에게는 엑셀 추천하고요, 익숙해지시면 SQL 파시는 쪽이 맞습니다. SQL 별 필요 없다는 건 컴사 전공이고 데이터 엔지니어링만 할 거거나 (...아냐 그래도 해요) 통계 분석 많이 해본 분들 .. (아니 그래도 SQL은 언제 써도 써요). 테이블 형식 데이터는 하여튼 자다가도 일어나서 휘리릭 엎고 자르고 정리하고 할 줄 알아야 다음이 편합니다.


- 리눅스 시스템 관리 경험 있으신 분들에게는 단연코 Data Science at the Command line 같은 책 권합니다. 배쉬 명령어로 끝낼 수 있는 것을 파이선 스크립트 쓰지 말고, 파이선 스크립트로 쓸 수 있는 것을 최신 프레임워크 뫄뫄로 뻘짓 하지 말라는 양파의 명언이 있죠. Csv/json 데이터 다운로드해서, 간단히 확인하고, 데이터 정리하고, 잡아 째고, 규격화 되게 두들겨 패고 하는 거, 리눅스 시스템 익숙하신 분들은 그걸로 빨랑 하는 게 인생 쉽게 사는 법입니다. 간단하게 할 수 있는 거 복잡하게 하지 맙시다.


- 데이터 분석 엑셀에서는 지겹게 해봤다, 매크로도 쓸 줄 안다, 하지만 프로그래밍은 못 해봤다, 혹은 통계는 알고 기계학습 해보고 싶다 하시면 R 추천합니다.


- 코딩 경험 있는 분들, csv 파일 정도는 parse하고 다뤄 본 분들이면 python + Pandas 추천합니다. 코딩 어차피 할 거면 R 로 데이터 뒤져봤더라도 결국은 파이선으로 가게 되더라고요.

난 죽어도 빅데이터 하겠다는 분은 컴사 추천합니다 (...). 이미 컴사 전공하셨다면 아마존 AWS 등등으로 시범 데이터 파이프라인 만들어보기 추천합니다. 빅데이터의 비밀은, 잡다하게 양만 많은 데이터를 스몰데이터로 만드는 마술에 있습니다. 스몰 데이터 분석만 잘 하시면 됩니다. 홧팅.


keyword
매거진의 이전글IT 리크루터와 나