Share           Pin It

경제학을 전공하는 1년차 대학생께서 데이터마이너가 되고 싶다는 문의를 해주셨습니다. 저와 백그라운드가 다른 쪽 (문과 계열)은 조금 조심스럽습니다. 제 경험이 아닌 상상에 맞춰서 — 그리고 어떤 면에서는 선입견에 따라서 — 불필요한 조언이 될 수도 있기 때문입니다. 지난 번에 문과 고등학생도 질문을 주셨지만, 그 분은 아직 대학/과를 정하지 않은 상태였고, 지금은 경제학과로 진학한 경우라서 조금 느낌이 다를 수 있습니다. 그리고 학교마다 개설되는 수업 이름이 다르기 때문에 정확한 수업명은 다시 확인하시기 바랍니다.

안녕하세요? 경제학과에 재학중인 학생입니다.
아직 1학년 밖에 마치지 않았지만
데이터마이너가 되고싶다는 생각이 들어 이렇게 여쭈어 보게 되었습니다.
구체적으로 어떤 과목을 공부해야하는지 알고 싶습니다.
단순히 경제학만으로는 묻지마취업밖에 길이 없다는 사실을 깨닫고 좀더 전문성이 있는 길을 가고싶어서 질문드립니다.
구체적으로 어떤 과목을 공부해야하는지 테크트리좀 알려주세요.

굳이 데이터마이너가 되지 않더라도 경제학 분야에서도 수리경제나 개량경제 등에서 수학분석 및 컴퓨터 시뮬레이션 등이 필요한 분야가 많이 있습니다. 이 말은 데이터마이닝은 데이터마이너만의 영역이 아니라는 뜻을 내포하고 있으며, 특히 최근에는 데이터 기반의 전략수립, 의사결정, 실행 등의 트렌드가 있기 때문에 누구나 기초적인 데이터마이닝 수업 등은 들어두면 좋습니다.

데이터마이닝을 하면 기본적으로 수학과 컴퓨터를 빼놓을 수 없습니다. 그래서 아래의 수업들은 대부분 수학이나 컴퓨터 관련 과목들입니다. 그리고 저도 기본적인 수학만 이수했기 때문에 수학과에서 배우는 전체 과목을 잘 모릅니다. 그리고, 컴사/컴공도 아니라서 컴퓨터 쪽도 고등 advanced 과목은 잘 모릅니다. 감안하시고 읽어주시기 바랍니다.

