저는 딥러닝”만” 배우고 싶은데요?

5
pabii research

파비클래스 강의하던 시절에 줄기차게 받았던 질문 메일들 중 압도적인 다수를

저는 딥러닝”만” 배우고 싶은데요

라고 한 줄 요약할 수 있을 것 같다.

마치 다른 내용은 별로 쓸모짝에도 없고, (제일 우월하다고 불리는) 딥러닝이라고 불리는 지식만 배우면 된다,

그 중에서도 특히 무슨무슨 알고리즘 코드만 받아가면 된다고 생각하는

(딴 건 무슨 말인지 모르겠고) 코드만 주세요

라는 식의 어리석고 깝깝한 질문이 정말 너무너무 많았었다.

 

비슷한 예시로 최근에 받은 질문 중에, 어느 의대생이

(중략) 저는 대표님이 흔히 말하는 Primitive한 수준보다 못한 사람이고, SIAI의 어떤 과정도 저에게는 무척 벅찰 것입니다. 하지만 이 분야에 관심(말 그대로 관심 수준 뿐입니다)이 있고, 특히 대표님의 “가짜에 대한 감정을 공감하고 있기…. (중략)

본론을 말씀드리자면, MBA Course 중 의료 AI강좌를 추가….(중략) 저 같은 수준에서 그나마 배경 지식이 있는 분야여서 들을 수 있지 않을까 해서 흥미가 많습니다. (중략)

라는 어이없는(?) 질문을 보낸 사례도 있다.

저 의대생의 긴 이메일을 한 줄 요약하면

다른건 배우는데 시간 쓰기 싫고, 의대에서 쓰는 내용만 배우고 싶어요

라고 바꿔 쓸 수 있을 것 같은데, 이게 왜 어이없는 질문이냐고? 당연한 질문 아니냐고? 쓸데없는거 왜 배우냐고?

딱 내가 쓰는 “딥러닝”만 알면 된다?

위의 내용과 어쩌면 같은 내용이고, 어쩌면 매우 다른 내용일 수 있을 것 같은데,

학부 시절, 경제학이나 파이낸스 같은 주제로 박사 유학 갈려면 수학, 통계학과 복수 전공이 거의 필수처럼 여겨지던 시절,

우리 경제과 쌍용이라고 불리던 이창용 교수님, 박준용 교수님 두 분이 하나 같이 하셨던 말씀이

너네가 굳이 수학, 통계학과 가서 수업 들을 필요가 있어? 경제학과에서 쓰는 지식만 다 배우기도 바쁘지 않니?

어차피 경제학적 직관을 이용해서 어떻게 활용하는지가 중요하지, 거기가서 0+0=0인거 증명하고 있을 필요는 없는데…

였었다.

 

얼핏 들어보면 다른 지식은 하나도 필요없고 경제학 전공용으로 개설된 경제수학, 경제통계만 공부하면 된다는 말처럼 들리지만,

사실 대학원 가보면 해석개론, 수리통계 같은 “기초” 지식들을 활용해서 경제학의 엄청난 문제들을 풀어놨다는걸 보게된다.

(그런 초고난이도 전공의 학부 3학년에서 그 학문을 계속하는게 맞을지 결정하는 레벨의 초핵심 수업들이 “기초”라는게 공감이 안 되긴 하겠지만)

학부 때 수학 수업을 하나라도 더 들어놓을껄, 통계학 수업을 하나라도 더 들어놓을껄 이렇게 후회하는 박사생들도 많다.

물론, 궁극적으로는 기초가 잘 닦인 상태에서 어떤 수학을 만나건 바로바로 이해하고 응용할 수 있는 “체력”을 기르는게 가장 핵심이긴 하지만.

 

나 역시 운 좋게 그런 “체력”을 조금이나마 기르고 난 다음부터는 우리 과 “쌍용” 교수님들의 말씀을 이해하게 되긴 했지만,

그렇게 되기까지 장기간의 고난의 세월을 겪으며 수학과 통계학이라는 모든 학문이 공통으로 쓰는 “언어”를 익히는데 죽을 것 같은 괴로움을 겪었었다.

마치 이두, 향찰을 잘 쓰기 위해서는 천자문, 동몽선습부터 사서삼경 같은 고급 전서들을 읽을 수 있어야하는 것처럼…

굳이 이두, 향찰 비교 없어도, 경영, 의학, 교육 같은 암기형 전공 아니면 각 대학 전공별로 Tech tree가 있지 않나? Pre-requisite 안 듣고 올라가면 아예 고학년 수업 못 듣는?

 

다시 위의 딥러닝”만”충 과 의학”전용”충 들의 질문 메일로 돌아가면,

