09.20
뉴스홈 > 칼럼
[특별연재(8)] 데이터를 잘 써먹을 수 있는 구체적인 방법들자유형(freeform) 데이터는 결코 공짜가 아니다 (유혁 Willow Data Strategy 대표)

 
 ▲ 유혁 Willow Data Strategy 대표

[컴퓨터월드] 유혁 대표(미국명 Stephen H. Yu)는 25년 이상 데이터베이스 마케팅 분야에서 명성을 얻고 있는 세계적인 데이터 전략, 빅 데이터 애널리틱스 전문가이다. I-Behavior의 공동창업자/CTO, Infogroup 부사장 등을 역임하면서 정보수집, 데이터베이스 설계, 통계학적 모델을 활용한 타깃마케팅 등 마케팅과 IT간의 가교에 큰 기여를 해왔다.
유혁 대표의 오랜 전문가로서의 경험을 바탕으로 국내 사용자들과 독자들에게 보다 데이터를 효과적으로 잘 사용하면서 시행착오를 줄일 수 있는 방법을 특별연재를 통해 소개하고자 한다. 금융, 통신, 미디어, 유통, NGO 등 다양한 글로벌 고객들과의 현장 경험에서 우러나온 애정 어린 충고와 쓴 소리에 독자들의 많은 관심을 부탁드린다. 편집자 주


빅 데이터에 관한 강연이나 기사에는 하루에 2.5 quintillion byte (1 quintillion byte = 1 billion gigabyte)의 데이터가 수집된다는 통계가 항상 언급되곤 한다. 그 숫자가 그렇게 부풀려지는 가장 큰 이유는 요즘에는 디지털화 된 모든 것이 데이터라고 불리우기 때문이다.

그런 데이터는 페이스북이나 트위터와 같은 SNS에서의 활동들, 이메일, 블로그, 비디오, 음악파일, 웹 페이지, 모바일 앱, 프로그램 다운로드 등이 다 포함된다. 거기에 관련된 사람들의 클릭이나 페이지 뷰에 관한 데이터까지 어우러지면 그 정보의 양은 기하급수적으로 불어나기 마련이다. 심지어 누군가가 의료장비나 모바일 기기에 연결되어 있다면 사람들의 호흡수나 심장박동수도 다 데이터화 되고 있는 것이다.
 
흔히 말하듯 우리는 “Sea of Data”, 즉 데이터의 바다 속에 살고 있는 것이다. IoT(Internet of Things)의 시대가 도래하면서 대부분의 데이터를 발생시키는 주체는 조만간 사람이 아니라 기계가 될 수도 있겠지만, 그 데이터가 묘사하는 것은 여전히 많은 부분 인간들과 그들의 행동에 관한 것이라고 예견된다. 인간이라는 종이 우주의 변방에 위치한 작은 행성에서 오래 그랬던 것은 아니지만 현재 가장 우월한 지위를 차지하고 있으니 말이다.
 
 
많은 ‘빅 데이터’들은 가공되지 않은 ‘자유형 데이터’들이다
 
그런 많은 데이터의 일부는 우리가 더하거나 뺄 수 있는 숫자의 형태를 지니고 있다. 거래기록에 관한 것이라면 달러, 원, 파운드, 유로, 위안 등으로 표현될 것이며, 셀 수 있는 사람의 행동에 관한 데이터라면 날짜, 시간, 분, 초, 클릭, 뷰(view), 다운로드, 미터, 야드, 마일, 박동수, 호흡수, 리터, 속도 등으로 기록될 것이다. 지난 월드컵 때 이미 각 선수 별로 경기당 몇 킬로미터를 뛰었는지 등의 통계도 실시간으로 수집되고 분석되어 TV화면에 나타난 것처럼, 숫자 형태의 데이터는 도처에서 수집되고 있다.
 
그런데 그러한 숫자로 표현되는 데이터는 사실 다루기가 그리 어려운 것이 아니다. 컴퓨터의 발명 이래로 우리가 다루어 왔던 대부분의 데이터는 이미 숫자의 형태를 가지고 있었다. 통계를 하다 보면 그 숫자들을 변환하고 missing value도 다뤄야 하지만 원래 숫자란 분석을 위한 형태를 지니고 있다.
 
문제는 소위 빅 데이터라고 불리는 많은 부분이 숫자의 형태를 지니지 않고 있다는 데 있다. 게다가 요즘 수집되고 있는 많은 데이터는 가공되지 않은, 정형화 되지 않은, 구분되어 있지 않은, 수정되지 않은 ‘자유형 데이터’들이다. 즉 Freeform “Raw” 데이터라는 뜻이다.
 