수학쪽 과목은 기본적으로 공대에 진학하면 1학년 때 ‘Calculus’ (타학교에서는 ‘공학수학' 정도로 개설될 듯함) 라는 과목을 듣습니다. 수학의 전반을 다루는데 고등학교 수준 또는 그 이상의 다룹니다. 수학의 기본을 배우는 과목이니 이수를 할 필요가 있습니다. 두번째로는 당연히 '확률과 통계 Probability and Statistics’는 데이터마이닝의 기본입니다. 실제 애플리케이션에서는 이 문제는 확률, 통계문제다라고 정의하지 않더라도 기본 개념들이 늘 사용되기 때문에 익숙해질 필요가 있습니다. 세번째로 응선대라고 불리는 ‘응용선형대수 Linear Algebra’가 필요합니다. 고등학교 때 배우는 행열 matrix의 심화과정입니다. 데이터의 표현방식에 따라서 조금씩 달라지겠지만, 기본적으로 모든 데이터는 matrix 형태로 표현이 가능하기 때문에 행열에 대한 기본 연산에는 익숙해질 필요가 있습니다. 그리고 고급 머신러닝이나 알고리즘을 배우게 되면 행열이나 벡터가 기본 데이터 구조로 사용되기 때문에 필수적입니다.

다음으로 컴퓨터 사이언스 또는 컴퓨터 공학 (컴사/컴공)과의 과목들입니다. 당연히 프로그래밍 언어 하나 정도는 배워둬야 합니다. 제가 학교 다닐 때는 C언어가 기본이었지만, 최근에는 Java를 CSE101로 수강하는 곳도 많을 것입니다. 프로그래밍 랭귀지마다 문법이 조금씩 다르지만, 기본 개념은 비슷비슷하기 때문에 한가지 언어를 잘 배워두면 다른 언어를 쉽게 배울 수 있습니다. 단지 웹기반의 프로그래밍만 필요하다면 최근에는 그냥 Python, PHP, Scala, Ruby 같은 언어는 좀 더 배우기 쉬울 것입니다. 그래도 제대로 배우겠지만 시작은 역시 C 언어입니다. 다음으로는 데이터 구조 Data structure나 알고리즘 Algorithm 수업을 들어두면 프로그래밍을 하는데 도움이 됩니다. 그리고 세번째는 데이터베이스 과목인데, 그런데 컴사/컴공의 데이터베이스는 너무 low level까지 다루기 때문에 (프로젝트로 데이터베이스의 기능을 실제 구현해본다와 같은 것이 나올 수 있음) 문과생들에게는 다소 어려울 수 있습니다. 그렇기 때문에 산업공학과나 다른 과에서 다루는 좀더 애플리케이션에 치중한 데이터베이스 수업을 들으면 됩니다. 기본적으로 컴퓨터를 전공한다면 이산수학 Discrete mathematics 수업도 듣습니다. 오래 되어서 정확히 기억나지 않지만, 집합에서 다루는 개념들을 컴퓨터의 원리에 맞게 맞춘 과목입니다.

당연히 컴공과에서 머신러닝 Machine Learning이나 인공지능 Artificial Intelligence 과목도 들어야겠지만, 대부분은 대학원 과목입니다. 머신러닝/AI 과목은 전기전자과에서도 개설되는 경우가 많습니다. 정확히 같지는 않겠지만 산업공학, 생명공학, 화학공학 등의 과에서도 그 과에 맞는 다양한 수학 또는 데이터마이닝 수업들이 존재합니다. (교수님/연구실의 존재에 따라서 달라지겠지만..) 단, 학과마다 그 학과에 맞는 수업을 진행하기 때문에 무턱대고 수강신청을 하면 나중에 피곤할 수도 있으니 잘 알아보고 신청하셔야 합니다.

그외의 과들에서는… 기본적으로 각 과의 개론 (101) 수업들은 들어두면 좋습니다. 산업공학과에서는 최적화 OR, 산업응용통계, 실험계획법 등의 수업이 존재합니다. 전에도 말씀드렸는데, 데이터마이닝 알고리즘들이 자연의 현상에서 영감을 받아서 구현된 것들이 많으니 물리학이나 화학의 기초도 필요할 수도 있고 (근데 굳이 수업까지는…), 자신이 원하는 응용분야에 맞게 생명이나 화공 등의 수업을 들어두면 좋습니다. 질문자는 이미 경제학을 선택했기 때문에, 굳이 이런 쪽 분야의 수업은 필요치 않을 듯합니다.

C나 Java 등의 프로그래밍 언어를 배우기가 힘들다면, 다양한 수학, 통계 관련 분석툴들에 익숙해질 필요가 있습니다. 가장 간단하게는 MS오피스에 포함된 Excel입니다. 개발자가 아닌 경우라면 회사에서 가장 많이 사용하는 프로그램 중에 하나가 엑셀이기 때문에 미리 고급 기능을 익혀두면 나중에 편하게 사용할 수 있습니다. 조금 더 전문적으로 데이터 분석을 하겠다면 SAS, R, Matlab, Mathematica, Minitab 등의 수많은 분석툴들이 있습니다. (R은 프리소프트웨어이고 학계에서도 많이 사용하기 때문에 R을 배워두면 좋습니다. 최근 빅데이터 붐과 함께 R의 사용빈도도 늘어났기 때문에 미리 공부하고 익혀두면 좋습니다.) 그외에도 특정 도메인/데이터에 맞는 또는 기능에 맞는 다양한 분석툴들이 존재하기 때문에 어떤 것들이 필요한지 미리 확인해보시기 바랍니다.

처음이라면 각 관련 과의 개론 수업, 공학수학, 프로그래밍 언어부터 시작하시고, 다음으로는 확률통계, 응선대, 이산수학, 데이터구조, 다음으로는 응용산업통계나 데이터베이스 등의 수업으로 차곡차곡 들으면 될 듯합니다. 어차피 학년 (난이도)에 맞는 1XX, 2XX 이렇게 수업이 설계되었기 때문에 아래쪽부터 차곡차곡 수업을 들으면 큰 어려움은 없을 것입니다. 이런 공학수업뿐만 아니라, 영어 (특히 독해)는 꾸준히 연습해두는 것이 좋습니다. 분석이나 개발 관련 기술문서들은 대부분 영어로 되어있기 때문에 (보통 번역서는 6개월, 1년 정도 늦게 나옴) 최근 트렌드나 기술을 익힐려면 영어는 필수입니다. (토플/토익점수는 필요치 않아요.) 무엇보다 인터넷과 게임 외의 컴퓨터와 친해지는 것이 가장 우선입니다.

충분히 답변이 되었는지 모르겠으나, 처음에는 막막해 보일 수 있지만 한 발을 일단 내딛고 나면 길이 보일 수도 있습니다.

==

페이스북 페이지: https://www.facebook.com/unexperienced

댓글을 달아 주세요

Share           Pin It
2 / 5 내가 굳이 이 책의 리뷰를 적을 이유가 있을지 모르겠다. 어떤 이들의 저자의 주장에 감동을 받았다고는 하지만, 나같은 경제에 문외한 이에게는 감흥이 없다. 저자가 노벨경제학상을 받았다 하더라도, 감수 추천자들이 세계적인 석학이더라도 내 느낌을 만족시켜주지 못한다면 그런 지식이 무슨 소용이 있겠는가? 나름 의미가 있는 분석도 있다. 그러나 그것을 내가 받아들이느냐의 문제는 나의 문제다.

야성적 충동
카테고리 경제/경영
지은이 조지 애커로프,로버트 쉴러 (랜덤하우스코리아, 2009년)
상세보기

   야성적 충동  
 
 유사 이래로 (실은 아담 스미스 이후로) 많은 경제학자들의 등장해서 나름의 이론을 제시해왔다. 그들의 이론이 때론 특수한 조건이 갖춰진 상황에서 경제현상을 잘 설명하기도 하고, 때론 더 장기적인 관점에서 경제문제를 설명하기도 한다. 그러나 그 시기가 지나가면 또 다른 변수에 의해서 과거의 모형은 더 이상 유효하지 않는, 단지 경제학 교과서에 한 페이지 또는 한줄의 언급만을 남기는 경우도 허다하다. 이제까지의 어떠한 경제학 이론이 우리가 현실에서 맞딱뜨린 모든 경제문제를 제대로 설명해줄 수 가 없었다. 이제까지 그랬듯이 앞으로도 그럴 것이다. 어쩌면 더 많은 이들의 지혜가 모여진다면 조금 오차률을 줄일 수는 있겠지만, 무수한 요인들이 복잡하게 얽혀있는 인간사에 대한 문제를 해결할 수가 있겠는가? 그러나, 여기 2001년도에 노벨경제학상까지 수상한 세계적인 석학이 이 문제를 해결하겠노라고 한 권을 책을 내놓았다. 그도 인정했다. 이제까지의 어떠한 경제학 모형도 제대로 경제문제를 해결하지도 못했고, 현재의 문제를 설명해주지 못했노라고... 그러면서, 그는 인간의 심리를 경제학에 끌어들렸다. 자신감이나 공정성, 부패, 화폐착각, 그리고 역사적 이야기를 야성적 충동이라는 이름으로 우리에게 소개해주고, 8가지 주요 경제학적 문제의 이면을 완벽하게 설명을 해준다고 우리를 설득하고 있다. 경제도 사람의 문제다. 그렇기에 사람에 관한, 즉 인간의 심리적 요인을 경제 문제에 결부시키는 시도는 나름 신선하다. So what? 소위 야성적 충동이 이제까지 난제의 경제문제의 조금의 빈틈을 메꾸어줄 수는 있을 것이다. 그렇다. 그렇다고해서 나머지 모든 틈도 메꾸어줄 수 있을까? My answer is 'Never'. 수년 후에 저자의 주장이 주류 경제학의 흐름에 올라올지도 모르겠다. 그렇다면 그때 가서 나를 욕해라. 그 전까지는 나의 무지가 저자의 유지에 앞설 것이다. 설사 어떤 모형이 현제의 문제를 완벽하게 설명한다고 하더라도, 그 또한 하나의 모형에 불과하다. 과거를 설명하던 경제학 모형들이 미래에서 실패했듯이, 또 다른 미래에서 야성적 충동이 먹혀들지 않는다면 어떻게 하겠는가?

 사람들은 경제학을 보면서, 이론들이 경제문제를 얼마나 설명해주느냐에 궁금증을 가지고 있지 않다. 사람들은 그런 이론들이 내 배를 얼마나 배불려줄 수 있느냐에 관심이 있다.

 그리고, 책에 추천사를 쓰는 소위 지식인들의 그들의 추천사에 책임을 져야 한다.

댓글을 달아 주세요