회사에서 머신러닝 업무하는 동료보면 항상 이거시도해보고 계산 돌리고, 저거해보고 계산 돌리고 합니다. 결과가 바로바로 나오는 것이 아니라 기다리는 시간도 만만찮더군요. 결국은 어떤 시도를 하느냐가 중점인데, 수학과나 데이터쪽 공부한 사람은 머릿속에서 대충 계산 처리힌 후에 입력해서 결과가 나올때마다 진전이 있는데, 그런거 없이 그냥 컴공과 나온 사람은 bruteforce로 주먹구구 시도만 하더군요. 몇개월이 지나도 쓸모있는 결과가 예상대로 안나오니 ceo도 별로 탐탁해 하지 않아하구요. 그런 부트캠프에서는 텐서플로 사용법이나 파이썬정도 가르쳐 줄텐데 근본없이 그런걸로는 직장잡아도 오래못갈것 같다는 의견입니다.
예를 들어 CNN이 왜 동작해야만 하는지(기본적으로 matched filtering을 정교하게 구현한 것), 왜 PCA를 하면 dimensionality reduction(eigenvalue decomposition)이 된다던지, 왜 gradient descent가 동작해야만 하는지, decision tree는 왜 그렇게 만들어야 하는지(information theory), MLE와 Bayesian이 뭔지…. 수식으로 써 놓은 것 말고 직관(혹은 느낌)적으로 해석할 수 있어야 진도가 나갈 것 같네요. 코딩만 배워서는 사상누각일 것 같습니다.
미래를 예측해보자면, machine learning이 너무 발전해서 사람이 할게 없어지고 Big Data쪽 거품 빠지면 Data Scientist들은 일자리가 없을듯… 진짜 machine learning이 아닌 Business Intelligence 비스무리한거 하면 별로 경쟁력 없을듯…