그래서 “쌓여있는 데이터에서 의미를 찾아내는 것”이 빅 데이터의 핵심인 것이며, 그런 작업은 대개 보고서가 만들어지기 직전에 마지막으로 데이터를 만진 사람들에 의해 이루어지게 마련이다. 게다가 대부분의 의사결정자들은 결론만을 원하는 사람들이며, 그들이 원하는 것은 “공을 들여 새로 출시한 제품에 대한 부정적 반응의 증가율” 등 구체적인 대답이지 수천만 테라 바이트로 계산되는 데이터의 나열이 아닌 것이다.
 
한가지 분명한 것은, 숫자로 표현되지 않은 데이터를 걸러내고 가공하며 범주화, 즉 카테고리화하는 작업은 고되지만 그것이 컴퓨터를 이용한 것이건 사람들이 들러붙어 했던 것이건 분명히 가치가 있는 일이라는 점이다. 이 글을 통해 이미 여러 번 강조한 바와 같이, ‘빅 데이터’라는 이름의 움직임은 1) 데이터에서 잡음을 제거하는 것 2) 간단한 대답의 형태로 의사결정자들에게 정보를 제공하는 것이라고 요약할 수 있다. 자유로운 형태로 있는 데이터를 검토하여 목적에 부합되지 않는 조각들을 과감히 버리는 것이 그런 잡음 제거 작업의 시작이다.
 
그러므로 대답이 필요한 질문부터 제대로 정립하여 데이터 관리와 분석의 목적을 분명히 해야 하는 것이며, 그러한 추려내는 작업에 패턴이 보이기 시작하면 수정과 카테고리화의 자동화를 시도할 수 있다.
 
 
숫자로 표현 안 된 데이터들은 걸러내고 가공하여 범주화해야
 
흔히 데이터 분석과정이라 하면 미국 CIA가 테러리스트의 다음 공격 타깃을 알아내기 위해 수 없이 많은 이메일과 통화내역을 살피는 식의 엄청난 작업을 떠올리기 쉽지만, 그 대신 여기서는 우리 주위에 널려있는 간단한 예부터 살펴보는 것이 어떨까 한다. 마케팅에 주로 사용되는 데이터만 봐도 거의 방치되다시피 한 정보는 도처에 널려 있다.
 
상품설명서 및 상품명세서, 각종 레이블, 서비스 카테고리, 오퍼(offer) 타입, 홍보 및 구매 채널, 데이터의 출처, 웹 페이지와 그 세부명세 및 카테고리, 여론조사 결과(놀랍게도 설문조사에서도 많은 자유형 데이터가 파생된다), 고객과의 통화내역, 사람들의 직함 등은 많은 부분이 처리되지 않고 자유형태(freeform)로 남아 있으며, 그런 가공되지 않은 데이터는 고등분석에 결코 적합하지 않다. 즉 인터넷이나 SNS에서 떠돌아 다니는 수많은 단어와 문장들 말고도 당장 가공되어야 할 자유형 데이터가 도처에 있다는 말이다.
 
요즘 많은 TV 프로그램에서 빅 데이터 분석을 예를 들면서 어떤 특정인이나 상품에 대한 관심과 감상에 연관된 단어를 영향력 별로 크기와 색깔로 구분해 나열하는 것을 흔히 볼 수 있는데, 직접적으로 고객을 묘사하는 형태의 분석을 위한 데이터는 그런 SNS데이터 말고도 가까운 곳에 많이 숨어 있으며, 또 그런 데이터가 소비자의 행동을 예측하는 데에 아주 강력한 변수가 되기도 한다.
 
구체적인 예를 들자면, 한국에도 직장인들에게 여러 가지 직함이 있지만 미국에서는 그 종류가 훨씬 다양하다. 요즘에는 하도 희한한 직함들이 많이 생겨서 심지어는 직함만 봐 가지고서는 그 사람이 어떤 위치에서 무슨 일을 하는지 짐작하기 어려운 경우도 있는데, 별로 크지 않은 B-to-B용 리스트를 들여다 보면 수만 가지 직책과 직함들이 Professional Title이란 변수에 포함되어 있는 것을 쉽게 볼 수 있다.
 
실제로 책상 서랍에 쌓여있는 명함을 꺼내 완전히 같은 직함 두 개를 골라내기도 어렵다. 예를 들자면 “SVP, Finance”와 “Sr. Vice President / Chief Finance Officer”라는 두 직함은 비슷한 지위와 권한을 가진 것이라고 쉽게 유추해볼 수는 있겠지만 이런 식으로 수집되고 보관된 데이터는 그 대상을 상대할 때나 쓰는 것이지 그러한 미묘한 차이를 컴퓨터가 알아서 인식하기가 어렵기에 분석용으로는 적합하지 않은 것이다.
 
