Elon Musk가 공학도라고? 학위는 물리학이랑 경제학인데?

pabii research

제대로 대학 교육을 받지 않은 분들이 항상 하는 말이 있다.

대학이라는게 별거 있어? 실용적이어야지

당장 돈 벌이 안 되는걸 왜 배워?

이런 분들에게 요즘 자주 듣는 사례가 Elon Musk라는 실리콘 밸리 어느 곳에서 온갖 기괴한 사업들을 하고 있는 세계 최고의 부자 이야기다.

그런데, 혹시 Elon Musk가 학부 학위 2개 밖에 없고, 그 2개가 물리학경제학이라는 사실은 알고 있으신가?

우리나라처럼 공학에서 만들어낸 마케팅에 세뇌되신 분들은 충격을 먹는다.

물리학이랑 경제학 배워서 어떻게 저렇게 엔지니어로 사업을 키울 수 있었을까?

그러다 스탠포드 재료공학 박사 과정에 들어갔었다는 문구를 보고는 “그럼 그렇지”라고 안심하는 표정을 짓다가,

2일만에 자퇴했다는 문구를 보고는 다시 충격을 먹는다.

인생에 단 한번도 엔지니어링 학위를 해 본적이 없는 사람이 어떻게 엔지니어로 사업을 하는걸까?

이 질문에 대해서 답을 하려면, 우선 한국과 서양 교육의 차이를 먼저 짚어야 한다.

 

한국과 서양의 교육 차이

쉽게 이야기하면, 우리는 암기형 교육, 서양은 논리 이해형 교육을 한다.

우리가 공식 암기하고 문제를 열심히 풀어내고 있을 때, 서양은 개념을 논리적으로 설명하고, 주변 사례를 붙여 응용을 시키면서, 아예 문제를 만들어내는 교육을 시킨다.

이런 차이를 대표적으로 확인할 수 있는 전공이 우리나라 공대와 서양 명문대들의 공대다.

우리나라 공대는 1학년 미적분학 수업 때부터, 공식을 달달달 외우고, 단 시간 안에 미친듯한 속도로 문제를 풀어낸다. 문제들이라는게 공식만 대입하면 바로 풀어낼 수 있는 1차원적인 수준이다.

서양 명문대들의 공대는 개념을 논리적으로 설명하고, 매주 과제, 연습문제, 시험 문제도 전광석화의 속도로 많은 양의 문제를 푸는게 아니라, 뭔가 스토리가 있다.

고교시절에 수학 주관식 문제들을 보면, A와 B가 뭐라뭐라 상황이 주어졌는데, 그 상황에 어떻게 대처하고, 그런데 거기서 누가 무슨 결정을 해야하는데, 그 때 값은 어떻게 되는가는 식으로 물어봤던 스타일이었는데, 대학에서 배우는 내내 그런 식으로 훈련을 받는다.

 

한국과 서양 교육의 결과물

취직해서 일을 하면, 서양에서 이상한(?) 듣보잡(?) 학교를 나와서 부트 캠프로 코딩 배운 직원들이 만든 결과물이 서울대, 카이스트 같은 국내 최고 명문대 출신 개발자들이 만든 결과물보다 훠얼씬 낫다.

왜? 우리나라 개발자들이 개발 작업을 할 때, 선을 하나 그으려면 y=ax+b라는 식으로 쓰고, 이걸 곡선으로 만들려니 y=ax^2+bx+c라는 식으로 입력하고 있는데, 어정쩡한 결과물이 맘에 안 들어서 뭐라고 지적질이 나오면, 더 못한다고 딱 잡아뗀다. 곡선의 위치를 옮기자고하면 화를 낸다. 모든 계산을 다시해야되기 때문이다.

서양 개발자들은 y=ax+b라는 식을 엎고 곡선을 만들어야되면 y=a x sin(bx) + c로 식을 바꿔 쓴다. a, b, c값을 적정하게 바꿔주면 얼마든지 곡선 모양을 다르게 할 수 있고, 곡선의 위치를 옮기는 것도 쉽다. 시작점만 바꿔주면 알아서 그 곡선이 그대로 재현되거든.

서울대, 카이스트 출신이 삼각함수를 몰랐을까?

한국 개발자들은, 여기저기 “편하게” 쓸 수 있는 결과물을 보고 나면, 자세하게 뜯어볼 생각을 안 하고, 다음부터는 Library라는걸 찾았다며 서양의 개발 초짜 부트캠프 출신이 만든 코드를 가져다 쓰기 시작한다.

근데, 곡선 방향을 뒤집어야하는 상황이 생겼다.

