데이터 사이언스 강의 7개 사이클을 돌고 알게된 점

홈페이지 메인 하단에 메일을 쓸 수 있도록 해놔서 그런지 데이터 사이언스 관련된 문의가 참 많이 온다. 어떤 식으로 석사 지원 준비를 해야할까, 무슨 공부를 더 하는게 좋을까, 지금 스펙은 어떤데 앞으로 어떻게 해야할까 등등을 참 많이들 궁금해하시는데, 지금까지 필자가 블로그 글들에 나열해 놓은 내용들을 정리해보면,

  • 머신러닝은 결국 시간적 동적 요소와 개인화를 강화해서 패턴인식을 고도화한 통계학 (Quote from 박재훈님)
  • 데이터 사이언스를 위한 최고의 학부 전공은 통계학, 그 다음은 통계학 공부를 많이한 자연대 타 전공, 공대 및 경제학과 정도. 통계학 베이스 없이 코드만 친 개발자나 수리통계학 배경지식이 거의없는 상경계 출신은 많은 노력이 필요함. 그 이외 전공은 비추
  • 데이터 사이언스는 개발처럼 단순히 코드만 복사하고 수정해서 돌리는게 아니라 모델링을 하는 부분이 포함되어 있기 때문에 수학적인 모델을 이해할 수 있는 지식이 필수 (모델을 직접 만들 수 있으면.. 대박?)
  • 현재 시장에 나오고 있는 상품들은 대체로 단순화한 데이터 (Low Noise)를 기반으로 한 것, 그리고 실제 데이터를 다루는 작업들 (ex. 온라인 유저 데이터, 금융 시장 데이터 등등)은 아직도 복잡한 신호가 뒤엉킨 데이터 (High Noise)여서 발전이 더딤
  • Data Scientist말고, 자신의 현재 스펙에 맞게 Data Engineer (or Data Architect)나 Data Analyst를 노려보는 것도 한 방법
  • (코드 복사해놓고 머신러닝할 줄 안다고 주장하는 사람들을 필자가 매우 혐오함 ㅋㅋ)

정도가 될 것 같다.

가끔 전화나 메일로 문의 주시는 분들이 필자의 블로그 글에서 깨우치는 바가 있어서 수업을 꼭 찾아서 듣고 싶다고 하시는데 (사실 블로그 글 말고는 홍보하는 것도 없기는 하다 ㅎㅎ), 항상 종강일에 한 시간 일찍 수업을 끝내고 “불만을 털어놓는 시간”을 운영하면서 처음 올 때 생각했던 부분이 얼마나 많이 충족되었는지를 찾아서 듣는다. 수업을 찾아오시는 분들의 백그라운드도 다양하고, 또 얻어가시는 것도 다양한 탓에 모든 분들의 요구사항을 다 맞춰드릴 수는 없지만, 그래도 해 볼 수 있는 것들은 시간을 내서 짬짬이 고치고 있는 중이다. 7월에 필자의 수업을 처음 들었던 분이 이번 12월에 오셔서 제안사항을 적극적으로 반영해줘서 고맙다는 말씀도 주시던데, 필자의 마음 속에 있는 버킷리스트를 생각해보면 아직 멀었다는 생각에 만족을 못 하겠다.

바쁘다는 핑게로 못 다루었던 내용들 리스트를 만들다가 강의 노트들 폴더를 보니 지난 반년간 총 7개 사이클로 수업을 진행했더라. 예전에 교수 임용된 선배들이 처음 2-3년은 외부 프로젝트 딸 생각말고 졸업 논문 퍼블리쉬 하는거랑 수업 준비에만 집중해야된다고 그러셨던게 문득 떠오르는데, 지난 반년간 필자의 부족한 강의 내용을 보니 가르치는 일이 얼마나 힘든 일인지, 그리고 필자가 얼마나 부족한 인간인지 깨달음이 와서 좀 부끄럽다 ㅎㅎㅎ

사실 가르치는 내용도 많이 부족하고, 돈이 되는 것도 아닌데 왜 굳이 이런 강의를 붙잡고 있나는 생각이 들어서 그만둘까는 고민을 몇 번이나 했다. 그러다 수강생 분들이 많이 배웠다며 이메일을 보내주시거나, 이 정도 강의를 이 가격에 제공하는건 “재능 기부”다는 위안(?)을 주시거나, 우연히 타 강의 구성과 가격을 보면서 “저런 강의가 퇴출되도록 노력해야지…”라는 생각이 또 들어서 지난 반년을 참 많이도 갈팡질팡했다.