이런 경우 그 직함, 즉 Professional Title이란 데이터를 두 가지 변수, 즉 회사 내에서의 “지위(rank)”와 맡은 바 “직책(function)”으로 나누면 분석이 훨씬 쉬워진다. “지위”는 회장, 사장 급부터 부사장, 전무, 상무 등 중역을 거쳐 중간 매니저 급, 그리고 실무진 등으로 나누면 7~8단계면 충분히 요약이 된다. “직책" 또한 경영, 전략, 회계, 마케팅, 영업, IT, 생산, 개발, 인사 등으로 나누면 열 몇 개 정도로 축약될 수 있다. 그 두 변수 간의 모든 조합의 수는 100이 안될 터이니 수만 가지 직함을 그냥 저장해 놓는 것보다 분석에 훨씬 유리한 것이다.
 
이런 식으로 데이터를 카테고리화 하는 것은 매우 중요한 일인데, 일반적으로 한 변수 당 20개 이하의 카테고리를 할당하는 것이 차후 분석에 편리하다. 카테고리들이 너무 포괄적이면 나중 분석 단계에서 나눌 수가 없게 되고, 너무 세분화되어 있어도 바람직하지 않다. 지나친 세분화보다 오히려 한 데이터 필드를 이런 식으로 여러 변수로 나눠 나중에 조합하여 사용하는 것이 편리하다.
 
 
자유형 데이터로 방치하는 ‘게으름’은 곤란하다
 
이런 데이터를 두고도 분석에 사용하지 않는 것은 대부분 그러한 카테고리화가 “귀찮아서”일 것이다. 1만 개에서 2만 개의 직함을 분류하는 작업을 순전히 사람이 한다고 했을 때, 1분에 서너 개를 분류할 수 있다면 6~7일 걸려야 혼자서 만개를 구분할 수 있다는 계산이 나온다. 그것은 매우 지루한 작업일 터이니 8명의 인턴을 한꺼번에 투입하여 하루에 일을 마치는 방법도 생각해 볼 수 있다. 요는 이런 작업은 귀찮지만 불가능하지는 않은 작업이라 할 수 있다.
 
더욱 바람직한 방법은 패턴을 인식하는 프로그램을 짜서 자유형 데이터를 미리 정해진 카테고리로 분류하는 것이다. IT 분야에서 흔히 하는 말 중에 “게으른 사람이 좋은 프로그래머가 된다”라는 표현이 있는데, 이런 수작업이 싫은 사람부터 나서서 프로그램이나 매크로를 짠다는 뜻이다.
 
컴퓨터를 이용한 분류는 나중에 사람들의 눈을 거치는 보정과정을 반드시 필요로 하지만, 예외를 찾아 고치는 것이 무작정 전 리스트를 순서대로 검토하는 것보다 훨씬 쉬운 법이다. 그리고 빅 데이터 시대에는 한 데이터 필드에 수천만 가지의 엔트리가 있는 것도 흔한 일이니 이런 방법에 익숙해져야만 한다.
 
그런데 이런 패턴을 인식하는 과정에서는 항상 더 세밀한 것부터 분류하는 것이 중요하다. 일례로 “Manager, Accounting”과 “Account Manager”는 완전히 다른 타이틀인데, 이럴 경우 후자가 더 자세한 묘사이니 그것부터 분류해야 한다는 말이다. “Secretary”같이 흔한 직함도 “Secretary of Treasure”가 되면 직위가 완전히 달라지니 컴퓨터에만 의지하지 말고 결과를 반드시 검토하여 프로그램을 수정 보완해 나가야 한다.
 
이런 직함의 분류는 아주 간단한 예이고 또 B-to-B마케팅이나 영업에 주로 필요한 것이지만, 많은 데이터베이스들에는 마케팅 분석에 반드시 필요한 “Offer”, 즉 고객에게 어떤 조건이나 제의를 했는지에 관한 정보도 그냥 자유형 데이터로 방치되어 있는 것을 흔히 볼 수 있다.
 
이것은 완전히 계획의 부재나 게으름이라고 밖에 볼 수가 없는데, 마케팅 캠페인에 사용한 오퍼를 단지 “2016년 가을맞이 세일기간 동안 25만 원 이상 구매한 고객에게 15% 가격할인”이라고 적어 놓은 것은 데이터 필드라고 봐주기도 뭣하다. 그런 식의 데이터로는 나중에 특정 고객이 “할인”과 “무료배달” 중 어떤 오퍼를 선호할지 판단할 수 없는 것은 물론이고, 전반적으로 어떤 전략이 더 잘 먹혀 들어갔는지도 알기가 어렵게 된다.
 