우리나라는 저 곡선이 어떻게 나왔는지 모르니까 또 그 Library를 이상하게 꼬아넣기 시작한다. 못한다고 발을 빼는 개발자도 있고, 다른 Library를 써야한다고 주장하는 개발자도 있다.

서양 개발자들은 y= a x sin(bx+ pi) + c로 식을 바꿔 쓴다. pi 만큼만 평행이동 시키면 된다.

아니면 y = a x cos(bx) + c 로 바꿔쓰기만해도 모양이 꽤나 바뀔 것이다.

약간 평행이동, 혹은 Sine -> Cosine으로 다 해결할 수 있는 문제였다.

왜 느닷없이 멀쩡한 Library를 바꾸는거지?

수학 문제를 던져놓고 풀라고 하면 한국인이 100배는 더 효율적인 속도로 풀어낼 것이다.

그런데, 화면에 나오는 그래프를 뒤집으라고하면 우리의 결과물은 100배는 더 비효율적이다.

 

Elon Musk의 전공 – 물리학, 경제학

두 전공을 공부해 본 사람들은 알겠지만, 쉽게 이야기해서 응용수학과, 응용통계학과 라고 보면 된다.

영어권에서는 Applied Math & Stat이라는 단과대학을 흔히 볼 수 있다.

이런 공부를 하고 있으면, 내 전공의 문제를 풀기 위해서 수학과 통계학을 어떻게 이용해야하는지에 대해서 끊임없이 고민하게 된다.

훈련이 제대로 된 사람은 y= a x sin(bx+ pi) + c를 만들어내는 사람이 된다.

왜? 경제학과 응용 수학, 계산통계학을 공부한 내 입장에서 보면, 우리는 매번 이런 내용만 공부하고 살거든.

 

Netflix가 쓰는 추천 알고리즘

누가 그러더라. Elon Musk가 천재이기 때문에 물리학, 경제학 같은 이상한(?) 전공을 했어도 공학을 잘하는거다.

쉬운 반박 예제를 한번 들어보자.

Netflix가 지금 쓰고 있는 추천 알고리즘의 공식 명칭은 Latent Matrix Factorization (LMF)라고 한다.

우리가 만들어낸 서비스 이용 데이터에서 숨겨진 속성(Latent factor)을 찾아낸 결과물을 행렬 (Matrix)로 정리하는 계산법이다.

Netflix가 쓰는 추천 알고리즘이니까 당연히 공학도겠지?

글쎄. 이걸 만든 사람은 U-penn의 물리학 박사 1학년 학생이었다.

Latent Matrix라는걸 만들어내는 계산이 Factor Analysis라고 하는데, 이걸 통계학과는 여러 지식 중 하나로 가르치지만, 데이터의 핵심 속성을 뽑아내는건 물리학, 경제학을 비롯한 모든 응용통계학 작업에서는 거의 핵심적인 계산 작업이다.

당연히 물리학, 경제학 같은 전공을 한 사람들이 개발자들보다 LMF를 100배는 더 빨리 이해할 것이다.

 

국내에서 추천 알고리즘 쓰는 사례

국내의 어느 회사에서 추천 알고리즘을 만들고 싶다고 그래서 한번 자문을 해 준 적이 있다.

당장 데이터도 제대로 안 쌓아놨길래, DB구조를 어떻게 만들어서 내가 원하는 형태로 데이터가 뽑혀나오도록 DB팀을 돌려놔라고 해 줬었다.

1년쯤 후에 국내의 어느 산업공학과 교수가 그 프로젝트를 진행한다고 하던데, 예상대로 대학원 학생에게 모든 업무를 떠 넘겨놨더라.

저 위에 쓴 숨겨진 속성 (Latent factor)을 찾아내는 알고리즘부터 이해해야 제대로 만들 수 있을텐데, 그 대학원 학생에게 아무도 제대로 가르쳐주는 사람은 없고, 본인도 시간이 없으니 어떻게 됐을까?

Github에서 코드 구한 다음에 복붙하고, 그 코드에 맞게 자기네 데이터 구조를 강제로 변형하는 방식으로 프로젝트가 진행 중인 상태다.

알고리즘을 만들라고 했더니, 알고리즘에 맞춰서 자기 회사 DB를 바꾸고 있다.

옷에 몸을 맞추는 격이다.

Latent factor 찾아내는 알고리즘만 제대로 이해했으면 1달짜리 Scientific 업무였을 것이다.

제대로 이해가 안 된 탓에 6달짜리 Engineering 업무를 만들어 놨다.

그렇게라도 어찌어찌 완성해놨으면 되는거 아니냐고?

 

Engineering vs. Science

