현재 회사 생활 하면서 가장 많은 노력을 기울인 것이 머신러닝과 모델링 공부였다. 그리고 가장 많은 시간을 들인 것은 자연어 처리와 CNN, RNN에 대한 공부였다. 문제는 이것이 들인 시간에 비해서 내가 뭔가 만들어 내는 것이 많지 않았고 내 일의 대부분은 마케팅 시스템 유지와 설계였고 그것을 위한 오라클 쿼리를 짜는데 대부분의 시간을 보냈다. 물론 그 중간에 머신러닝 모델을 하나 만들기는 했지만 중간에 너무 많은 간섭이 있었고 내가 하고 싶은데로 한것이 거의 없을 정도로 남의 모델을 대신 만든다는 생각이 강했다. 사실 그때에는 하도 데였고 이렇게 남의 일을 대신 하는게 과연 옳은가 고민하다가, 일단 경력 1년은 채워야 하지 않을까 생각하면서 일하다 보니 조직 개편되고 더 이상 이런 고민은 안하게 되었다. 아마 계속 있었으면 정말 이직을 했을 것으로 판단된다.

 

 그 뒤에는 다른 분석 업무를 하면서 Decision Tree를 활용해서 분석을 하고 다른 업무를 진행하면서 어느 정도 익숙해졌을 무렵에 예전에 해보고 싶었던 디지털 분석 업무를 시작하게 되었다. 원래부터 해보고 싶었던 분야이기도 하고 잘하는 분야라고 생각해서 정말 2달 정도 미친듯이 일하면서 데이터에 익숙해졌고 각종 문서를 섭렵하면서 데이터에 대한 감을 익히고 구조에 대해서 익힐 수 있었다. 그럼에도 불구하고 데이터 분석을 진행하면서 데이터 로그를 수집하는 방법 자체에 대해서 고민하다가 결국 앱 자체에 대해서 고민하는 단계까지 이르렀다. 사실 일하다가 보면 데이터 그 자체보다는 그 데이터 자체가 맞는지 틀리는지를 고민하는데 오히려 더 많은 시간을 들일 수 밖에 없었다. 원래 생각했던 모델링이 아니라 고객의 행동 그 자체를 분석하려고 하다보니 행태 자체를 이해하려고 했고, 그러다보니 데이터 자체가 이상하다는 벽에 부딪힐 수 밖에 없었다. 

 

 머신러닝의 경우 개별적인 고객의 행동을 모아서 하나의 방향 또는 행동을 예측하는 것이기 때문에 하나하나가 모두 맞을 필요는 없다. 그러나 그 전에 고객의 행태를 이해하고 기본적인 데이터 분석을 하려면 고객 데이터를 하나하나 고민하면서 톱니바퀴 굴러가듯이 하나하나 잘 맞아야만 했다. 머신러닝 모델링은 복잡한 문제를 단순화해서 예측하는데 중점을 둔다면, 행태 분석은 고객의 행동을 이해하고 전반적인 흐름(Flow)을 이해해야 하는 것이니까 앞뒤가 안맞는 것은 모두 찾아서 교정하고 틀린 것은 맞춰야만 한다. 이런 전처리 과정에서 가장 중요한 것은 데이터를 얼마나 유연하고 빠르게 핸들링 하느냐였고 나는 나름 이 부분에서는 그동안 공부해 놓은 것도 있고 실전 데이터도 충분히 다뤘기 때문에 어느 정도 자신이 있었다. 

 

  그러나 가장 고민이 되었던 부분은 데이터 그 자체가 앞뒤가 안맞는 것과 WAS 로그 데이터와 고객의 실제 기기에서 로딩되는 정보를 분석한 결과가 불일치하는 것이엇다. 나는 세부 로그 정보와 태깅 정보를 맞추면서 고객의 행동의 인과 결과를 찾아가려고 하는데, 데이터 자체가 일관적이지 않은 것이 계속해서 발견되었다. 사실 그거는 태깅의 문제가 아니라 앱 자체의 문제라는 결론이 났고 나는 앱 자체에 대해서 공부해야 한다는 생각을 하게 되었다. 원래 머신러닝이나 딥러닝 일을 해보려고 이직한 것이었는데, 현재 주어진 일을 하려면 대부분의 시간을 데이터 검증하는데 써야 했고 그러려면 앱의 메커니즘 자체에 대해서 이해해야만 했다. 뭐, 대충 일하는 방법도 있기는 한데 내가 실무자이고 대강 일하기에는 내 연봉이나 연차가 허락하지 않는다는 생각이 들어서 바닥부터 좀 봐야겠다는 생각이 들었다.

 

 

 HTML/CSS는 예전에 방송대 다닐때 내가 진짜 못하는 분야이기는 했지만 그래도 어느 정도 배워 놓은 것도 있고 무엇보다 이전에 공부해 놓은게 있어서 빨리 끝낼 수 있었고 자바스크립트는 예전에 배워 놓은게 있지만 하나하나 착실하게 하려고 생활코딩 자바스크립트 입문부터 듣고 있다. 최종 목표는 리액트로 앱이나 분석 결과를 보여주는 리액트 페이지를 만드는 것이다. 예전 같았으면 그냥 닥치고 리액트 앱부터 유튜브 검색해서 만들겠지만, 지금은 그럴 시간이 없다. 시간 날때 자바 스크립트 기본부터 착실히 해두고 만들어야 안그러면 중간에 뻑나는 문제점이 생긴다. 기본기가 없으면 어느 순간에 벽에 부딪히게 된다. 그리고 아무리 강의를 많이 들어도 현실적으로 뭔가 만들지 않으면 그냥 자잘한 것들만 아는 사람이 된다.

 

 내가 SAS에서 벗어나기 위해서 오랫동안 노력했지만 정작 새로운 회사에서 주력으로 Oracle, Impala, Python을 써야 할 수 밖에 없었을때 가장 빠르게 새로운 업무에 적응하고 SAS를 안쓰게 되었다. 다시 SAS로 코딩을 하라고 하면 할 수 있겠지만 지금은 Impala + Python이 가장 효율적으로 코딩할 수 있는 상태이다. 사실 PySpark을 써보고 싶기는 하지만 그거는 제약이 있어서 내가 접근이 안되니까.

 

 좀더 해보면 자바스크립트 입문도 거의 끝나고 남은 강의도 연휴 기간내에 마무리 할 수 있다. 그게 마무리 되면 타입스크립트와 리액트로 넘어갈 수 있겠지. 

 

 현실적인 목표는 리액트와 자바스크립트로 내가 만든 분석 자료를 정리하는 웹페이지를 만드는게 현재 목표이다. 현실적인 목표를 만들어야 아무래도 학습 속도가 나오지 않을까. 그동안 Java, C, C++ 등을 배웠지만 실제 뭔가를 만들지 않았기 때문에 그냥 배웠구나라는 생각만 했으니 말이다. 

반응형

'내 이야기' 카테고리의 다른 글

온 몸이 아프다.  (0) 2024.03.02
아버지 내일 수술  (1) 2024.02.18
2014 노트북을 3년 넘게 사용중입니다.  (1) 2024.02.07
투자는 잼병인가.  (0) 2024.01.31
은퇴 그 이후의 삶에 대해서  (0) 2024.01.28

+ Recent posts