불행히도 많은 데이터는 이런 식으로 저장되어 있으며, 자세히 들여다 보면 그 “오퍼”란 단순할 수도 있는 변수에 수천 가지의 자유형 데이터가 포함되어 있는 것이다. 필자는 고객을 상담하다가 그런 경우를 마주치면 그 회사의 인턴을 고용하는 것에 관한 인사정책부터 알아본다. 누군가가 그 잡동사니 같은 데이터를 분류해야 하는 것이고, 그런 지저분한 데이터를 창출해 낸 마케팅 부서가 알아서 정리하기를 바라고 기다리는 것 보다 인턴을 몇 명 훈련시켜 단숨에 해치우고 앞으로의 데이터 수집 과정 자체를 바꾸는 것이 낫기 때문이다.
 
물론 그런 경우에도 마케팅 부서의 장·단기 목표와 선호하는 마케팅 채널 등을 반드시 고려하여 카테고리 자체를 그 비즈니스의 목적에 부합하도록 만들고 일을 시작하는 것이 가장 중요하다.
 
 
범주화의 사례
 
다시 오퍼 코드(offer code)의 예로 돌아가자면, 고객을 웹 사이트나 매장으로 끌어들이는 방법에는 한도가 있는 법이기 때문에 수천 가지의 오퍼도 다음과 같은 기본적인 범주에 넣을 수 있을 것이다. 미국에서의 예를 들자면:
 
  • Dollar Discount – 구체적 할인액수 제시
  • % Discount – 10% DC
  • Buy 1, Get 1 Free – 하나 사면 하나는 공짜
  • Free Shipping – 무료 택배/배송
  • No Payment Until… - 특정 시일 이후 대금결재
  • Interest Free Loan – 무이자 대출
  • 3 Easy Payment of… - 3회 (혹은 x회) 할부
  • Free Gift – 무료 선물
  • 기타 등등
 
혹자는 이런 카테고리들이 너무 간단하다고 볼 수도 있겠다. 하지만 만약에 이런 오퍼에 조건들이 붙어 있다면 그 조건에 관한 변수를 따로 만들어 구분하면 될 것이다. 언급한 바와 같이 한 변수에 너무 많은 경우의 수가 포함되어 있는 것 또한 분석에 사용할 때 바람직하지 않다. 이런 경우 그 “오퍼의 조건(offer condition)”이란 새로운 변수를 만든다면:
 
  • Minimum required purchase amount – 최소 구매 요구
  • Period/season specific – 특정 기간
  • Coupons required – 쿠폰 제시 요구
  • Store card only – 특정 매장 카드 사용 요구
  • Specific products only – 특정 상품에만 할인
  • Limited to 1 gift per customer for 3 months – 한 고객 당 3개월에 선물 하나
  • Student only – 학생할인
  • 기타 등등
 
지금 이 두 가지 변수만 조합해도 많은 경우의 수를 만들 수 있을 것이다. 한 발자국 더 나아가 만약에 세일 시즌이 중요한 변수라면 “오퍼 시즌(offer season)”이란 새로운 변수를 만들어 설, 추석, 크리스마스, 졸업, 입학, 바캉스, 기타 중요 이벤트를 기록하면 된다.
 
그러면 이러한 변수들을 따로 검토할 수도 있고, 조합하여 분석할 수도 있게 된다. 즉 조건에 상관없이 어떤 종류의 캠페인이 더 효과적인가, 특정 고객이 선호하는 할인과 구매방법은 무엇인가, 어떤 시기에 어떤 종류의 세일이 유효한가를 분석해 볼 수 있다는 말이다.
 
중요한 점은 데이터의 수집 단계에서부터 자유형 데이터(Freeform Data)를 지양하고 모든 변수들을 최대한 카테고리화해야 한다는 것이다. 그런 작업은 사실 데이터 수집단계 이전부터 제대로 계획이 되어야 한다. 데이터를 입력하는 스크린이나 웹 사이트 자체에 문제가 있는 경우도 허다하고, 심지어는 많은 여론조사 결과도 수많은 자유형 데이터를 포함하고 있는데, 그것은 그 조사의 설문 디자인 자체가 제대로 되지 않았다는 뜻이다.
 
떠돌아 다니는 데이터를 분류하기도 바쁜 세상에 기획하여 수집하는 데이터가 제대로 분류되어 수집되지 않는 것은 나중 분석단계에서의 시간 낭비를 자초하는 행위이다. 그래서 IT분야에 종사하지 않는 사람들도 어느 정도 데이터베이스, 리포팅, 그리고 분석에 관한 지식을 갖출 필요가 있는 것이다.
 
 
분석의 세계에서 카테고리와 태그는 정말 중요
 
분석(Analytics)의 세계에서 카테고리와 태그(tag)는 정말 중요한 것이다. 많은 이들은 인터넷 음악 서비스들이 마치 따로 고용된 DJ처럼 서로 잘 연결된 노래들을 자동으로 연속해서 틀어주는 것을 경험해 봐서 알 것이다. 회사마다 조금씩 다르겠지만 그 배후에는 잘 구성된 공식, 즉 알고리즘(algorithm)이 수백만 개의 노래들 간의 거리(distance)를 계산하고 있으리라는 것을 미루어 짐작할 수 있다.
 
