데이터 인사이트

데이터 전문가 칼럼
데이터 전문가가 전하는 데이터 노하우

[빅데이터 분석] 김진영의 측정과 분석 이야기(5회) : 도구가 인간을 만든다! 측정의 실제

작성자
관리자
작성일
2020-10-23 17:12
조회
107

김진영의 측정과 분석 이야기(5회)

도구가 인간을 만든다! 측정의 실제

 
글: 김진영 jink@microsoft.com 서울대 전자공학과 학부와 동대학원 석사 과정을 나와 IT 벤처기업에서 프로그래머로 일하던 중 정보 관리와 검색을 공부하고 싶어 미국 메사추세츠 주립대학 박사 과정에 노크해 ‘개인 정보의 접근을 위한 검색 및 평가 기법’으로 박사 학위를 받았다. 현재 마이크로소프트 본사에서 검색 품질 측정 전문가로 일하고 있다.
 

 

데이터 수집하기

데이터 기반의 측정 준비가 완료되었다면 데이터를 모으고 저장할 수 있는 수단이 갖춰진 셈이다. 이제 실제로 데이터를 모아야 할 차례다. 흔히 생각하는 측정은 데이터 수집을 의미하지만, 앞 연재를 읽은 독자라면 데이터 수집은 측정 프로세스의 일부라는 점을 이해할 것이다.

"실험이 다 끝난 후에 통계학자를 부르는 것은, 의사에게 사체 부검을 부탁하는 것과 같다. 아마 통계학자는 왜 실험이 실패했는지를 알려줄 수 있을 테니까." _로널드 피셔

어쨌든 현대 통계학의 초석을 쌓은 통계학자 로널드 피셔의 말처럼 데이터 수집은 실제 측정이 이루어지는 첫 단계로서, 분석에서 사용될 재료를 얻는 중요한 단계다. 구슬이 서 말이라도 꿰어야 보배라지만, 일단 꿸 구슬이 있어야 한다. 여기서는 데이터 수집 과정에서 주의해야 할 점과 데이터 수집의 종류, 단계를 알아본다.

 

데이터 수집 시 명확한 측정 목표가 기준

데이터 수집 단계에서 가장 중요한 덕목은 일관성이다. 데이터를 모으는 과정에서 측정 방법이 바뀐다면 결과의 품질을 보장할 수 없기 때문이다. 따라서 중간에 더 좋은 측정 방법이 생각났다고 하더라도 처음에 측정을 결심한 기간만이라도 동일한 방법을 유지해야 한다. 개선된 측정 방법을 적용하는 것은 데이터 분석이 끝나고 다시 측정을 시작할 때 생각해볼 문제다. 이런 이유에서도 명확한 측정 목표를 갖는 것은 매우 중요하다. 뚜렷한 지향점이 없으면 일관성을 유지하기 어렵기 때문이다.

하지만 이는 무조건 초기 계획을 고수해야 한다는 말은 아니다. 계획한 기간이 끝나기 전이라도 측정 목표가 달성되었다면 그 시점에서 측정을 그만둘 수 있는 유연성도 필요하다. 이러한 측정의 조기 종료는 시간과 비용을 줄이는 효과적인 방법인데, 이런 종류의 의사결정을 내리는 방법에 대해서는 계속되는 연재(?)에서 자세히 설명할 계획이다. 물론 같은 원리로 측정 목표를 달성하지 못한 경우에는 기간이나 비용을 더 투입해서 그 목표를 달성해야 할 것이다.

또한 많은 측정이 전체 현상에서 추출한 표본을 대상으로 이루어지는데, 분석 과정에서의 오류를 최소화하기 위해서는 표본 선정의 무작위성(randomness)이 보장되어야 한다. 이는 다시 말하면 측정이 이루어진 시간, 장소, 참가자 등의 선정에 측정자의 주관이 반영될 여지가 최소화되어야 한다는 뜻이다. 무작위성이 중요한 이유는 다음 장에서 소개할 대부분의 분석 방법이 무작위로 추출한 표본을 가정하기 때문이다.

 