앞으로도 한동안 갈팡질팡할 것 같지만, 우선은 지난 반년간 강의하면서 알게된 점들을 좀 정리해볼까 한다.

(모비 아카데미 강의 피드백 – 부끄럽다…)

 

데이터 사이언스 강의 7개 사이클을 돌고 알게된 점

 

1. 필자의 강의에 오는 사람들 중 개발자의 숫자는 그리 많지 않다

외부 출강을 제외하고 지난 반년간 약 60~70명의 수강생들을 대상으로 강의했는데, 그 중 개발자는 10명도 안 된다. 그리고 그 개발자 중에서도 학부 전공이 자연대인 분들이 꽤나 있었으니, 실제로 공대 출신 개발자 (혹은 개발 지망생)의 비율은 매우 낮았던 것 같다. 블로그 글들을 보고 어느 개발자 분이 필자더러 “머신러닝에 회의적인 것 같다”고 그러시던데, 그 당시에 답변은 “머신러닝이 뭐든지 다 할 수 있다고 우기는 걸 반박하다보니 회의적이다”고 말씀드렸는데, 지금와서 곰곰히 생각해보면 잘 모르는 사람들, 특히 머신러닝으로 뭔가 할 수 있을 것 같은 기대감에 수업을 찾아다니는 개발자 입장에서 필자의 수업이 그다지 끌리지 않았을 것 같다.

그리고 돈 벌이를 떠나서 솔직히 말씀드리면, 코드만 친다는 가벼운 생각으로 수업에 찾아오는 개발자 분은 없었으면 좋겠다. (근데 수학도 잘하는 개발자 분들이 가끔 오시면 놀란다. 그런 분들은 정말 존경한다!!)

 

2. 관심은 있는데 수학이 무서워서 포기하는 사람들이 많다

“통계학 석사 이상의 학위가 있는 사람만 들을 수 있나요”라고 묻는 통계학 학부 출신 기획자 분이 있었다.

필자의 Bias 좀 많은 샘플을 놓고 봤을 때 (블로그 글 보고 오신 분들이니 당연히 Biased, 그리고 통계 전공이신 분들이 몇 분이나 수업에 왔다고…), 통계학 석사 이상, 다른 수리통계학 활용하는 전공으로 박사 학위 이상 있으신 분들에게 이 수업은 일종의 “전환용” 수업이다. 자기가 알고 있는 지식을 머신러닝이 어떤 이름으로 어떻게 활용하고 있는지를 보고 고개를 끄떡이면서 나갈 수 있는 정도의 수업.

돌려서 표현하면, 이 수업에서 다루는 수학 및 통계학 내용은 절대 대학원 수준이 아니라는 뜻이기도 하다. 자연계열로 박사 학위가 있으신 분의 수업 종강 후 평가를 보면,

“모델의 수리적 근간에 대한 설명이 좋았습니다. (그 때 이용하는) 선형대수학이 학부 2학년때 배우는거라 비교적 엄청 쉽게 알려주셨다고 생각합니다.”

라는 구절이 있는데, 필자가 수학으로 타협을 많이했다는 걸 알아봐주셔서 참 고마웠고, 또 다른 한편으로는 선형대수학 모르면 정말 강의에 오시지 말아야겠구나는 생각도 들었다.

실제로 강의 후반부에 “도망”가시는 분들을 보면 수학을 거의 모르는 개발자나 경영학과 출신 분들이다. 그 분들이 “혹시나 내가 들을 수 있는 수업인가”를  확인하실 수 있도록 수학 및 통계 수업을 먼저 개설하니, 혹시나 자신이 없으신 분들은 그 수업을 듣고 스스로의 가능성을 판단해보시기 바란다. 필자가 경제학과 출신이라 항상 경영학을 “디스”하지만, 정작 경영학과 출신이면서 수업을 120% 이해하고 필자의 강의노트를 고치게 만드는 매서운 질문을 하시는 분들도 많다 ㅎㅎ

 

3. 업무 적용에 대한 궁금증이 많다