당신들에게 필요한 수업이라는게 나오기 위해서는 그 앞에 필요한 기초 “체력”에 해당하는 많은 수업들을 우선 이해하고 있어야 한다.

안 그러면 그냥 코드 복붙해놓고 전문가라고 우기고, 의대”충”들처럼 계산방법론 10개 돌려보고 그 중 제일 잘 맞는게 뭐라는 헛소리하는 논문 내놓고 제약회사들 리베이트나 받으며 자랑질이나 하고 살아야하는데,

난 그런 가짜 인력 키워내는 교육은 할 생각이 없고, 아마도 당신들도 그렇게 가짜 인력으로 살고 싶지는 않을 것이다.

(그런 가짜 단기 속성이 필요하다면 Slow Campus 같은 학원, 국비 지원 IT학원도 있고, 국내 대학도 있고, 옵션은 많다. 나보다 광고를 열심히 보는 당신들이 더 잘 알 것이다.)

 

그리고, 수학, 통계학 모델에 대한 학문적 이해도가 0인 사람들의 착각과 달리,

데이터 셋의 형태와 계산 목적에 맞는 모델은 제각각이다.

무조건 모든 영역에서 딥러닝이 우월…. 했으면 일반인들 입에 딥러닝이 오르내린지 벌써 5년이 넘었는데,

지금쯤이면 AI가 “알아서 학습”해서 왠만한 학문은 다 없어졌어야하는거 아닌가?

N(>1)개의 여러 패턴이 매우 강하게 반복되면서, 노이즈가 없으면서, 데이터 자체가 Non-linear 함수의 패턴을 가지는 경우,

그런데 그걸 수식으로 표현하는게 불가능한 패턴이어서 컴퓨터를 학대시켜야 하는 경우에만 국한해서 쓸모있는 모델일 뿐이다.

그런 “딥러닝”을 위의 모든 조건이 깨져서 “제일 잘 맞는”이 아니라 “제일 무쓸모한” 경우에도 마구 갖다붙여놓고 있으니 어이가 없을 뿐.

 

기능적 지식 vs. 기술적 지식

우리 SIAI의 MBA AI/BigData 프로그램 교육처럼 추려내고 또 추려내서 알짜만 뽑은 커리큘럼을 놓고봐도,

학부 1학년 기초 수학, 통계학 수업들 지식 (미방, 선대, 통계 기초 같은 지식들… 굳이 수학과, 통계학과 수업일 필욘 없고, 경제수학, 경제통계여도 충분하다고 본다)이 깔려있다는 전제아래,

학부 2학년 때 배우는 회귀분석부터 시작해서 최소한 우리 기준 수업 6개, 국내의 수업시수 기준 학점으로 12학점 정도는 듣고나야

딥러닝, 의료 AI 같은 수업에서 앞의 내용들을 바탕으로 수업을 꾸려나갈 수 있을 것 같다.

우리 커리큘럼보면 알겠지만, 정말 최소치만 뽑은거다. 1시간도 허투루 보내지 않는 학위 과정 기준으로.

(수업 내용의 범위와 깊이만 따지면 국내 기준 대략 24학점 정도의 학부 고학년 & 대학원 레벨 전공 수업이라고 보면 된다. 우리나라 대학들이 해외 학부 2학년 과정을 대학원이나 되어야 가르치더라고. 그마저도 잘 못 가르치고.)

 

당장 내가 공부해보면서 했던 시행착오와 좌충우돌을 다 빼고도 이 정도인데,

그런 시간낭비는 커녕, 아예 낫 놓고 기역자도 모르는 노베이스 상태로

당신들이 “꿈꾸는” 고급 수업을 들을 수는 없다.

당신들이 주워듣고 아는체 할 수 있는 “기능적 지식”과, 대학 교육에서 차근차근 쌓아올라가는 “기술적 지식”은 출발점 자체가 다르다.

마치 수능 전국 상위 50% 수준인데 “서울대를 꼭 가고 싶습니다”라고 주장하는 것과 똑같은 상황이다.

 

우리 SIAI MBA AI/BigData 온 어느 수도권 대학 경영학 박사 졸업반 학생 하나가

Slow Campus 수업을 총 3개나 들었는데,

그냥 Covariance 같은걸 노트 1-2장에 개념만 설명하고 뭔가 연결되고 이런게 없더라구요

1달 만에 Data Scientist 될 수 있다는 말에 혹해서 들었습니다. 광고에 속은 제가 바보죠.

여기처럼 개념들이 계속 꼬리에 꼬리를 물듯이 연결되고 실제 현실에서 나타나는 사건들에 대응하기 위해서 모델이 조금씩 변형되고.. 이런걸 배운다는걸 상상도 못했어요