경험 추출법

무작위 추출의 사례로 'Flow'의 저자 미하이 칙센트미하이 교수가 개발한 경험 추출법(Experience Sampling)을 들 수 있다. 이는 실험 참가자가 일상에서 느끼는 평균적인 감정 상태를 측정하기 위한 방법으로, 참가지는 미리 정해지지 않은 무작위의 시점에 울리는 알람을 신호로 자신의 감정을 기록하게 된다. 이 방법을 통하여 참가자는 자신의 기분이나 주변 상황에 영향이 측정된 감정에 주는 영향을 최소화할 수 있다.

이처럼 데이터 수집에는 생각보다 고려할 사항이 많다. 따라서 효과적인 데이터 수집을 위해서는 앞서 언급했듯이 수집된 데이터를 지속적으로 모니터링할 수 있는 시스템이 필요하다. 수집된 데이터를 보면서 문제점도 조기에 파악할 수 있고, 현재까지 수집된 데이터에 대한 실시간 분석을 통해 데이터 수집을 언제 중단할지에 대해서도 결정할 수 있다. 이런 이유에서 많은 측정 장치 및 소프트웨어는 수집된 데이터를 모니터링할 수 있는 수단을 지원한다.

 

데이터 수집의 종류

측정을 위한 데이터 수집의 방식은 측정 대상과 문제의 유형에 따라 여러 가지가 있는데, 대부분의 측정 상황에서는 여러 조건을 가정하고 각각에 해당하는 데이터를 모아야 한다. 특히 이 책에서 주로 다루는 성장을 위한 측정은 크게 현재 상태와 변화된 상태에 해당하는 데이터를 어떻게 모으느냐에 따라 구분할 수 있다. 여기서는 크게 현황 측정 이후에 변화의 측정을 진행하는 연속 측정과, 현황 측정과 변화의 측정을 동시에 진행하는 동시 측정으로 나눠서 소개한다.

우선 현황과 변화를 한 자리에서 측정하는 경우를 동시 측정이라고 부를 수 있다. 예컨대 온라인 서비스의 성능을 측정하는 방법인 A/B 테스트에서는 다른 그룹의 사용자에게 다른 버전의 서비스를 제공하는 방식으로 두 가지 경우의 차이를 동시에 시험해볼 수 있다. 이 경우 시간에 따른 차이가 측정 결과에 영향을 끼치지 않는 장점이 있다.

 



[그림] 연속 측정과 동시 측정

반대로 연속 측정은 몸무게 등 시간에 따라 변화하는 대상을 일정 간격을 두고 측정하는 방법이다. 여기서 중요한 것은 연속되는 측정값이 최대한 유사한 환경에서 측정되도록 하는 것이다. 예컨대 매일 측정하는 값이라면 같은 시간에, 매주 측정하는 값이라면 같은 날짜에 측정값을 얻는 것이다. 성장을 위한 측정의 대부분이 여기에 해당된다.

 

변화를 위한 측정의 단계

투수가 공을 던지기 전에 발로 땅을 고르듯, 정확한 현황 파악이 이루어져야 변화의 본질을 파악할 수 있다. 이런 의미에서 성장과 변화를 위한 측정이라도 첫날부터 변화를 측정하려고 해서는 안 된다. 데이터 수집의 첫 단계는 별다른 조치를 취하지 않고 현재의 상태를 정확히 반영하는 데이터를 모으는 것이다. 탐험가들이 자신이 모르는 지형을 탐험할 때 꼭 자신이 서 있는 위치를 정확히 표시하고 출발하듯이, 이렇게 모은 데이터는 나중에 어떤 종류의 변화에 대한 효과도 측정할 수 있는 귀중한 자료가 된다.

 

오늘의 측정 레슨