“이 수업을 듣고 어느 정도 더 내공을 쌓고나면 회사에서 업무에 적용할 수 있냐”고 묻는 공대생 분이 있었고, 자기네 회사에 적용시켜보고 싶다는 스타트업 대표도 있었다. 

이런 종류의 질문을 받으면 언제나 답은 정해져있다. “본인의 내공에 달려있다”고.

저 위에 잠깐 언급한대로 “전환용”으로 이 수업을 들으시는 분들은 아마 쉽게 자기 업무에 이 강의를 활용하실 것이다. 의외로 그 정도 내공을 갖추신 분들이 1/3 정도나 되었는데, 아마도 “이 녀석은 최소한 코드만 치고 끝나는 강의는 안 하는가보다”라고 생각하고 오셨으리라. (그 중에는 필자의 학부 선배 + 경제학 박사 이신 분들도 꽤나 있다…)

반대로 여러가지 기초가 부족하신 분들이라면 내용을 소화하고 자기것으로 만드는데 꽤나 긴 시간이 걸릴 것이다. 여러차례 다른 글에서 밝혔듯이 필자의 수업을 여러번 찾아오시는 분들도 있고, 제공해 드리는 동영상 강좌를 여러번 듣고, 미리 제공해 드린 R 코드로 예습하고 혼자 고민한 상태에서 수업에 들어오시는 분들도 많았다. 그런 분들이 아무래도 빨리 수업 내용을 소화하고 자기것으로 만드실 수 있지 않을까?

 

4. 사기꾼들이 정말 광범위하게 널려있다

개발자 출신들이 Kaggle 데이터만 긁어서 모델 1,2,3번을 돌리고 각각 Classification으로 0/1을 맞추는 비율이 60%, 75%, 90%로 올라가는 것만 가르치는 수준 낮은 학원가 강의가 많다는 이야기는 이미 여러번 했는데, 대학에서 가르치는 “교수” 타이틀을 들고 있는 사람들도 어이없는 사람들이 있더라. 어느 학생 한 분이 10개 남짓의 초대형 프로젝트감 토픽을 들고 오면서 수업 시간에 이런 토픽들 좀 다뤄달라고 하시길래, 이건 하나만 성공해도 스타트업 가치가 최소 100억이 될만한 내용이고, 객관적으로 봤을 때 말이 안 되거나, 말이 되도록 할려면 대폭 수정을 가해야하는 주제들인데, 도대체 어디서 찾았냐고 물어봤다.

모 대학 금융공학 전공하는 학생들의 머신러닝 수업 텀페이퍼 주제라는데, 교수라는 사람이 “학생들이 야침차게 내놓은 연구 개발 주제. 조금 거칠기는 하지만, 흥미로운 문제를 설정했고, 다양한 기법들을 제안하고 있습니다.”라고 Fxxxbook 페이지에 올려놨더라.

당장 그 교수 이름과 소속을 바탕으로 학위와 논문을 뒤져봤고, 수학이나 통계학은 커녕 공학이나 경제학과도 거리가 먼 전공으로 박사 학위를 하신 점을 확인했다. 금융전공은 더더욱 아니었고, 백번 양보해도 본인이 따로 아주 열심히 공부하지 않은 이상 절대로 저런 수업을 가르치고 학생들을 지도할 수 있는 수준이 아니라는 걸 직감할 수 있었는데, 그 학생들이 어떤 지도를 받고 그래서 주제들을 어떻게 수정해서 텀페이퍼를 완성했는지 언제 심심할 때 뒷조사를 해 볼 계획이다.

적어도 지금까지 모은 정보에 따르면 저 교수는 학생들 중 하나가 매우 낮은 확률을 뚫고 엄청나게 대단한 결과물을 가져오면 그걸 마치 교육의 성과인 것처럼 부풀리는 스타일의 Sales-fessor (Sales + Professor) 인 것 같은데 (이런 분들 꽤나 많이 봤다), 더 이상의 공격으로 신상이 공개되면 사이버 모욕죄로 법적 분쟁을 벌여야할 수도 있으니 여기서 멈추겠다.

 

5. IT 업계만 머신러닝에 관심있는거 아니다

