1.3 실무에서 쓰이는 통계분석
실무에서 쓰이는 통계학은 학문적으로 쓰이는 통계학과는 꽤나 다른 성격을 띄고 있습니다. 한 마디로 요약하면 논문에서는 그렇게 자주 쓰이는 회귀분석이 실무에서의 활용도는 글쎄? 라고 할 수 있습니다. 물론 이글도 데이터 분석을 주 업무로 하는 기업 및 직무는 해당사항이 적습니다. 하지만 해당될 수도 있습니다.
이유는 다음과 같습니다.
부장님 실장님들이 통계학을 잘 모르셔서 설득시키기가 어렵다. 또한 통계분석 모델링의 필요성을 크게 못느끼는 경우가 많다.
애초에 회귀분석으로 현상을 설명하고 예측하기에는 현실이 너무 복잡하다.
단순한 BI 화면, 보고서만으로도 충분히 일이 돌아가고 있는 상황이다.
- 물론 자세히 까보면 그냥 대충 덮어놓고 진행하고 있는 경우가 많을 수도 있다.
데이터 수집체계가 제대로 정리되지 않은 곳이 생각보다 많다.
- 무엇을 하고 싶어도, 제대로 하지 못하는 경우가 존재합니다.
어차피 실무는 공부 및 연구하는 곳이 아니라, 돈을 벌어야 하는 곳이기 때문에 이런 사항들이 생기기도 합니다. 회의 도중에 "통계학의 어떤 이론에 따르면..." 이런 식으로 회의를 진행하면, 데이터 분석에 큰 관심이 없거나, 잘 모르는 사람들은 이런 생각을 합니다. '여기가 직장이지 학술회인가?' 이런 관계로 실무에서의 통계학은 동료 직원들 및 상사들에게 공감을 이끌어 낼 수 있는 통계분석이 진행되어야 합니다.
공감을 이끌어 낼 수 있는 통계분석은 무엇일까요? 쉽게 말하면 딱 보기 좋은 시각화 자료입니다. 시각적으로 이쁘고, 이해하기 쉬운 그래프들로 구성된 대시보드를 작성하는 것이야 말로, 모두에게 공감을 이끌어 낼 수 있습니다.
실무에서는 크게 데이터 분석이 2가지로 나뉜다고 생각합니다.
- 현황분석을 해주는 통계자료 보고서 작업
- 홈페이지에 분석 플랫폼을 만들어, 사용자들이 원할때마다 이를 볼수 있도록 하는 시스템 구축 작업
1번의 경우에는 그래도 그나마 나은 경우입니다. 수집된 데이터를 그대로 긁어와서, 결과자료로 보여주면 됩니다. 또한 이제까지 선행되어있던 작업들이 존재하기 때문에 어려움은 크게 덜한 경우가 많습니다.
2번의 경우에는 머리가 좀 많이 아파집니다. 분석만 아니라, 많은 것을 고려해야되는 상황이 오기때문입니다. 1번과 2번의 차이를 비교하자면, 1번 작업은 요리를 하는 것과 비교할 수 있고, 2번의 경우에는 건물을 짓는 것이랑 비교할 수 있습니다.
1번
요리 : 재료 공수 => 재료 손질 => 요리 => 시식 (맛 평가)
분석 : 데이터 수집 => 데이터 전처리 => 분석 => 결론(검증)
음식은 맛을 보고나면 끝나듯이 보고서도 한번 만들면 끝입니다. 이런 경우엔 어찌 됐든 완성만 되면, 일단 주어진 일은 끝난 경우입니다.
2번
건설 : 설계도 작성 => 건설 => 입주 => 유지 보수 시작
구축 : 완성도안 작성 => 구축 => 운영 => 유지 보수 시작
시스템 구축은 정말 많은 단계들이 내포되어 있는데, 데이터 분석 파트만 다루었을 때만 얘기를 해보겠습니다. 건물은 다 지었다고 끝나는게 아닙니다. 건물을 지었는데, 제대로 공사가 안 된 곳이 있다면, 보수 작업을 다시해야 됩니다. 시스템 구축도 마찬가지입니다.
물론 기업마다 상황은 다 다르겠지만, 신경써야 할 부분은 다음과 같습니다.
시스템 운영 컴퓨터의 운영체제를 파악해야 됩니다.
- 저희가 주로 작업하는 로컬 컴퓨터에서는 암만 잘 돌아가도, 운영 컴퓨터에서 돌아가지 않으면 말짱 도루묵입니다. 로컬에서는 잘 돌아가는데...' 이런 변명은 통하지 않습니다. 무조건 운영 컴퓨터에서 돌아갈 수 있도록 해야합니다.
- 운영 컴퓨터는 사내 폐쇄망일 확률이 농후합니다. 사설 인턴넷망으로 접속하는 것이 불가능합니다. 이 말은 무엇이냐면, R, python등의 패키지들을 평소에는 쉽게 설치할 수 있지만, 사내 폐쇄망일 경우에는.... 음 이것또한 어떻게든 되게 만들어야 합니다. 그래도 R은 시스템 운영체제에 크게 영향을 받지는 않아서 패키지들을 운영 컴퓨터로 잘 옮기면 무리없이 돌아가는 편입니다.
SQL을 필수적으로 알아야 됩니다.
기업의 대부분 데이터는 SQL DATA BASE를 통해 저장되어 있습니다. 데이터 분석 프로그램으로 R, python 그 어떤 것을 쓴다해도, 기본적으로 SQL단에서 대부분의 전처리 작업을 해결하고 와야 운영체제에서의 작업이 원할해집니다.
상황에 따라 다르지만, SQL => R, python => SQL => 시각화(대시보드) Tool [자바는 항상 필수]로 넘어가도록 되어 있습니다.
- 이 때문에, 최대한 코드가 충돌하지 않도록 잘 구성해야 됩니다. 코드가 충돌하거나 혹은 꼬이기 시작하면 문제가 걷잡을 수 없이 커질 수가 있습니다. 이는 우리의 풍부한 야근 시간을 보장해주며, 혹시라도 사업 기간이 늦어지기라도 하면 누구 하나 멱살잡혀도 전혀 이상하지 않는 상황이 만들어 집니다.
- 또한 단계별로 코드가 너무 복잡하면 운영서버에서는 무조건 버그가 생기길 마련입니다.
- 단계가 복잡하기 때문에, 시스템 구동시간도 고려해야됩니다. 잘 짜여있다해도, 시스템이 켜질 때까지 오래걸린다면, 그것도 다시 해야 됩니다.
시간이 촉박합니다.
- 시스템 구축 사업은 보통 기간을 정해두고 진행되기 때문에, 시간에 매우 쫓기게 되어있습니다.
- 그냥 어떤 문제가 발생할지 모릅니다.
이런 관계로, 실무에서의 통계학 및 데이터 분석은 이론에 집중하기 보다는 지금 당장 결과물로 내놓을 수 있는 기술에 집중을 해서 학습을 하는 것이 더 효과가 좋습니다. 물론 고급 분석모형을 실무에 적용시킬려면, 탄탄한 통게학 지식 및 데이터 분석 기술이 필요한 것은 당연합니다.
요즘 데이터 분석직이 뜨고 있지만, 이 직무에 관심을 가지시는 분들께 한마디만 드리자면, 이 직무도 상당한 노가다 작업이 함께되는 직무임은 틀림 없습니다.