새로 활동량 측정기(예: 핏빗, Fitbit)를 장만했으니 당장 운동부터 시작하겠는가? 먼저 평소 자신의 운동량을 정확히 파악하는 것이 순서일 것이다. 일주일만 평소대로 생활하고, 그 후부터 천천히 운동량을 늘려본다. 그러면 운동의 효과를 정확히 알 수 있다. 현재 자신의 위치를 정확히 모른다면 어디로 향하고 있는지도 알 수 없다는 사실을 명심하자!

현황을 측정하는 일에는 다음과 같은 사항을 고려할 필요가 있다. 우선 측정 대상에 영향을 줄 수 있는 다양한 요소를 변화시키면서 측정값에 대한 영향을 관찰할 수 있어야 한다. 예컨대, 사람의 체중을 측정한다면 측정값이 아침 저녁으로 바뀌는 것을 관찰해야 할 것이다. 또한 요일별로 달라질 수 있는 측정값이라면 적어도 일주일 동안 측정을 지속해야 한다. 현황 측정을 완료한 후에는 자신이 측정하고자 하는 대상과 이루고자 하는 목표에 대해 훨씬 더 잘 이해하게 된다. 이 단계에서 알아야 하는 것은 다음과 같다.

 

- 측정값에 영향을 주는 요인은 어떤 것이 있나?
- 자연 상태에서의 측정값은 어떤 범위에서 움직이는가정을 시도할 수 있다. 현황 측정이 실험 과정에서 대조군에 대한 데이터를 확보하는 과정이라면, 변화 측정은 실험군에 대한 데이터를 얻는 작업이다.
결국 여기??하는 것이므로, 중요한 것은 앞에서와 동일한 환경에서 데이터를 수집하는 것이다. 측정 환경과 방법 등 측정 결과에 영향을 줄 수 있는 요인을 모두 통제해야 한다.

 

데이터 처리하기

"대단한 성취의 이면에는 대부분 사소해 보이는 준비과정이 필요하다". _로버트 슐러

분석에 사용할 수 있는 데이터 수집이 완료되면, 대부분의 경우는 수집된 원본 데이터를 분석에 사용할 수 있는 형태로 처리하는 처리과정이 필요하다. 여기서는 이런 준비 과정을 몇 가지 단계로 나누어 알아본다.

 

1) 데이터 준비

데이터 수집이 끝났으니 바로 분석을 해서 결론을 도출하고 싶더라도 수집된 데이터가 분석에 활용되기 위해서는 대부분 적절한 처리를 거쳐야 제대로 분석할 수 있다. 이 번에서는 이처럼 분석을 위해 데이터를 준비하는 과정을 알아보자. 사실 이런 데이터 처리는 데이터 분석을 직업으로 하는 사람들이 대부분의 시간을 보내는 작업이기도 하다. 통계에 따르면 데이터 사이언티스트들은 50-80%의 시간을 이런 데이터 처리에 쓴다고 한다.

데이터 준비의 첫 번째로 원본 데이터를 분석 툴에서 원하는 포맷으로 변환하는 노력이 필요하다. 측정 장치에서 만들어내는 데이터의 포맷은 제 각각인 경우가 많고, 어떤 경우에는 측정 장치에서 데이터를 내보내는(export) 기능이 제대로 지원되지 않기 때문이다. 또한 데이터 준비 과정에서 원본 데이터에서 흔히 발견되는 데이터의 누락 및 오류 문제도 해결해야 한다. 누락된 데이터를 최대한 복원해 보고, 필요한 경우에는 문제가 있는 부분을 바로 잡아야 한다.

이러한 데이터 처리의 방법은 주어진 측정 문제에 따라 다르기 때문에 다음 회에 구체적으로 소개하겠다. 하지만 대부분의 데이터는 테이블 형태를 띠기 때문에, 스프레드시트나 데이터 처리에 특화된 프로그램을 쓰게 된다. 즉 데이터 준비는 테이블 형태의 원본 데이터를 받아, 가공된 형태의 테이블을 생성하는 작업이다.

 