머신러닝, 딥러닝 배우긴 했는데, 여기서 이만큼 수학, 통계학 공부하고 나니 왜 그런 학원이 엉망이라고 욕하시는지도 이해되고…

1개 듣고 정신차려야지, 3개나 들었으면 진심 반성해야 된다.

 

아마 국내의 엄청나게 많은 3류 학원, 대학들이 “(기능적) 지식”을 다 가르쳐 줄 수 있다고 광고들을 해대고 있을 것이다.

당장 대전 K대 AI대학원 졸업, 학부는 SKP의 수학 전공인 학생이 Boltzmann machine 이라는 Neural Network 계산법을 모르고,

거기에 필요한 Factor Analysis, Gibbs Sampling 같은 밑바닥 통계학 지식을 모르는 판국인데,

그래서 80년대 계산법인 Feed-Forward, Back-Propagation 같은 엄청난 계산비용과 오차 위험성을 바닥에 깔고 있는 “Library” 하나 돌릴 줄 아는 걸로 충분히 배웠다고 착각하는 판국인데,

말을 바꾸면 국내 최고 명문대가 “기술적 지식”을 못 가르쳐서 애들을 엉망으로 교육시켜 내보내는 판국인데,

우리나라에 제대로 가르치는 곳이 있다는 것이 말이 안 되는 소리겠지.

 

머신러닝, 딥러닝, 인공지능 마니악들이 그렇게 좋아하는 Andrew Ng 교수가 2001년(?)에 쓴 LDA 논문만해도 Non-linear fitting하는 NN을 Boltzmann으로 풀어놨던데,

아직도 80년대 수준인 Back-propagation만 가르치고 Boltzmann을 국내 최고 명문대 AI석사 졸업반이 모르는 수준이면 뭘 가르쳐서 졸업시키는거야?

직장가서 자연어처리 작업에 난이도가 조금만 올라가도 LDA적용하는걸 변형해봐야될텐데,

K대 AI석사해도 못하더라, 미국 S대 박사님 모셔와야된다는 소리 나오겠지?

기껏해야 Library 몇 개 베껴서 코드 돌려보니 돌아간다고 자랑질 하는 수준일텐데 적용은 커녕 변형은 꿈도 못 꾸겠지.

우리 SIAI의 “MBA” AI/BigData 애들도 아는 이야길 K대 AI석사가 모른다는게 국가적으로, 최소한 그 명문대 교수진들 입장에서 쪽팔리는 상황 아닌가?

 

출발점이 달라도 정상에 가면 만난다

당시 우리과 “쌍용” 교수님께서 하셨던 말씀의 요지는,

우리과 고학년 수업을 가도 통계학 다변량에서 배우는 Factor Analysis를 가르치고 (참고로 이게 PCA의 일반화 버전 중 하나다),

또 다른 고학년 수업을 가면 Gibbs sampling을 가르쳐주는데,

굳이 통계학과를 찾아가서 자기네들 쓰는 방식으로 그런 지식을 배워야 할 필요가 있나?

우리 전공에서 쓰는 방식으로만 배우면 되는거 아니냐? 라는 뜻이었지,

아예 그런 지식을 하나도 모르는 상태에서 Boltzmann machine이라는 이름만 알면 된다거나,

아님 아예 그런 용어 자체도 모르는 체로 졸업하고 취직해도 먹고사는데 지장없다, 대학원가서도 문제없다는 뜻은 아니었을 것이다.

 

어느 의대 박사생이 0/1로 된 데이터에 PCA를 적용해보니 잘 안 되어서 구글링 해서 알게된 tSNE라는걸 썼는데 그거도 잘 안 된다,

왜 안 되는지 모르겠다라는, 기초 수학/통계학 훈련이라고는 단 한번도 제대로 받지 않은 것 같은 상태로 “방법론”들만 갖다 쓰고 있던 기억이 난다.

PCA 계열의 모델들이 2차 Moment (variance, co-variance…)들이 데이터 셋의 “정보”라고 가정하고 그 행렬을 재정의하는 관점의 데이터 처리법인데,

0/1로 된 데이터가 무슨 variance가 있나? tSNE라는건 PCA가 linear model이니까 non-linear weight를 주겠다는 거니까,

그런 Boolean 데이터에 갖다 쓴다는거 자체가 마치 밥솥에 고령토를 넣어서 도자기를 만들겠다는 황당한 이야기 아닌가?

그런 어이없는 질문을 고쳐주려고 한참 동안 수학/통계학 교육을 해도 못 알아듣다가 몇 년 후에 만나니 이제 겨우 좀 이해했다고 하던데,