70명이 좀 안 되는 수강생들 중에 강남, 판교에 몰려있는 IT 업계 사람들이 몇 명이나 되는지 한번 헤아려봤다. 의외로 10명이 안 되더라. 그리고 주소지가 강남, 판교인 사람들은 정말 5명에 불과했다. 위에 언급한대로 박사 학위 있는 타 업종 사람들이 많이 온 탓도 있기는 하겠지만, 그 숫자를 제외해도 거의 대부분의 수강생 분들이 금융업을 비롯한 일종의 “전통 산업” 출신이었다.

(오히려 IT 업계 출신이신 분들이 수학을 활용해서 뭔가 작업한다는거에 거부감을 갖고 계신 경우를 많이 봤고, 그만큼 수업에 오시는 비율도 낮았다. 대신 수업에 오신 몇몇 IT업계 분들은 수학적인 센스가 뛰어나신 분이 있어 필자가 긴장하고 수업 준비를 한 적이 꽤나 있다.)

샘플 숫자가 부족하니 함부로 단정지을 수는 없지만, 솔직하게 몇 마디 덧붙이면, 타 업종 분들이 오히려 더 “건강한” 관점으로 머신러닝을 바라보고 있다는 생각을 했다. IT 업계 분들 중 많은 숫자는 여전히 “딥러닝”이 “머신러닝”의 “Neural Network” 모델을 좀 더 무겁게 만든 모델이라는 사실을 잘 모른채 “딥”이 “머신”보다 진보된 기술이라는 좀 어이털리는 이야기를 읊어대고 있었고, 자기네 회사에 알파고 같은 고차원적인 알고리즘이 도입되어 있다는 식으로 “자랑질”을 하면서 정작 이런 알고리즘이 어떻게 돌아가는지에 대한 이해가 전혀 없어 보였다.

반대로 타 업종 분들은 “미디어 오염”이 덜 되어서 그런지, 아니면 통계 교육을 더 많이 받으신 분들로 Bias된 샘플을 만나서인지는 몰라도, 머신러닝이 비선형 함수로 데이터의 패턴을 인식하는 알고리즘이라는 개념을 굉장히 쉽게 받아들이고, 모델을 설명하고 나면 자기네 회사 데이터에 적용해봐야겠다며 머리를 맞대고 토론하는 경우를 자주 볼 수 있었다. 정작 IT업계 출신이신 분들이 “혹시 TensorFlow 어떻게 쓰는지로만 10시간 정도 강의할 생각 없냐?”, “수업 시간에 제공해 준 내용말고 더 많은 TensorFlow 코드를 구하고 싶은데 어디서 구할 수 있냐?” 같은 질문을 하신 반면.

 

나가며

바람 잘 날 없는 스타트업을 운영하다보면, 갑자기 주변 환경이 바뀌어서 안 하던 강의를 해야할 수도 있고, 몇 달 동안 운영하던 강의를 없애야할 수도 있고, 또 스케줄을 이상하게 꼬아야할 경우도 생긴다. 

회사 내부의 여러가지 사정으로 모비 아카데미 측에 이제 외부 강의를 접어야할 것 같다고 말씀드렸다. 그 분들도 돈 벌이가 되어야 강의를 계속 진행할텐데, 한번에 50명씩, 100명씩 신청할 쉬운 강의할 강사 구하시는게 좋을듯. 필자처럼 수학 들어간 강의해서는 돈 벌이 못 한다고. 아니면 엑셀로 하는 쉬운 내용 몇 개 넣은 짧은 강의는 해 볼 수 있으니 관심있으면 연락해라고 말씀드렸다.

지난 달에 어느 메일에 답변했던대로, 강의라는게 참 재미없는 일이다. 내가 알고 있는 내용을 남한테 가르쳐야 하는데, 매우 쉽게 안 가르쳐주면 자기가 부족해서 못 알아들었다고 자책하는게 아니라, 선생이 못 가르쳤다고 불평하는 일이 더 잦고, 그 압박을 견디며 최대한 쉽게 가르치려고 머리를 쥐어짜야하는 작업이기 때문이다.

귀차니즘에 그만둘까는 생각이 자주 샘솟지만, 그래서 언젠가 추천할만한 강의가 시장에 나오면 바로 그만둬버릴 것 같지만, 아직은 그런 강의를 못 만났다는 핑계로 쬐끔은 더 노력해본다. 3월 강의 스케줄 짜다가 글이 길었다.

X