2) 지표 계산하기

데이터 처리 과정에서 가장 중요한 단계가 원본 데이터를 바탕으로 다양한 지표를 산출하는 것이다. 지표는 측정 데이터를 요약하는 수치로, 현재 상태를 파악하고 측정 목표의 달성 여부를 판단하는 과정에서 핵심적인 역할을 담당한다. 이런 의미에서 측정을 '효과적인 지표를 정의하고 이를 개선하는 과정'으로 정의할 수도 있다.

일단 데이터가 모아지면 지표는 간단히 측정값을 평균식으로 계산하면 된다고 생각하기 쉽다. 하지만 자신의 측정 목표의 핵심을 관통하며, 측정 대상의 특성에 맞는 지표를 디자인하는 것은 해당 분야에 대한 고도의 지식을 요구하는 작업이다. 그리고 제대로 된 지표를 갖췄는지가 해당 분야에서 개인이나 조직의 측정 성패를 좌우하기도 한다.

이를 극적으로 보여주는 사례가 선수 각각의 실력에 대한 측정 기법의 발달이 야구 팀의 성적에 미치는 영향이다. 영화 및 책으로도 잘 알려진 ‘머니볼(Moneyball)’에서는 오클랜드A 구단의 단장인 빌리 빈(Billy Bean)이 선수들을 효과적으로 선발하고 평가하여 상대적으로 열악한 예산으로 자본이 좌우하는 메이저리그에서 정상급의 성적을 거두었다는 이야기가 나온다. 이러한 빌리 빈의 혁신을 가능하게 했던 요인은 WAR(Wins Above Replacement) 등의 혁신적인 지표의 개발이었다.

 

3) 지표의 유형

지표는 수집된 데이터를 바라보는 관점이라고 생각할 수도 있다. 따라서 같은 데이터를 가지고도 여러 가지 지표를 정의해서 사용할 수 있다. 지표의 대표적인 유형은 다음과 같다.

- 총량 지표 vs. 비율 지표: 수치의 합으로 계산되는 지표가 총량 지표라면, 두 가지 수치의 비율로 계산되는 지표는 비율 지표라고 할 수 있다.
- 선행 지표 vs. 후행 지표: 지표의 목표가 어떤 현상의 특성을 수치화하는 것이라면, 선행 지표는 현상이 변화하기 전에 먼저 움직이는 지표다. 반대로 후행 지표는 현상이 변화한 후에 이를 따라가는 지표다.
- 설명적 지표 vs. 탐험적 지표: 설명적 지표는 잘 알려진 대상을 묘사하는 역할을 담당한다면, 탐험적 지표는 우리가 잘 모르거나, 적어도 정확히 수치화할 수 없다고 생각하는 대상에 대한 지표다.

 

4) 좋은 지표의 조건

지금까지 지표의 중요성을 알아봤다. 그렇다면 어떤 지표가 좋은 지표일까?

- 정확도: 우선 좋은 지표는 측정 목표를 정확히 포착할 수 있어야 한다. 이를 위해서는 앞서 언급한 편향과 분산이 모두 적어야 한다. 물론 지표 하나로 포착하기 힘든 복잡한 현상을 다루는 경우에는 그 한 가지 측면만 제대로 측정할 수 있어도 합격이다.
- 민감성: 좋은 지표는 예민해야 한다. 현상을 개선하기 위해 많은 노력을 기울였지만 지표가 이를 제대로 반영하지 못한다면 지속적인 동기를 갖기 어렵다.
- 저비용: 마지막으로 좋은 지표는 낮은 비용으로 계산할 수 있어야 한다. 최소한의 데이터로 최대한의 시그널을 뽑아낼 수 있는 지표가 좋은 지표다.

위에서 언급한 좋은 지표의 조건은 서로 관련돼 있다. 보통 민감한 지표는 분산이 큰 경우가 많다. 또한 지표의 비용은 민감성에 비례하고 분산에는 반비례하기 때문에, 좋은 특성을 가진 지표는 비용 면에서도 유리하다.

 