그날 그 대화를 옆에서 듣던 어떤 공대생이 또 뭣 모르고 PCA 대신 tSNE라는게 더 좋다고 하니 그걸 써 봤는데 계속 이상한데 왜 이상한지 가르쳐달라고 하더라.

똑같이 0/1로 되어 있는 데이터 들고.

이런식으로 기초 교육이 전혀 없는 상태에서 이것저것 갖다 붙여 써 보기하는 전공은 자기 전공으로 지식 훈련하는게 말도 안 되는 상황인거다.

(딱 이 수준의 Trial and error만 한 거지. 사각, 원, 별 이라는 도형 추상화가 전혀 안 된 아기들처럼)

 

이렇게 이야기해서 좀 미안하지만, 너네 학문이 (적어도 데이터 사이언스라는 주제로는) 좀 (심하게) “미개”한 상태인거야.

(너네 학문은 멀쩡할지 몰라도, 너는 0/1에 PCA 썼다가 안 된다고 tSNE 쓰는데도 안 된다고 불평하는 순간, 본인 수준 인증한거지.)

경제학이 독립 전공으로 대학교 진입할 자격을 못 얻다가 1800년대 후반이나 되어서야,

경영학이 여전히 학계 사람들에게 학문 취급을 못 받고 있는 가장 큰 이유가

타 학문, 특히 학문적인 서열이 높은 수학, 물리학, 통계학 같은 학문하는 사람들 눈에 “학문적”인 연구방법이 아니라,

조잡한 “기능적 지식”으로 학문이라고 우기기 때문이(었)다.

결국 제대로 “연구” 타이틀을 달 수 있는 학문을 하게되면, 공통적으로 배워야하는 “기술적 지식”이 비슷해지는 근본적인 이유이기도 하다.

 

석사가서 죽을 고생을 하고 난 다음에 박사 전공을 “잘못”갔던 시절,

모든 전공이 그 레벨로 올라가면 방법론을 “골라서” 쓴다는 점에서 같은 리그에 있고,

단지 얼마나 자기 학문과 자기 연구 주제에 맞게 적절하게 잘 변형시켜서 쓰는지,

필요한 수학, 통계학을 얼마나 빨리, 쉽게, 제대로 이해해서 변형할 수 있는지가 중요할 뿐이라는 걸 깨닫게 되고 나서야,

그 “쌍용” 교수님들의 뜻을 이해할 수 있었으니, 아직 풋내기 수준도 안 되는 학생들이 이걸 알게 되기는 쉽지 않겠지.

 

정상으로 올라가는 뒷문

참고로, S대 경제과 입학생 200여명 중 1학년 때 경제학 박사를 Harvard, MIT 같은데로 가겠다고 하던 애들이

아무리 안 되어도 50명은 넘었다. S대와 입학생 평균 수준에 차이가 없는 KY 대학을 포함하면 숫자는 더 늘어날 것이다.

그렇게 “하고 싶었지만” 정작 박사 지원을 하고 자기 마음에 안 드는 학교라도 박사를 “갈 수 있는 숫자”는 1년에 20명도 안 된다.

나처럼 석사 이후에 다른 전공으로 “탈출”하는건 그나마 약과고, 압도적인 다수는 학부 3학년도 되기 전에 포기한다.

가끔 성적 좋은데도 취직했던 선배들은 1년을 채 못 다니고 “ㅈ같아서”라며 때려치우고 늦게 돌아돌아서라도 박사 유학 가시던데,

그 숫자를 포함해도, SKY 다 포함해서 1년에 20명 채우기 쉽지 않은게 현실이다.

(그나마 우리나라는 인구 숫자 대비 대학원 가는 비율이 압도적으로 높은 나라 중 하나다ㅋ)

 

뭔가 배우고 싶다는 이유만으로는 절대 문을 열어주지 않는 그 고급 지식의 문을, 열고 들어가는게 너무 힘드니까,

수준을 최대한 낮춰서, 문과도, 경영학과도, 예체능 출신도, 노력하기만 하면 따라올 수 있는 MBA AI/BigData 라는 프로그램을 만들어놨다.

긴 학위과정 경험상, 학부 2학년 까지는 그래도 잘 가르쳐주기만하면 많이들 살아남더라고. 그거만해도 충분히 세상에 써먹을 수도 있었고.

일종의, 맨 꼭대기 층에 올라가려니 왠 덩치가 막고 있어서, 뒷문으로 올라갈 수 있도록 우회로를 만들어 놓은 셈이다.

 