요는 그러한 거리계산의 시작점은 각 노래마다 붙어있는 카테고리나 태그라는 점이다. 여기에는 비교적 쉽게 얻을 수 있는 정보인 노래나 음악의 장르, 가수, 연주자, 찬조자, 작곡가, 편곡자, 지휘자, 주요 악기 구분, 발표연도, 작곡연도, 오리지널/리메이크 구분, 밴드 명, 밴드 타입, 밴드 멤버, 리드 싱어, 곡 길이, 앨범, 앨범 타입, 앨범 내에서의 노래 순서 등이 포함될 수 있겠다.
 
여기서 더 깊이 들어가자면 팝 음악의 예를 들 때 “80’s one-hit wonder (80년대에 히트 한번 치고 사라진 가수나 밴드)”, “Guitar heroes of the 70’s”, “Girl groups of K-Pop”등 더욱 창조적인 태그가 있을 수 있겠고, 그런 태그 자체가 공식에 의해 만들어졌든 많은 젊은이들이 들러붙어 머리를 짜내 만들었든 수학적 모델을 개발하는 것은 stepwise, 즉 순차적인 작업이며 데이터의 카테고리화는 그 중요한 한 부분이라는 것이다.
 
모든 정보가 디지털화 되어 있을 때 식품에 붙어 있는 단순한 레이블도 그것을 사는 소비자의 성향을 분석하고 그들의 행동을 예측하는 데에 사용될 수 있다. “왜”라는 질문이 예측적 분석에서 가장 대답하기 어려운 질문이지만, 어떤 가구가 무가당 제품을 중점적으로 구입하고 있다면 그 이유가 그 가구에 당뇨병 환자가 있어서건 다이어트를 하는 사람이 있어서건 그 발견된 상관관계를 이용해 맞춤형 서비스를 제공할 수 있다는 것을 의미한다. 물론 고객의 입장에서 섬뜩할 정도로 아는 척을 하지 않는 선에서 말이다.
 
이런 예에서도 그런 맞춤형 서비스는 새로운 변수와 카테고리를 만드는 것으로부터 비롯된다. 브레인 스톰(brain storm)을 하듯이 단순히 식품 레이블에서 알아낼 수 있는 것을 다 적어보는 것도 좋은 연습이 되겠다. 여기서의 주 목적은 상품을 묘사하는 것이 아니라 그 상품을 구매하는 사람을 묘사하는 것이다. 그런 식으로 소비자들의 성향들을 유추할 수 있는 단서들을 열거해 보자면:
 
  • Organic food - 유기농 제품
  • Diet – 다이어트 식품
  • Low calorie/no calorie – 저칼로리
  • Low sugar/no sugar – 무가당
  • Low fat/no fat – 무지방
  • Low sodium/sodium free – 저염/무염
  • Gluten free – 글루텐 무첨가
  • Lactose free – 락토오스 제거
  • Peanut free – 땅콩류 무첨가
  • Energy – 에너지 드링크 등
  • Family size/value pack – 덕용/가족용 포장
  • Fun size/small packages – 소량포장
  • 기타 등등
 
 
세분화한 변수를 만들어 두는 것이 유용
 
상품을 볼 때 브랜드나 상품명만 따질게 아니라 이런 식으로 세분화하여 변수를 만들어 두면 나중에 통계적 모델을 이용하여 “가족을 위해 조리하는 주부”, “유기농 제품 주 사용자”, “체중감량 시도자”, “어린 자녀를 가진 바쁜 부모들”, “항상 움직이는 젊은 현대인”, “식이요법이 필요한 소비자” 등 구체적으로 고객이나 미래의 고객을 나누어 볼 수 있게 된다. 그것이 단조롭기가 이를 데 없는 상품 레이블을 카테고리화와 모델링을 통해 소비자를 구체적으로 묘사하는 정보로 탈바꿈하는 과정이다.
 
이런 방법은 아주 대규모의 데이터에도 똑같이 적용될 수 있다. 필자는 과거에 미국 최초로 1,200이 넘는 출처에서 모인 수억 명 이상의 소비자 정보를 상품구매단위의 정보(SKU level product data)까지 집대성한 대규모 데이터베이스로 개발하여 관리하며, 그 개인별로 집적된 데이터(buyer-centric data)를 바탕으로 한 통계적 모델(statistical model)을 이용하여 각종 타깃 마케팅과 DM에 오랫동안 적용해 본 경험이 있다.
 
그것은 co-op database라 불리우는 데이터 산업인데, 여러 곳에서 모인 상품구매 정보를 개인별로 재구성하여 집대성하면 개인별 성향과 미래의 행동도 정확하게 예측할 수 있다는 데에서 착안한 것이다. 즉, 사업체나 상품의 관점에서 거래를 분석하는 것이 아니라, 거래기록을 개개인의 행동을 묘사하는 모습으로 바꾸어 본다는 것이다.
 