5) 지표 개발 프로세스

이제 지표를 개발하는 과정을 구체적으로 알아보자. 효과적인 지표를 정의하는 첫 번째 단계는 적절한 단위로 데이터를 집계하는 것이다. 예컨대 많은 측정값이 시간별로 기록되므로, 일간-주간-월간 등 다양한 기간별로 지표값을 구해볼 수 있다. 이처럼 여러 집계 단위를 동시에 사용하여 지표값을 구하면 측정값의 추세를 여러 관점에서 바라볼 수 있다.

이러한 집계에 사용할 함수 역시 고민해봐야 할 부분이다. 일반적으로는 총합이나 산술 평균을 사용하지만, 측정 목표나 데이터의 특성에 따라 다음과 같은 다양한 함수를 사용할 수 있다.

- 중간값(median): 주로 양극단의 값이 많은 변수의 경우 중간값을 사용하면 극단값(outlier)의 영향을 줄일 수 있다.
- 기하 평균(geometric mean): 모든 값이 골고루 반영되는 산술 평균에 비해 낮은 값의 영향을 강조하고 싶을 때 기하평균을 사용한다.

 

집계 과정에서 또한 고려해야 할 사항은 적절한 가중치를 부여하는 것이다. 가중치는 원본 데이터에서 더 중요한 부분과 덜 중요한 부분이 지표에 적절한 비중으로 반영될 수 있도록 한다. 예컨대 개인이나 기업의 실적을 평가하는 데 있어서 최근의 실적을 좀더 비중 있게 포함시키는 것이 관례다.

지표 계산의 마지막 단계로 계산된 값을 정규화 혹은 표준화(normalize)하는 과정이다. 이는 측정 단위에 따라 달라질 수 있는 값을 동일한 서로 비교할 수 있도록 변환하는 것이다. 예컨대 학생의 원 점수는 학생의 실력뿐 아니라 시험의 난이도에도 영향을 받는다. 하지만 학교 혹은 지역에서의 백분율로 환산하면 서로 다른 년도의 성적도 동일한 기준에서 비교 가능하다.

여기까지가 개별 지표를 계산하는 과정이다. 하지만 일단 계산된 개별 지표의 값을 가공하고 결합하여 새로운 지표를 만드는 것도 가능하다. 여기서 가공은 주어진 지표의 값에 절대값, 로그 함수 등을 사용하여 측정에 좀더 적합한 값으로 바꾸고, 결합이란 집계된 값을 더하고 배거나 두 값 사이의 비율을 구하여 새로운 지표를 만드는 과정이다.

여기서 특히 유용한 기법은 기존 지표간의 비율로 새로운 지표를 만드는 것이다. 많은 경우 집계된 값은 특정 변수의 종합이나 평균으로 대상의 한 가지 측면만을 포착하는 경우가 많은데, 실제로 유의미한 지표의 상당수는 여러 측정값의 관계에서 나오기 때문다 중요한 지표이지만, 시가총액을 순익으로 나누면 주가수익비율(PER)이라는 새로운 지표를 얻을 수 있다. PER은 기업 재무의 건전성이나 시가총액의 고평가/저평가 여부를 알려주는 중요한 지표다. (다음 회에 계속)

 

간절한 바람 "자네가 무언가를 간절히 원할 때, 온 우주는 자네의 소망이 실현되도록 도와준다네." 파올로 코헬로의 『연금술사』에 나오는 글입니다. 여러분이 진정으로 바란다면 데이터 분석가로 나아가는 문은 열릴 것입니다. 필자의 온라인 나눔터(www.lifidea.org)와 트위터(twitter.com/lifidea)에서 데이터 분석가에 대한 정보를 더 주고 받을 수 있습니다.

 

출처 : 한국데이터베이스진흥원

제공 : 데이터 전문가 지식포털 DBguide.net