데이터 과학자를 꿈꾸며
추천하는 사이트
서울대학교 류근관 교수님의 경제통계학 클릭
Pattern Recognition & Machine Learning을 잘 설명해놓은 웹페이지 클릭
베이지안 네트워크를 잘 설명해놓은 웹페이지 클릭
R을 이용한 통계 실습을 써놓은 블로그 클릭 (추천 알고리즘)
네이버포스트: Newton Highlight 통계와 확률의 원리 클릭
LG CNS 블로그 - AI 빅데이터 플랫폼 클릭
LG CNS 블로그 - 금융데이터 클릭
요즘 말이죠? 그야말로 데이터가 넘쳐나는 세상입니다. 현금 사용이 줄어들고 카드 사용이 늘어나면서 카드 회사들은 결제 정보를 실시간으로 수집하고 있습니다. 배가 고파서 새벽에 편의점 도시락을 산다면 그 새벽이라는 시간, 산 물건, 편의점의 위치 등 우리는 카드 한번 긁었을 뿐인데 여러 데이터가 만들어집니다(LG CNS 블로그).
그러면 혹시 IoT(Internet on Things), 한국말로 사물인터넷이라는 단어를 들어보셨나요? 다른 게 아니고 물건(Things)에 인터넷이 붙은 것입니다. 무선인터넷이 발전하면서 노트북이 랜선 없이도 인터넷을 사용할 수 있었습니다. 노트북이야 말로 최초의 IoT 기기가 아닐까요? 마찬가지로 전화기에 인터넷 기능이 붙은 것이 스마트폰입니다. 놀랍게도 전화기기에서 인터넷 사용이 가능해지자 스마트폰 시장은 엄청나게 커졌죠. 이미 우리에게 화장실 갈 때마다 가져가는 뗄레야 뗄 수 없는 친숙한 물건이 되어버렸다는 것이 그 증거입니다.
이제는 전화기만이 아니라 청소기, 냉장고, 전등, TV 등등 모든 가전제품에 인터넷이 붙을 것입니다. 우리가 어느 시간대에 청소를 하고, 몇 번 냉장고를 열었다 닫았는지, 불을 언제 끄는지, TV는 몇 시간이나 보는지 등등 가전제품을 사용한 기록을 인터넷을 통해 공유하고 관리할 수 있게 되는 것입니다. 가전제품을 하나의 컴퓨터로 관리할 수 있게 된다면 반대로 우리는 가전제품에게 일을 시킬 수도 있게 될 것입니다. 언제 청소를 할지, 언제 냉동고에 있는 고기를 해동시킬지, 퇴근할 때 불을 켜놓을지, 평소 관심있는 프로그램을 할 때 TV가 켜지도록 할지 등등 할 수 있는 일이 무궁무진합니다.
더 나아가서는 웨어러블, 한국말로는 입을 수 있는 기기가 발전해 우리 몸에도 인터넷이 붙을 것입니다. 운동할 때에 심장박동이 어떤지, 몸무게나 키가 어떻게 되는지, 감기에 걸릴 확률이 얼마인지 등등 우리 몸에 대해서 지금보다 더 자세히 알게 될 것입니다. 주치의나 개인 트레이너가 없더라도 말이죠.
그런데 말입니다.
이 모든 게 인터넷으로 연결되면 그 기록들이 전부 다 저장되어야 합니다. 다 데이터라는 말입니다. 엄청 엄청나게 많은 데이터들이 생겨날 것입니다. 데이터를 저장한다는 것은 다시 말해 컴퓨터 메모리를 잡아 먹는다는 뜻입니다. 또 그 데이터를 다시 꺼내보기 위해서는 잘 정리해서 저장해야 할 것입니다. 단순해 보이는 문제이지만 그것이 엄청나게 많기 때문에 해결하기 쉽지 않은 문제가 됩니다. 우리는 빨리 빨리 민족이니 기다리지 않고 빠르게 데이터를 저장하고 불러오려면 더욱 높은 수준의 기술력이 필요할 것입니다.
정말이지 데이터 천지인 세상이 되어가고 있습니다. 그런데 데이터 세상은 안녕할까요? 글쎄요. 저는 아직 한국을 비롯해서 많은 나라들이 데이터 세상을 맞이하는 중에 있다고 생각합니다. 앞으로 데이터 과학, 즉 수집-저장-관리-분석까지 연구하는 분야가 필요해질 것입니다. 이 세상을 데이터 세상으로 만들기 위해서는 데이터 과학이 발전해야 할 것입니다.
그렇다면 데이터 과학을 공부하기 위해서는 무엇이 필요할까요?
다음의 그림을 보아주세요.
위 그림은 데이터 과학은 Hacking Skills, Math&Statistics, Substantive Expertise의 조합이 필요하다는 것을 말하고 있습니다. 해킹 기술은 컴퓨터에 관한 지식입니다. 그리고 실제로 쓰이는 전문 지식이 요구됩니다. 데이터는 숫자일 뿐 그것을 해석하고 활용하는 것은 다른 문제입니다. 성인 남자 몸무게 평균이 60kg인 것은 누구나 다 알고 있는 평범한 사실이지만 신생아 몸무게 평균이 60kg인 것은 거인족이 존재한다는 증거가 되겠지요. 우리가 몸무게라는 분야를 잘 알지 못했다면 둘은 같은 문제라고 생각할 수도 있습니다. 예를 들어, 석유 공정 중에 기계의 온도가 1,000도가 넘는다는 사실은 석유 공정에 대해서 모른다면 아무런 정보도 되지 않겠지요?
여기에 수학과 통계 지식이 필요합니다. 저는 통계학을 시작으로 데이터 과학에 대해 이야기하고자 합니다. 자세히는 통계의 아주 기본적인 내용부터 기계학습까지 다루어보려고 합니다. 통계는 복잡할 뿐이지 전혀 어렵지 않습니다. 사실 통계라는 것은 모두가 경험으로 알고 있기 때문입니다. 우리는 어릴 때부터 과자는 많아야 좋은 것이고 숙제는 적어야 좋은 것이라는 걸 자연스럽게 느껴왔습니다. 통계도 마찬가지입니다. 기준을 세워 개수를 세고 어떤 것이 좋은지 나쁜지를 결정하는 것이 통계학입니다. 단지 직관적으로 이해하던 것을 논리적으로 분해해놓다 보니 어렵다고 느껴질 뿐입니다.
표본공간 사상 확률 확률변수 확률분포
여전히 통계라는 것이 어렵게만 느껴지는 분들을 위해 무작정 다섯 단어를 암기하라고 추천하겠습니다. 정의를 정확하게 외우고 있어야 더 높은 개념을 쌓을 수 있습니다. 제가 생각하기에 제일 기본적인 다섯 단어를 뽑아봤습니다. 배움은 주저할 필요 없습니다. 일단 이 다섯 단어만 들고 데이터 과학으로 들어가 보자구요!
사실 통계 공부에서 가장 어려운 점은 해괴망측한 용어입니다. 확률분포, 기대값, 가능도함수, 확률변수, 통계량 등등 알쏭달쏭한 말들이 많습니다. 이렇게 친숙하지 않은 용어가 많은 이유는 대부분이 일본어를 번역한 말이기 때문입니다. 조금 오래된 통계책을 살펴보면 어려운 한자가 많아 더욱 읽기가 힘들죠. 하지만 정작 이러한 일본식 용어도 사실은 영어를 번역해놓은 것입니다. 다시 말해, 우리는 영어 → 일어의 이중의 번역체를 공부하는 셈입니다. 그래서 앞으로의 용어는 영어로도 꼭 암기하는 것을 추천합니다.
다섯 가지 통계 용어를 공부하기 전에 우선 아래 질문에 대해서 답을 해봅시다.
동전을 계속 던졌을 때 두 동전이 연속으로 앞면이 나올 기대 시행 횟수는?
정답은 네 번입니다.
맞추셨나요? 별 거 아닌 것 같은 이 질문에 숨이 '헙'하고 막힌 이유는 생각보다 잘 읽히지 않기 때문일 겁니다. 더욱이 요상한 단어가 눈에 거슬립니다.
기대 시행 횟수?
이 말은 무슨 뜻인지 알 것 같으면서도 와닿지는 않지요.
걸스데이의 '우우~ 우우우' 하는 '기대해'라는 곡이 떠오를 뿐입니다.
하지만 정답을 보고나면 생각보다 허무합니다.
잠깐만 생각해보면 충분히 알 수 있기 때문입니다.
하나씩 차분히 설명을 해보겠습니다.
동전을 2개 던져서 나올 수 있는 모든 경우의 수는 네 가지 경우 뿐입니다.
{앞, 앞}, {앞, 뒤}, {뒤, 앞}, {뒤, 뒤}
여기서 두 동전이 모두 앞면이 나오는 경우는 이 중에서 한 가지입니다.
{앞, 앞}
그렇다면 4번 던지면 그 중에 한 번은 {앞, 앞}의 경우가 나오지 않을까라는 생각이 들지 않나요?
정답입니다!
이미 우리는 직관적으로 통계와 확률을 이해하고 있습니다. 통계와 확률은 전혀 새로운 내용이 아니라 하나씩 손가락으로 세어보는 것입니다.
그런데 말입니다.
사실 동전의 앞뒤가 어떻게 될지는 실제로 해야만 알 수 있지 않나요?
실제로 동전을 던져보면 우리가 생각했던 대로 네 번만에 모두 앞면이 나올 수도 있지만, 열 번을 던져도 안 나올 수도 있고 혹은 한 번만에 나올 수도 있지 않을까요?
이에 대한 답으로 우리는 확률이라는 것을 정의하게 됩니다. 역사적으로 살펴보면 처음으로 확률의 개념을 필요로 한 사람들은 도박사였습니다. 도박을 직업으로 한다는 것은 운으로 일확천금을 노리는 것이 아니라 어떤 도박판에서든 일정한 수입을 얻는다는 것입니다. 그래서 도박사들은 매 게임마다 자신의 수입을 계산할 수 있기를 바랐고 이에 확률이라는 개념을 발명했습니다. 다시 말하면, 확률을 이용하면 어떤 사건에 대해서 논리적으로 예측할 수 있습니다.
자, 다시 질문으로 돌아오면 네 번 던져서 한 번은 {앞, 앞}이 나올 것이라는 기대는 어디까지나 확률을 통한 논리상의 수치입니다. 사실 동전을 실제로 던져보면 결과는 네 번이 안 나오는 경우가 허다합니다. 단번에 {앞, 앞}이 나올 수 있고 열 번 넘게 던져서도 안 나올 수 있습니다. 하지만 동전을 많이 던지다보면 평균적으로 네 번 중에 한 번은 {앞, 앞}이 나온다는 사실을 알 수 있습니다.
조금 더 논리적으로 생각해보기 위해서 질문을 세 부분으로 나누어 봅시다.
(1) 동전을 계속 던졌을 때
(2) 두 동전이 연속으로 앞면이 나올
(3) 기대 시행 횟수는?
우선 동전을 계속 던졌을 때라는 부분에서 이 질문이 원하는 답이 실제로 던져서 나오는 결과가 아니라 확률로 추론한 수치임을 알 수 있습니다. 두 동전이 연속으로 앞면이 나올 부분은 게임의 방법을 말합니다. 동전을 한 개 던지는 것과 두 개 던지는 것은 모두 앞면이 나올 확률이 달라지겠죠? 또 연속해서 동전을 던지는 것과 하나씩 두 번 던지는 것도 조건에 따라서는 다른 게임의 종류로 분류할 수 있습니다. 물론 이 경우에는 두 동전을 순서대로 던지는 경우와 동시에 던지는 경우 모두 정답은 네 번이라고 생각해야 할 것입니다. 왜냐하면 두 동전에 대해서 아무 말이 없었기 때문입니다. 그렇다면 두 동전이 서로에게 전혀 영향이 없는 독립이기에 구분이 의미가 없다고 본다고 가정하는 게 일반적인 상식입니다. 독립이 아닌 경우에 대해서는 후에 조건부 확률에서 이에 대해 더 설명드리겠습니다.
마지막으로 기대 시행 횟수는? 부분에서 기대라는 말은 (1)에서 말한 의미를 축약해 놓은 것입니다. 다시 말해 (1)이 안 적혀있더라도 기대라는 말이 있다면 실제 수치가 아닌 확률적인 수치로 대답해야 한다는 뜻입니다. 앞으로 자주 나올 용어들 중에서 기대OO 이라는 용어는 모두 실제로 사건의 발생한 수치가 아니라 확률적인 수치를 뜻합니다. 특히 기대값이라는 말은 많이 들어봤을텐데 이는 그냥 기대하는 값입니다. 게임마다 실제 결과는 달라지지만 그 게임에서 기대하는 값을 줄여서 기대값이라고 말합니다. 여기서는 기대 시행횟수를 시행횟수의 기대값이라고 다시 표현할 수 있겠죠?
이렇듯 기대한다는 것은 확률적인 개념입니다. 다음 편에서 확률에 대해서 하나씩 뜯어보겠습니다. 그리고 확률과 관계된 다섯 단어를 소개하도록 하겠습니다.
데이터 세상으로 달려갈 준비를 조금만 더 해봅시다.