15년 전에 당시 기술로 SKU level 상품거래 데이터를 그런 식으로 모아서 카테고리화하고 집대성한다는 것은 무모하다고 여겨지던 일이었다. 그것은 단순히 거래기록뿐만이 아니라 그 거래에 포함된 상품들에 관한 정보까지 수집하는 것을 대규모로는 최초로 시도한 것이었고, 실제로 모인 데이터의 양도 순식간에 수조 단위의 판매기록이 모여 지금 기준으로도 쉽게 빅 데이터의 범주에 들어가는 규모였기 때문이다.
 
그리고 그런 시도는 결론적으로 말해 투자자들과 고객에게 아주 성공적인 결과를 가져왔고, 그 이후로 그런 사업을 시도하는 회사들은 전부 SKU level product data를 모으기 시작했다.
 
그런데 빅 데이터 시대의 모든 것이 그렇듯이 데이터를 모으는 것은 가장 쉬운 일이다. 정말 어려운 부분은 모인 데이터를 가공하여 모델에 쓸 수 있는 변수로 만들고 실제로 타깃 마케팅에 적용해야 한다는 것인데, 사실 지금도 그 전 과정을 제대로 소화할 수 있는 회사는 전 미국을 둘러봐도 그리 많지 않다.
 
일단 1,200이 넘는 출처에서 데이터가 모이고 (지금은 그 데이터의 출처가 2,000이 훨씬 넘는다고 들었다), 또 데이터를 제공하는 각 사업체가 50,000에서 500,000에 이르는 상품의 종류를 취급하니 거기에 관련된 구매 기록은 금세 엄청나게 불어난다. 그렇다면 도대체 어디서부터 일을 시작해야 그 많은 데이터에서 의미를 찾아 낼 것인가?
 
 
구매자 중심의 관점 - 상품 대신 ‘구매자’를 범주화하라
 
일단 이 칼럼에서 일관되게 예를 들었듯이 첫 작업은 제대로 된 카테고리를 정립하는 것이다. 상상할 수 있는 모든 상품을 분류하자면 다단계 테이블을 사용해야 했는데, 첫 레벨은 아주 큰 단위로 의류로 시작해 비디오로 끝나는 20~30개 정도의 카테고리였다.
 
거기서 의류는 두 번째 단계에서 남성, 여성, 아동 등으로 분류되고, 세 번째 단계까지 가면 여성의류가 정장, 이브닝, 패션, 캐주얼, 란제리, 내복, 잠옷, 운동복, 수영복, 신발, 액세서리, 신부복 등으로 세분화되는 식이었다. 요즘 Google에서 Google Analytics나 Google Shopping용으로 권장하는 상품 카테고리도 이런 식으로 다단계이다. Amazon 등 대형 인터넷 쇼핑몰에서 상품 구분을 해 놓은 것을 보면 쉽게 연상될 것이다.
 
그런데 우리가 시도한 것은 그런 타회사의 상품 카테고리와 큰 차이가 있었는데, 그것은 우리는 상품을 카테고리화하는 것이 아니라 구매자를 구분했다는 것이다.
 
상품이 아니라 구매자를 분류했다는 것은 아주 중요한 포인트다. 왜냐하면 우리의 목적은 개개인의 미래의 행동을 예측하는 것이었기 때문이다. 그래서 데이터 분류작업도 재고관리나 웹 사이트를 효율적으로 하기 위한 것이 아니라 순전히 소비자 행동에 관한 예측을 위한 것이었다.
 
그러한 철학적 차이는 아주 다른 결과를 가져왔는데, 즉 같은 상품이라도 사람들이 그것을 구입하는 목적과 배경에 따라 다르게 분류될 수도 있다는 것이다. 베이킹 파우더와 같이 목적이 수십 가지인 상품을 떠올리면 쉽게 이해가 될 것이다. 즉 그 사용목적이 제빵인 것, 부엌이나 냉장고의 악취제거용인 것, 구강세척용인 것을 다 다르게 봐야 소비자 행동의 예측에 도움이 된다는 것이다.
 
그러한 구매자 중심의 관점(buyer-centric view)은 이 책의 일관된 주제이고, 데이터베이스의 디자인 또한 그런 철학을 담고 있어야 소비자 구매 행태를 예측할 수 있다고 누차 강조한 바 있다. 그리고 실제로 그러한 접근방식은 수천만이 넘는 상품을 카테고리화 하는 데에 아주 도움이 되었는데, 그 이유는 사람의 행동방식을 묘사하려는 게 목적이라면 팔리지 않은 상품은 검토할 필요도 없다는 것이었다. 많이 팔린 상품부터 우선적으로 분류하면 반도 안 되는 상품내역을 검토해도 거의 대부분의 거래내역과 그에 관련된 소비자를 묘사할 수 있게 된다.
 