공학수학 포기하고 군대갔다가 1타 강사한테 100만원짜리 강의 듣고 이해한 다음 공대에서 살아남았다는 어느 후기도 기억나네.

“잘 가르쳐주고”, “공부하려는 의지만 있으면” 학부 2학년 수준까지는 충분히 살아남을 수 있다.

 

학부를 날로먹은 대부분의 국내 대학생들에게 이마저도 쉽지 않은 도전이라는걸 충분히 인지하고 있지만,

정말 이것도 안 하면, 다른 교육 과정을 거쳐서라도 이 정도 레벨 지식을 못 갖추면,

학부 저학년 수준도 못하는 주제에 감히 Data Scientist라는 타이틀을 달고 살 자격이 없다고 생각한다.

(그리고 국내에 Data Scientist 타이틀 달고 살 자격이 있는 인재가 정말 몇 명 없다.)

 

앞 문은 커녕, 뒷 문으로도 꼭대기 층에 올라간 사람이 없다는 뜻이다.

 

(비전문가들 용으로 1-dimensional 그래프 그리느라 자세한 내용을 생략한거면 몰라도, 실제로 저렇게 믿고 있다면 저 그래프 만든 Andrew Ng도 지식의 범위가 공송한 공돌이들 수준을 벗어나지 못하는거…. 단순 데이터 절대량이 중요한게 아닌데…)

 

프로그래머 (진퉁) vs. 코더 (짝퉁)

개발자들 세계에서 “프로그래머”라는 표현 말고, “코더”라는 멸칭으로 분류되는 하위 그룹이 있던데,

같은 맥락으로 Data Scientist라는 표현 말고, Data Engineer, 아니 Data coder 라고 부르는게 맞지 않을까?

 

증권업계에 지식없이 5만원짜리 주식을 3만원에 상장하는 중인데 상장하면 “따상”쳐서 곧 20만원 된다고 “썰”을 풀며 세일즈 하는 사람들

(더 심하게는 아는게 없으면서 안다고 엄청 부풀리고는 그걸 레버리지로 다른 정보 얻어먹고 아는체 하는 사기꾼들)을

“마바리”라는 속어로, 아니 비속어로 부르는 표현이 있다.

 

학부 졸업하고 첫 직장을 외국계 증권사 IB팀으로 들어가서 이런저런 접대 술자리를 따라다니다가 그런 “마바리”들,

우리끼리는 “양아치”라고 부르던 사람들을 진짜 수도 없이 많이 봤다.

성공한 양아치 중에는 미국 명문대 경제학 박사를 했지만 영어 한 마디 못 하면서 인맥빨로 국내 대기업 상무까지 하는 것도 봤지만,

대부분의 실패한 양아치들은 40대 중반이면 “셔터맨” 인생을 살더라.

 

기초 지식을 탄탄하게 갖추는 것의 가치를 전혀 이해 못하고 그냥 복붙해서 내일 바로 결과물이 팍~ 튀어나오는 것 밖에 모르는 3류 국가이긴 하지만,

그래도 마바리, 양아치를 길게 쓰는 조직은 바보 조직 밖에 없다.

그 대기업 상무 양아치도 외국인 보스 데리고 미팅가보니 “You know~ you know~”를 10분동안 100번이나 테잎 꼬인거처럼 반복하는 수준이었는데,

결국 학위 외에 지식, 경험, 즉 실력이 없으니 대기업 회장의 위기를 구원해줄 수 있는 인맥 빨이 끝나자마자 댁으로 돌려보내더라.

교수 채용하려다가 그렇게 실력없이 학위만 있는 “박사님”들 정말 많이 봤었다.

가끔 면접 때 너무 어이 없어서 MBA AI/BigData 수업 수준 수학으로 지적하면 “수학적으로 고민을 많이 했나보네요…” 이딴 소리하는 그런 분들…

(우리학교 MBA AI/BigData 와도 졸업하기 쉽지 않은 수준인 분들이었다.)

하루빨리 학위 팔이 하실 수 있는 양아치 집단을 찾아서 공무원처럼 복지부동하고 사시기 바란다.

 

좋은 회사, 우수한 인력이 모이는 조직은 그런 마바리, 양아치를 빨리 걸러내고, “동료가 복지”인 기업 문화를 구축하는 곳이다.

그런 기업 문화를 갖추는 기업에 들어갈려면 당신도 그런 수준이어야 하지 않을까?

 

무조건 구글 직원 하고 싶어요~ 그러다가 “코더”로 쓰고 버리는 직원 되는걸로 만족하고 살래?

아님 구글의 핵심 인력들과 서로 “대화가 통하는” Data Scientist가 될래?

Similar Posts