앞으로 그 회사는 새로운 서비스를 만들때마다 추천 알고리즘에 맞추기 위해서 계속해서 많은 Engineering 비용을 지불해야한다. 그 알고리즘이 원하는대로 DB구조가 나와야되니까. 매번 6개월씩 걸릴 것이다. 더 걸릴지도 모른다.

옷에 몸을 맞춰야되는데, 팔은 길어지고, 목은 휘고, 다리는 짧아졌으면? 그걸 몸이 다 맞추려면 장애인 만드는거 아니냐???

Scientific 작업이 됐었으면?

y= a x sin(bx+ pi) + c 쓰는 것처럼 기존에 쓰던 식에 pi 값만 더 추가해주면 된다.

1달짜리 업무? 1분짜리 업무한 다음에 넉넉하게 1주일 테스트를 해 보면 충분할 것이다.

 

Elon Musk의 4차원적인 사업들

Elon Musk가 우주왕복선을 실제로 쏘아올리고 난 다음에 크게 2가지 반응을 봤다.

저기에 쓴 알고리즘이 딴데도 적용되면 자율주행차 같은 것도 금방 만들 수 있겠네?

여기에 우리나라 공학도 출신들의 반응들을 보면,

어휴 우주왕복선에 쓴 코드 중에 자율주행차에 쓸 수 있는 코드가 몇 개나 있겠어?

자, 다시 y= a x sin(bx+ pi) + c로 돌아가보자.

우주왕복선은 천체물리학 지식의 결정체다. 지구궤도에서 탈출하는 계산, 지구궤도에 재진입하는 계산, 양쪽 모두가 우리가 알고 있는 물리학 지식들의 총 집합이라고봐도 충분할 것이다.

그 물리학 지식 중에는, 갑작스러운 상황이 생겼을 때 어떤 방식으로 어떻게 궤도를 수정해야하는지 자동대응을 하는 알고리즘이 당연히 들어가 있을 것이다. 잘못 궤도를 틀면 대기중에서 녹아 없어질테니까.

If-then을 수천만번 반복하며 모든 조건을 다 고려하는 단순무식 코드를 짜는게 아니라, 물리법칙의 기본 논리에 맞춰 코드를 짰으면 어떻게 될까?

기계의 사이즈, 속도, 주변 환경 같은 파라미터 값만 수정하면 같은 물리법칙으로 다른 기계의 자동대응에 쓸 수 있다.

제대로 지식이 있는 사람들이라면, 위의 2개 반응대신 이런 반응을 했어야 한다.

어디에 어떻게 로직을 짜 놨는지에 따라서 얼마나 많이 재사용할 수 있는지 결정되겠네.

 

우리나라는?

그 분들이 “현실“이라는 단어를 참 좋아하시더라. “현실적으로 어떤 이유로 이건 할 수 없고, 이게 없기 때문에 안 되고~”

아마 그 분들에게 우주왕복선에서 쓴 코드를 보여줘도 이해를 못하기 때문에 전혀 도움이 안 될 것이다. 그 분들에게 “현실“은 “이해못하기 때문에 손도 못 대는”게 현실이기 때문이다.

코드를 보여주는 대신에, 누군가가 Library를 만들어서 일반에 공개해주면 그 때부터는

우리도 Elon Musk와 동급의 기술력을 갖췄다

라고 주장할 것이다.

신문 기사를 내고, 사단법인 협회를 만들고, Library를 쓰는 사람들 모임을 만들고, 투자금을 대규모로 땡겨가겠지. 학교들은 Elon Musk 학과라는 걸 만들고, 거기에서 Library 쓰는 법을 배울 것이다.

그 Library가 기반하고 있는 물리학 지식, 더 정확하게는 응용 수학, 응용 통계학 지식은 아무도 관심이 없다.

약간 변형된 분야에 적용해야되는 순간이 오면 어떻게 될까?

입 터는 사람들만 많고, 해외대학의 유명한 교수님을 모셔와야된다고 예산만 더 달라고 그러면서, 더 이상 한 발자국도 진전이 없고, 정작 그 Library 뜯어서 Pi값 하나 더 추가하는 사람은 아무도 없겠지.

현실적으로 당신들은 지식이 없고, 지식을 공부하지 않을 뿐이다.

 

이래서 Data Science 대학원을 만들기로 했다.

2021년 8월 30일 개강 대학원 과정

  • MSc in Artificial Intelligence (상세설명) – 공식 석사 과정 – 향후 MSc AI로 표기
  • MSc in Data Science (상세설명) – 예비 석사 과정 – 향후 MSc DS로 표기
  • MBA in AI BigData (상세설명) – 비전공자 석사 과정 – 향후 MBA로 표기
  • DBA in AI BigData (상세설명) – 비전공자 박사 과정 – 향후 DBA로 표기

Similar Posts