이러한 사업을 오늘 날 시작했다면 크라우드 소싱(crowd sourcing)이나 패턴인식(pattern recognition), 그리고 머신 러닝(machine learning)이 더 수월했을 것이다. 실제로 15년 전에도 교육수준이 높고 상품에 대한 지식이 풍부한 다수의 젊은 엄마들을 파트타임으로 고용하여 작은 규모의 크라우드 소싱을 했고, 여러 종류의 패턴인식 프로그램도 만들어 많은 과정을 자동화하했다.
 
머신 러닝도 시도했지만 당시에는 그런 소프트웨어는 가격이 너무 비쌌고, 어차피 사람이 기계를 가르쳐야 하는 과정을 피할 수 없었으며, 게다가 그런 소프트웨어는 긴 텍스트는 인식이 가능했지만 상품 설명은 단 몇 단어 밖에 없는 경우도 많아 결과가 그리 좋지 않았다.
 
예를 들자면 “Disney’s Tarzan”이라는 상품을 보고 기계가 그것이 무엇인지를 제대로 인식하고 구분하기란 쉬운 일이 아니다. 사람이라면 단숨에 알아 보고 그 배경까지 고려해 그것이 비디오인지 CD인지 동화책인지 아니면 거기에 관련된 장난감인지까지 알 수 있겠지만 말이다. 워낙 패턴인식이란 그 분석하는 대상이 너무 단순하면 곤란한 법인데 상품에 관한 설명은 이메일이나 SNS에서의 텍스트보다 훨씬 짧게 마련이다.
 
 
범주화를 잘 할 수 있는 방법
 
이렇듯 우리 주변에 널려있는 자유형 데이터를 분석에 이용하기 위해 카테고리화를 시작하려면 사람의 손을 어느 정도는 거쳐야 하는데, 그런 의미에서 사용되는 기술에 상관없이 카테고리화를 잘 할 수 있는 방법을 정리하는 것이 유익할 듯 하다:
 
1. 기본 카테고리를 먼저 만들 것
요는 목적에 부합하는 카테고리나 태그를 먼저 정의하고 일을 추진하라는 것이다. (물론 목적이 먼저 세워져 있어야 한다.) 카테고리는 자세해야 하는 것이, 일단 통합되면 나중에 분석 단계에서 다시 나누어지기가 어렵기 때문이다. 하지만 한 변수에서 너무 많은 경우의 수가 생기면 먼저 예를 든 것과 같이 부속 변수로 나누는 것이 사용에 편리하다.
 
2. 데이터가 모이는 과정에서 카테고리화 할 것
항상 가능한 것은 아니지만 될 수 있는 대로 데이터 수집의 초기 단계에서부터 정리하는 것이 바람직하다. 많은 자유형 데이터는 잘못 설계된 설문조사나 데이터 입력 스크린이나 웹 페이지로부터 비롯된다. 그리고 수집, 가공, 분석, 적용 단계를 거치는 동안 일관된 카테고리를 사용하는 것도 매우 중요하다.
 
3. 상품이 아닌 사용자를 구분할 것
마케팅을 위한 것이라면 사용자나 소비자를 카테고리화 한다는 생각으로 임해야 한다. 물론 웹 사이트나 재고관리를 위한 카테고리 테이블도 없는 것보다는 낫겠지만 그런 것들은 타깃 마케팅에 최적화 된 것이 아니다.
 
4. 되도록 자세한 카테고리로 분류할 것
항상 가장 자세한 카테고리서부터 고려하는 것이 바람직하다. 예를 들자면 “Home Electronics > Home Theater System > Audio Equipment > Speakers”라는 카테고리가 있다면 그것을 사용해야지 게으르게 그냥 “Home Electronics”에 넣어버리지 말라는 것이다.
 
5. 잡음을 제거할 것
빅 데이터에는 잡음이 많다. 짧은 상품 명세에도 목적에 부합되지 않는 쓸데없는 정보가 많다. 예를 들자면 여성 구두를 구분하는데 모든 색깔까지 구매자를 묘사하는데 사용할 것인가? 재고관리를 위한 것이라면 그러는 것이 마땅하지만, 앞으로 특정 색깔의 구두만을 세일할 것이 아니라면 색깔은 스타일, 디자이너, 브랜드나 가격에 비해 그리 중요한 변수가 아니다. 아무리 흥미롭게 느껴져도 앞으로 물건을 파는데 도움이 되지 않을 것 같은 정보는 과감히 포기해야 한다.
 
6. 일관성을 정확성보다 중요시 할 것
이러한 카테고리들은 나중에 분석적 모델에 사용될 것이며, 거기서 가장 중요한 과정 중의 하나는 타깃을 묘사하는 변수들의 패턴을 인식하는 것이다. 그런데 한가지 상품에 관한 성향을 여러 카테고리에 일관성 없이 적용하면 그러한 인식이 불가능하게 된다. 사람들은 흔히 그 카테고리 자체의 이름 때문에 혼동을 한다. 예를 들어 애초에 어떤 명품 가방을 “액세서리”라는 카테고리에 넣었다면 나중에 그것을 “패션”이라는 카테고리로 옮기고 싶더라도 그래서는 안 된다. 어차피 컴퓨터의 입장에서는 그 카테고리란 일련의 숫자에 불과한 것이고, 인간을 위한 카테고리의 이름은 고려의 대상도 아니다. 고로 이런 과정에서 일관성을 유지하는 것이 무엇보다도 중요하다. 만약 특정 타깃 마케팅을 위해 가격대나 브랜드로 구매자의 성향을 구분하는 것이 중요하다면 여기에서 많은 예를 들었듯이 그것에 관한 변수들(brand, price range, scale 등)을 따로 만들어 관리하는 것이 옳다.
 
7. 최대한 자동화할 것
아무리 컴퓨팅 시간이 비싸다고 여겨도 사람의 시간에 비할 바가 아니다. 특히 요즘엔 더 그렇다. 카테고리에 관한 룰이 정해지고 데이터 처리에 규격화가 이루어졌으면 그 전 과정을 신속히 자동화하여야 한다. 그리고 그러한 자동화는 일부 틀린 결과를 낳더라도 전체적인 일관성도 보장해줄 것이다. 하지만 사업의 목적에 부합하는 카테고리까지 알아서 만들어주는 소프트웨어나 기계는 없다는 것도 잊어서는 안 된다.
 
지난 챕터에서 단순한 RFM 데이터(RFM transaction data)에 숫자가 아닌 다른 변수들을 조합시켜 수백 가지의 새로운 유용한 변수들을 창출해 낼 수 있는 방법들을 설명하였고, 그런 과정을 RFM(Recency, Frequency, Monetary)에 Product와 Channel을 더한 RFM, P & C란 개념으로 소개한 바 있다.
 
그리고 그런 숫자가 아닌 데이터는 Product와 Channel 외에도 무궁무진하게 많다. 여기서 다룬 상품, 서비스, 채널, 오퍼(offer), 그리고 사람들의 직책 등 외에도 지역, 고객의 지위나 상태(customer status), 지불방식(payment method), 데이터의 출처(data source), 웹 페이지, 매장, SNS, 또한 그런 배경 뒤에 있는 사람들의 여러 가지 행태가 다 데이터인 것이다.
 
다만 그 대부분이 자유형, 즉 freeform으로 남아 있어서 사용이 곤란한 것인데, 여기서 설명한 것과 같이 목적에 부합하는 카테고리를 만들어 정형화시키면 그 어떤 분석용 데이터 셋도 전과는 비교도 할 수 없이 훨씬 깊이가 생기고 또 다양해 진다. 그리고 그것이 제7장의 제목이었던 “RFM 데이터를 넘어서”의 진정한 귀착점이다.
 
요점은 분석과정 이전에 숫자와 숫자가 아닌 데이터를 조합하여 다양한 변수를 일관되게 만들어 놓아야 예측능력과 전 공정의 효율이 향상된다는 것이고, 그것은 자유형 데이터를 제대로 다루지 않고서는 가능하지 않다. 심지어는 “직책”이나 “오퍼”라는 아주 간단한 변수도 카테고리화를 거치지 않고는 분석에 쉽게 사용될 수 없듯이 말이다.
 
 
결론은 아무리 귀찮고 번거롭더라도 절대 포기하지 말고 데이터를 나누고 정형화해야 한다는 것이다.
 
언뜻 보기에 도저히 엄두가 안 나는 양의 데이터에 겁 없이 덤벼 의미를 끄집어 내는 것이 빅 데이터의 기본이다. 창의적이고 끈기 있게 또 일관되게 데이터를 다루는 사람들이 더 좋은 결과를 낳게 되는 것이다.
 
그것은 결코 쉬운 일이 아니지만 처음으로 넓은 대양을 건넌 사람들이 닦아 놓은 해로로 자꾸 다니다 보면 그 자체가 반복적인 일이 되듯이, 데이터라는 넓은 바다도 같은 시각으로 볼 일이다.
인기기사 순위
(우)08503 서울특별시 금천구 가산디지털1로 181 (가산 W CENTER) 1713~1715호
TEL : 02-2039-6160  FAX : 02-2039-6163  사업자등록번호:106-86-40304
개인정보/청소년보호책임자:김선오  등록번호:서울 아 00418  등록일자:2007.08  발행인:김용석  편집인:김선오